Boost logo

Boost-Commit :

From: dgregor_at_[hidden]
Date: 2008-07-17 16:26:46


Author: dgregor
Date: 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
New Revision: 47515
URL: http://svn.boost.org/trac/boost/changeset/47515

Log:
Merge changes from the release branch
Added:
   branches/CMake/release/boost/archive/detail/polymorphic_iarchive_route.hpp
      - copied unchanged from r47510, /branches/release/boost/archive/detail/polymorphic_iarchive_route.hpp
   branches/CMake/release/boost/archive/detail/polymorphic_oarchive_route.hpp
      - copied unchanged from r47510, /branches/release/boost/archive/detail/polymorphic_oarchive_route.hpp
   branches/CMake/release/boost/archive/xml_archive_exception.hpp
      - copied unchanged from r47510, /branches/release/boost/archive/xml_archive_exception.hpp
   branches/CMake/release/boost/config/warning_disable.hpp
      - copied unchanged from r47510, /branches/release/boost/config/warning_disable.hpp
   branches/CMake/release/boost/detail/lightweight_thread.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/lightweight_thread.hpp
   branches/CMake/release/boost/detail/sp_convertible.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/sp_convertible.hpp
   branches/CMake/release/boost/detail/sp_counted_base_spin.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/sp_counted_base_spin.hpp
   branches/CMake/release/boost/detail/spinlock.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/spinlock.hpp
   branches/CMake/release/boost/detail/spinlock_gcc_arm.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/spinlock_gcc_arm.hpp
   branches/CMake/release/boost/detail/spinlock_nt.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/spinlock_nt.hpp
   branches/CMake/release/boost/detail/spinlock_pool.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/spinlock_pool.hpp
   branches/CMake/release/boost/detail/spinlock_pt.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/spinlock_pt.hpp
   branches/CMake/release/boost/detail/spinlock_sync.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/spinlock_sync.hpp
   branches/CMake/release/boost/detail/spinlock_w32.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/spinlock_w32.hpp
   branches/CMake/release/boost/detail/yield_k.hpp
      - copied unchanged from r47510, /branches/release/boost/detail/yield_k.hpp
   branches/CMake/release/boost/make_shared.hpp
      - copied unchanged from r47510, /branches/release/boost/make_shared.hpp
   branches/CMake/release/boost/math/distributions/detail/generic_mode.hpp
      - copied unchanged from r47510, /branches/release/boost/math/distributions/detail/generic_mode.hpp
   branches/CMake/release/boost/math/distributions/detail/generic_quantile.hpp
      - copied unchanged from r47510, /branches/release/boost/math/distributions/detail/generic_quantile.hpp
   branches/CMake/release/boost/math/distributions/non_central_beta.hpp
      - copied unchanged from r47510, /branches/release/boost/math/distributions/non_central_beta.hpp
   branches/CMake/release/boost/math/distributions/non_central_chi_squared.hpp
      - copied unchanged from r47510, /branches/release/boost/math/distributions/non_central_chi_squared.hpp
   branches/CMake/release/boost/math/distributions/non_central_f.hpp
      - copied unchanged from r47510, /branches/release/boost/math/distributions/non_central_f.hpp
   branches/CMake/release/boost/math/distributions/non_central_t.hpp
      - copied unchanged from r47510, /branches/release/boost/math/distributions/non_central_t.hpp
   branches/CMake/release/boost/math/special_functions/detail/lanczos_sse2.hpp
      - copied unchanged from r47510, /branches/release/boost/math/special_functions/detail/lanczos_sse2.hpp
   branches/CMake/release/boost/math/special_functions/detail/round_fwd.hpp
      - copied unchanged from r47510, /branches/release/boost/math/special_functions/detail/round_fwd.hpp
   branches/CMake/release/boost/math/special_functions/expint.hpp
      - copied unchanged from r47510, /branches/release/boost/math/special_functions/expint.hpp
   branches/CMake/release/boost/math/special_functions/modf.hpp
      - copied unchanged from r47510, /branches/release/boost/math/special_functions/modf.hpp
   branches/CMake/release/boost/math/special_functions/next.hpp
      - copied unchanged from r47510, /branches/release/boost/math/special_functions/next.hpp
   branches/CMake/release/boost/math/special_functions/pow.hpp
      - copied unchanged from r47510, /branches/release/boost/math/special_functions/pow.hpp
   branches/CMake/release/boost/math/special_functions/round.hpp
      - copied unchanged from r47510, /branches/release/boost/math/special_functions/round.hpp
   branches/CMake/release/boost/math/special_functions/trunc.hpp
      - copied unchanged from r47510, /branches/release/boost/math/special_functions/trunc.hpp
   branches/CMake/release/boost/math/special_functions/zeta.hpp
      - copied unchanged from r47510, /branches/release/boost/math/special_functions/zeta.hpp
   branches/CMake/release/boost/math/tr1.hpp
      - copied unchanged from r47510, /branches/release/boost/math/tr1.hpp
   branches/CMake/release/boost/memory_order.hpp
      - copied unchanged from r47510, /branches/release/boost/memory_order.hpp
   branches/CMake/release/boost/mpi/detail/binary_buffer_iprimitive.hpp
      - copied unchanged from r47510, /branches/release/boost/mpi/detail/binary_buffer_iprimitive.hpp
   branches/CMake/release/boost/mpi/detail/binary_buffer_oprimitive.hpp
      - copied unchanged from r47510, /branches/release/boost/mpi/detail/binary_buffer_oprimitive.hpp
   branches/CMake/release/boost/serialization/assume_abstract.hpp
      - copied unchanged from r47510, /branches/release/boost/serialization/assume_abstract.hpp
   branches/CMake/release/boost/serialization/factory.hpp
      - copied unchanged from r47510, /branches/release/boost/serialization/factory.hpp
   branches/CMake/release/boost/serialization/singleton.hpp
      - copied unchanged from r47510, /branches/release/boost/serialization/singleton.hpp
   branches/CMake/release/boost/serialization/vector_135.hpp
      - copied unchanged from r47510, /branches/release/boost/serialization/vector_135.hpp
   branches/CMake/release/boost/spirit/home/karma/auxiliary/eol.hpp
      - copied unchanged from r47510, /branches/release/boost/spirit/home/karma/auxiliary/eol.hpp
   branches/CMake/release/boost/spirit/home/karma/nonterminal/grammar_fwd.hpp
      - copied unchanged from r47510, /branches/release/boost/spirit/home/karma/nonterminal/grammar_fwd.hpp
   branches/CMake/release/boost/spirit/home/qi/nonterminal/grammar_fwd.hpp
      - copied unchanged from r47510, /branches/release/boost/spirit/home/qi/nonterminal/grammar_fwd.hpp
   branches/CMake/release/boost/spirit/home/support/detail/lexer/conversion/
      - copied from r47510, /branches/release/boost/spirit/home/support/detail/lexer/conversion/
   branches/CMake/release/boost/spirit/home/support/detail/lexer/conversion/char_state_machine.hpp
      - copied unchanged from r47510, /branches/release/boost/spirit/home/support/detail/lexer/conversion/char_state_machine.hpp
   branches/CMake/release/boost/spirit/home/support/detail/lexer/file_input.hpp
      - copied unchanged from r47510, /branches/release/boost/spirit/home/support/detail/lexer/file_input.hpp
   branches/CMake/release/boost/spirit/home/support/detail/lexer/input.hpp
      - copied unchanged from r47510, /branches/release/boost/spirit/home/support/detail/lexer/input.hpp
   branches/CMake/release/boost/statechart/detail/reaction_dispatcher.hpp
      - copied unchanged from r47510, /branches/release/boost/statechart/detail/reaction_dispatcher.hpp
   branches/CMake/release/libs/asio/doc/index.xml
      - copied unchanged from r47510, /branches/release/libs/asio/doc/index.xml
   branches/CMake/release/libs/asio/doc/overview/
      - copied from r47510, /branches/release/libs/asio/doc/overview/
   branches/CMake/release/libs/asio/doc/overview.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview.qbk
   branches/CMake/release/libs/asio/doc/overview/allocation.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/allocation.qbk
   branches/CMake/release/libs/asio/doc/overview/async.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/async.qbk
   branches/CMake/release/libs/asio/doc/overview/bsd_sockets.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/bsd_sockets.qbk
   branches/CMake/release/libs/asio/doc/overview/buffers.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/buffers.qbk
   branches/CMake/release/libs/asio/doc/overview/implementation.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/implementation.qbk
   branches/CMake/release/libs/asio/doc/overview/iostreams.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/iostreams.qbk
   branches/CMake/release/libs/asio/doc/overview/line_based.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/line_based.qbk
   branches/CMake/release/libs/asio/doc/overview/posix.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/posix.qbk
   branches/CMake/release/libs/asio/doc/overview/proactor.dot
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/proactor.dot
   branches/CMake/release/libs/asio/doc/overview/proactor.png
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/proactor.png
   branches/CMake/release/libs/asio/doc/overview/rationale.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/rationale.qbk
   branches/CMake/release/libs/asio/doc/overview/reactor.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/reactor.qbk
   branches/CMake/release/libs/asio/doc/overview/serial_ports.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/serial_ports.qbk
   branches/CMake/release/libs/asio/doc/overview/ssl.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/ssl.qbk
   branches/CMake/release/libs/asio/doc/overview/strands.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/strands.qbk
   branches/CMake/release/libs/asio/doc/overview/streams.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/streams.qbk
   branches/CMake/release/libs/asio/doc/overview/threads.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/threads.qbk
   branches/CMake/release/libs/asio/doc/overview/timers.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/timers.qbk
   branches/CMake/release/libs/asio/doc/overview/windows.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/overview/windows.qbk
   branches/CMake/release/libs/asio/doc/requirements/AsyncRandomAccessReadDevice.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/requirements/AsyncRandomAccessReadDevice.qbk
   branches/CMake/release/libs/asio/doc/requirements/AsyncRandomAccessWriteDevice.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/requirements/AsyncRandomAccessWriteDevice.qbk
   branches/CMake/release/libs/asio/doc/requirements/GettableSerialPortOption.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/requirements/GettableSerialPortOption.qbk
   branches/CMake/release/libs/asio/doc/requirements/RandomAccessHandleService.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/requirements/RandomAccessHandleService.qbk
   branches/CMake/release/libs/asio/doc/requirements/RawSocketService.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/requirements/RawSocketService.qbk
   branches/CMake/release/libs/asio/doc/requirements/SerialPortService.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/requirements/SerialPortService.qbk
   branches/CMake/release/libs/asio/doc/requirements/SettableSerialPortOption.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/requirements/SettableSerialPortOption.qbk
   branches/CMake/release/libs/asio/doc/requirements/SyncRandomAccessReadDevice.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/requirements/SyncRandomAccessReadDevice.qbk
   branches/CMake/release/libs/asio/doc/requirements/SyncRandomAccessWriteDevice.qbk
      - copied unchanged from r47510, /branches/release/libs/asio/doc/requirements/SyncRandomAccessWriteDevice.qbk
   branches/CMake/release/libs/asio/example/local/
      - copied from r47510, /branches/release/libs/asio/example/local/
   branches/CMake/release/libs/asio/example/local/Jamfile
      - copied unchanged from r47510, /branches/release/libs/asio/example/local/Jamfile
   branches/CMake/release/libs/asio/example/local/Jamfile.v2
      - copied unchanged from r47510, /branches/release/libs/asio/example/local/Jamfile.v2
   branches/CMake/release/libs/asio/example/local/connect_pair.cpp
      - copied unchanged from r47510, /branches/release/libs/asio/example/local/connect_pair.cpp
   branches/CMake/release/libs/asio/example/local/stream_client.cpp
      - copied unchanged from r47510, /branches/release/libs/asio/example/local/stream_client.cpp
   branches/CMake/release/libs/asio/example/local/stream_server.cpp
      - copied unchanged from r47510, /branches/release/libs/asio/example/local/stream_server.cpp
   branches/CMake/release/libs/config/test/all/
      - copied from r47510, /branches/release/libs/config/test/all/
   branches/CMake/release/libs/config/test/all/Jamfile.v2
      - copied unchanged from r47510, /branches/release/libs/config/test/all/Jamfile.v2
   branches/CMake/release/libs/config/test/all/options_v2.jam
      - copied unchanged from r47510, /branches/release/libs/config/test/all/options_v2.jam
   branches/CMake/release/libs/config/test/boost_no_adl_barrier.ipp
      - copied unchanged from r47510, /branches/release/libs/config/test/boost_no_adl_barrier.ipp
   branches/CMake/release/libs/config/test/boost_no_part_spec_def_args.ipp
      - copied unchanged from r47510, /branches/release/libs/config/test/boost_no_part_spec_def_args.ipp
   branches/CMake/release/libs/config/test/boost_no_template_streams.ipp
      - copied unchanged from r47510, /branches/release/libs/config/test/boost_no_template_streams.ipp
   branches/CMake/release/libs/config/test/no_adl_barrier_fail.cpp
      - copied unchanged from r47510, /branches/release/libs/config/test/no_adl_barrier_fail.cpp
   branches/CMake/release/libs/config/test/no_adl_barrier_pass.cpp
      - copied unchanged from r47510, /branches/release/libs/config/test/no_adl_barrier_pass.cpp
   branches/CMake/release/libs/config/test/no_part_spec_def_args_fail.cpp
      - copied unchanged from r47510, /branches/release/libs/config/test/no_part_spec_def_args_fail.cpp
   branches/CMake/release/libs/config/test/no_part_spec_def_args_pass.cpp
      - copied unchanged from r47510, /branches/release/libs/config/test/no_part_spec_def_args_pass.cpp
   branches/CMake/release/libs/config/test/no_template_streams_fail.cpp
      - copied unchanged from r47510, /branches/release/libs/config/test/no_template_streams_fail.cpp
   branches/CMake/release/libs/config/test/no_template_streams_pass.cpp
      - copied unchanged from r47510, /branches/release/libs/config/test/no_template_streams_pass.cpp
   branches/CMake/release/libs/filesystem/test/msvc/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/
   branches/CMake/release/libs/filesystem/test/msvc/boost_filesystem.sln
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/boost_filesystem.sln
   branches/CMake/release/libs/filesystem/test/msvc/common.vsprops
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/common.vsprops
   branches/CMake/release/libs/filesystem/test/msvc/convenience_test/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/convenience_test/
   branches/CMake/release/libs/filesystem/test/msvc/convenience_test/convenience_test.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/convenience_test/convenience_test.vcproj
   branches/CMake/release/libs/filesystem/test/msvc/filesystem_dll/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/filesystem_dll/
   branches/CMake/release/libs/filesystem/test/msvc/filesystem_dll/filesystem_dll.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/filesystem_dll/filesystem_dll.vcproj
   branches/CMake/release/libs/filesystem/test/msvc/fstream_test/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/fstream_test/
   branches/CMake/release/libs/filesystem/test/msvc/fstream_test/fstream_test.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/fstream_test/fstream_test.vcproj
   branches/CMake/release/libs/filesystem/test/msvc/large_file_support_test/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/large_file_support_test/
   branches/CMake/release/libs/filesystem/test/msvc/large_file_support_test/large_file_support_test.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/large_file_support_test/large_file_support_test.vcproj
   branches/CMake/release/libs/filesystem/test/msvc/mbcopy/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/mbcopy/
   branches/CMake/release/libs/filesystem/test/msvc/mbcopy/mbcopy.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/mbcopy/mbcopy.vcproj
   branches/CMake/release/libs/filesystem/test/msvc/mbpath/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/mbpath/
   branches/CMake/release/libs/filesystem/test/msvc/mbpath/mbpath.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/mbpath/mbpath.vcproj
   branches/CMake/release/libs/filesystem/test/msvc/operations_test/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/operations_test/
   branches/CMake/release/libs/filesystem/test/msvc/operations_test/operations_test.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/operations_test/operations_test.vcproj
   branches/CMake/release/libs/filesystem/test/msvc/path_test/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/path_test/
   branches/CMake/release/libs/filesystem/test/msvc/path_test/path_test.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/path_test/path_test.vcproj
   branches/CMake/release/libs/filesystem/test/msvc/simple_ls/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/simple_ls/
   branches/CMake/release/libs/filesystem/test/msvc/simple_ls/simple_ls.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/simple_ls/simple_ls.vcproj
   branches/CMake/release/libs/filesystem/test/msvc/system_dll/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/system_dll/
   branches/CMake/release/libs/filesystem/test/msvc/system_dll/system_dll.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/system_dll/system_dll.vcproj
   branches/CMake/release/libs/filesystem/test/msvc/wide_test/
      - copied from r47510, /branches/release/libs/filesystem/test/msvc/wide_test/
   branches/CMake/release/libs/filesystem/test/msvc/wide_test/wide_test.vcproj
      - copied unchanged from r47510, /branches/release/libs/filesystem/test/msvc/wide_test/wide_test.vcproj
   branches/CMake/release/libs/gil/doc/insert_boost_licence.sh
      - copied unchanged from r47510, /branches/release/libs/gil/doc/insert_boost_licence.sh
   branches/CMake/release/libs/gil/doc/shorten_file_name.sh
      - copied unchanged from r47510, /branches/release/libs/gil/doc/shorten_file_name.sh
   branches/CMake/release/libs/math/build/
      - copied from r47510, /branches/release/libs/math/build/
   branches/CMake/release/libs/math/build/Jamfile.v2
      - copied unchanged from r47510, /branches/release/libs/math/build/Jamfile.v2
   branches/CMake/release/libs/math/build/has_long_double_support.cpp
      - copied unchanged from r47510, /branches/release/libs/math/build/has_long_double_support.cpp
   branches/CMake/release/libs/math/doc/sf_and_dist/c99_ref.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/c99_ref.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/nc_beta.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/distributions/nc_beta.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/nc_chi_squared.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/distributions/nc_chi_squared.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/nc_chi_squared_example.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/distributions/nc_chi_squared_example.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/nc_f.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/distributions/nc_f.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/nc_t.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/distributions/nc_t.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_1.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_1.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_2.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_2.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_3.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_3.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_3.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_3.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_3.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_3.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_4.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_4.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_4.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_4.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_i_4.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_i_4.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_1.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_1.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_2.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_2.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_3.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_3.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_3.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_3.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_3.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_3.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_4.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_4.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_4.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_4.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_4.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_4.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_5.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_5.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_5.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_5.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/expint_n_5.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/expint_n_5.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/generate.sh
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/generate.sh
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/ibeta9.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/ibeta9.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/legendre_1b.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/legendre_1b.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/legendre_1b.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/legendre_1b.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/legendre_1b.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/legendre_1b.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref1.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref1.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref2.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref2.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref3.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref3.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref3.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref3.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref3.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref3.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref4.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref4.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref4.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref4.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref4.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_beta_ref4.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref1.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref1.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref2.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref2.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref3.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref3.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref3.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref3.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref3.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref3.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref4.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref4.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref4.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref4.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref4.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref4.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref5.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref5.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref5.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref5.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref5.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref5.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref6.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref6.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref6.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref6.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref6.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref6.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref7.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref7.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref7.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref7.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref7.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_chi_squ_ref7.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_f_ref1.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_f_ref1.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_f_ref1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_f_ref1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_f_ref1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_f_ref1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_f_ref2.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_f_ref2.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_f_ref2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_f_ref2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_f_ref2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_f_ref2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref1.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref1.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref2.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref2.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref3.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref3.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref3.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref3.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref3.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref3.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref4.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref4.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref4.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref4.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref4.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref4.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref5.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref5.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref5.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref5.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/nc_t_ref5.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/nc_t_ref5.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/spherical_3.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/spherical_3.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/spherical_3.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/spherical_3.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/spherical_3.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/spherical_3.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta1.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta1.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta2.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta2.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta3.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta3.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta3.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta3.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta3.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta3.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta4.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta4.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta4.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta4.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta4.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta4.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta5.mml
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta5.mml
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta5.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta5.png
   branches/CMake/release/libs/math/doc/sf_and_dist/equations/zeta5.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/equations/zeta5.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/expint.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/expint.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/float_next.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/float_next.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/acosh.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/acosh.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/acosh.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/acosh.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/asinh.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/asinh.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/asinh.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/asinh.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/atanh.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/atanh.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/atanh.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/atanh.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bernoulli_cdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/bernoulli_cdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bernoulli_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/bernoulli_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/beta.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/beta.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/beta_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/beta_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/binomial_pdf_1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/binomial_pdf_1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/binomial_pdf_2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/binomial_pdf_2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cauchy_pdf1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cauchy_pdf1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cauchy_pdf1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cauchy_pdf1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cauchy_pdf2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cauchy_pdf2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cauchy_pdf2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cauchy_pdf2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cbrt.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cbrt.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cbrt.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cbrt.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/chi_squared_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/chi_squared_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/chi_squared_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/chi_squared_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_i.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_i.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_i.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_i.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_j.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_j.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_j.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_j.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_k.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_k.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_k.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cyl_bessel_k.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cyl_neumann.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cyl_neumann.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cyl_neumann.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/cyl_neumann.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/digamma.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/digamma.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/dist_graphs.cpp
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/dist_graphs.cpp
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/ellint_1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/ellint_2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_3.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/ellint_3.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_carlson.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/ellint_carlson.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_carlson.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/ellint_carlson.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/erf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/erf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erf_inv.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/erf_inv.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erfc.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/erfc.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erfc.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/erfc.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erfc_inv.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/erfc_inv.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/expint2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/expint2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/expint2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/expint2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/expint_i.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/expint_i.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/expint_i.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/expint_i.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/expm1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/expm1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/expm1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/expm1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/exponential_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/exponential_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/exponential_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/exponential_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/extreme_value_pdf1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/extreme_value_pdf1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/extreme_value_pdf1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/extreme_value_pdf1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/extreme_value_pdf2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/extreme_value_pdf2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/extreme_value_pdf2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/extreme_value_pdf2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/fisher_f_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/fisher_f_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/fisher_f_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/fisher_f_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma1_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/gamma1_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma1_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/gamma1_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma2_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/gamma2_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma2_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/gamma2_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma_p.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/gamma_p.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma_q.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/gamma_q.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/generate.sh
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/generate.sh
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/hermite.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/hermite.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ibeta.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/ibeta.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/laguerre.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/laguerre.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/legendre_p.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/legendre_p.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/legendre_p.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/legendre_p.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/legendre_q.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/legendre_q.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lgamma.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/lgamma.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/log1p.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/log1p.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/log1p.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/log1p.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lognormal_pdf1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/lognormal_pdf1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lognormal_pdf1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/lognormal_pdf1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lognormal_pdf2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/lognormal_pdf2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lognormal_pdf2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/lognormal_pdf2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/nc_beta_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/nc_beta_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/nc_beta_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/nc_beta_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/nc_f_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/nc_f_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/nc_f_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/nc_f_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/nc_t_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/nc_t_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/nc_t_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/nc_t_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/nccs_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/nccs_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/nccs_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/nccs_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/negative_binomial_pdf_1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/negative_binomial_pdf_1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/negative_binomial_pdf_1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/negative_binomial_pdf_1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/negative_binomial_pdf_2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/negative_binomial_pdf_2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/negative_binomial_pdf_2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/negative_binomial_pdf_2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/normal_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/normal_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/normal_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/normal_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/pareto_pdf1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/pareto_pdf1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/pareto_pdf1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/pareto_pdf1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/pareto_pdf2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/pareto_pdf2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/pareto_pdf2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/pareto_pdf2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/poisson_pdf_1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/poisson_pdf_1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/poisson_pdf_1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/poisson_pdf_1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/powm1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/powm1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/powm1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/powm1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/rayleigh_cdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/rayleigh_cdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/rayleigh_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/rayleigh_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sf_graphs.cpp
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sf_graphs.cpp
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sinc_pi.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sinc_pi.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sinc_pi.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sinc_pi.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sinhc_pi.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sinhc_pi.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sinhc_pi.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sinhc_pi.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sph_bessel.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sph_bessel.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sph_bessel.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sph_bessel.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sph_neumann.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sph_neumann.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sph_neumann.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sph_neumann.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sqrt1pm1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sqrt1pm1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sqrt1pm1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/sqrt1pm1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/students_t_pdf.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/students_t_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/students_t_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/students_t_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/tgamma.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/tgamma.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/tgamma.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/tgamma.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/tgamma_delta_ratio.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/tgamma_delta_ratio.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/tgamma_delta_ratio.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/tgamma_delta_ratio.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/triangular_cdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/triangular_cdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/triangular_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/triangular_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/uniform_cdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/uniform_cdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/uniform_pdf.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/uniform_pdf.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/weibull_pdf1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/weibull_pdf1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/weibull_pdf1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/weibull_pdf1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/weibull_pdf2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/weibull_pdf2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/weibull_pdf2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/weibull_pdf2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/zeta1.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/zeta1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/zeta1.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/zeta1.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/zeta2.png
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/zeta2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/zeta2.svg
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/graphs/zeta2.svg
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/nc_beta_dist.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/nc_beta_dist.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/nc_chi_squared_dist.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/nc_chi_squared_dist.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/nc_f_dist.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/nc_f_dist.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/nc_t_dist.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/nc_t_dist.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/nccs_eg/
      - copied from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/nccs_eg/
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/nccs_eg.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/nccs_eg.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/nccs_eg/nccs_power_eg.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/nccs_eg/nccs_power_eg.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/compilers_overview.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/compilers_overview.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/tr1.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/tr1.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/expint/
      - copied from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/expint/
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/expint.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/expint.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/expint/expint_i.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/expint/expint_i.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/expint/expint_n.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/expint/expint_n.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/extern_c/
      - copied from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/extern_c/
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/extern_c.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/extern_c.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/extern_c/c99.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/extern_c/c99.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/extern_c/tr1.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/extern_c/tr1.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/extern_c/tr1_ref.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/extern_c/tr1_ref.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/
      - copied from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/float_advance.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/float_advance.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/float_distance.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/float_distance.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/float_next.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/float_next.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/float_prior.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/float_prior.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/nextafter.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/next_float/nextafter.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/ct_pow.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/ct_pow.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/rounding/
      - copied from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/rounding/
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/rounding.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/rounding.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/rounding/modf.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/rounding/modf.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/rounding/round.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/rounding/round.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/rounding/trunc.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/rounding/trunc.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/zetas/
      - copied from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/zetas/
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/zetas.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/zetas.html
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/zetas/zeta.html
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/zetas/zeta.html
   branches/CMake/release/libs/math/doc/sf_and_dist/pow.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/pow.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/rounding_func.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/rounding_func.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/tr1.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/tr1.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/tr1_ref.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/tr1_ref.qbk
   branches/CMake/release/libs/math/doc/sf_and_dist/zeta.qbk
      - copied unchanged from r47510, /branches/release/libs/math/doc/sf_and_dist/zeta.qbk
   branches/CMake/release/libs/math/example/nc_chi_sq_example.cpp
      - copied unchanged from r47510, /branches/release/libs/math/example/nc_chi_sq_example.cpp
   branches/CMake/release/libs/math/src/
      - copied from r47510, /branches/release/libs/math/src/
   branches/CMake/release/libs/math/src/tr1/
      - copied from r47510, /branches/release/libs/math/src/tr1/
   branches/CMake/release/libs/math/src/tr1/acosh.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/acosh.cpp
   branches/CMake/release/libs/math/src/tr1/acoshf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/acoshf.cpp
   branches/CMake/release/libs/math/src/tr1/acoshl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/acoshl.cpp
   branches/CMake/release/libs/math/src/tr1/asinh.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/asinh.cpp
   branches/CMake/release/libs/math/src/tr1/asinhf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/asinhf.cpp
   branches/CMake/release/libs/math/src/tr1/asinhl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/asinhl.cpp
   branches/CMake/release/libs/math/src/tr1/assoc_laguerre.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/assoc_laguerre.cpp
   branches/CMake/release/libs/math/src/tr1/assoc_laguerref.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/assoc_laguerref.cpp
   branches/CMake/release/libs/math/src/tr1/assoc_laguerrel.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/assoc_laguerrel.cpp
   branches/CMake/release/libs/math/src/tr1/assoc_legendre.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/assoc_legendre.cpp
   branches/CMake/release/libs/math/src/tr1/assoc_legendref.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/assoc_legendref.cpp
   branches/CMake/release/libs/math/src/tr1/assoc_legendrel.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/assoc_legendrel.cpp
   branches/CMake/release/libs/math/src/tr1/atanh.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/atanh.cpp
   branches/CMake/release/libs/math/src/tr1/atanhf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/atanhf.cpp
   branches/CMake/release/libs/math/src/tr1/atanhl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/atanhl.cpp
   branches/CMake/release/libs/math/src/tr1/beta.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/beta.cpp
   branches/CMake/release/libs/math/src/tr1/betaf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/betaf.cpp
   branches/CMake/release/libs/math/src/tr1/betal.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/betal.cpp
   branches/CMake/release/libs/math/src/tr1/c_policy.hpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/c_policy.hpp
   branches/CMake/release/libs/math/src/tr1/cbrt.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cbrt.cpp
   branches/CMake/release/libs/math/src/tr1/cbrtf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cbrtf.cpp
   branches/CMake/release/libs/math/src/tr1/cbrtl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cbrtl.cpp
   branches/CMake/release/libs/math/src/tr1/comp_ellint_1.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/comp_ellint_1.cpp
   branches/CMake/release/libs/math/src/tr1/comp_ellint_1f.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/comp_ellint_1f.cpp
   branches/CMake/release/libs/math/src/tr1/comp_ellint_1l.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/comp_ellint_1l.cpp
   branches/CMake/release/libs/math/src/tr1/comp_ellint_2.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/comp_ellint_2.cpp
   branches/CMake/release/libs/math/src/tr1/comp_ellint_2f.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/comp_ellint_2f.cpp
   branches/CMake/release/libs/math/src/tr1/comp_ellint_2l.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/comp_ellint_2l.cpp
   branches/CMake/release/libs/math/src/tr1/comp_ellint_3.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/comp_ellint_3.cpp
   branches/CMake/release/libs/math/src/tr1/comp_ellint_3f.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/comp_ellint_3f.cpp
   branches/CMake/release/libs/math/src/tr1/comp_ellint_3l.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/comp_ellint_3l.cpp
   branches/CMake/release/libs/math/src/tr1/copysign.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/copysign.cpp
   branches/CMake/release/libs/math/src/tr1/copysignf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/copysignf.cpp
   branches/CMake/release/libs/math/src/tr1/copysignl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/copysignl.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_bessel_i.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_bessel_i.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_bessel_if.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_bessel_if.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_bessel_il.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_bessel_il.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_bessel_j.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_bessel_j.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_bessel_jf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_bessel_jf.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_bessel_jl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_bessel_jl.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_bessel_k.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_bessel_k.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_bessel_kf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_bessel_kf.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_bessel_kl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_bessel_kl.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_neumann.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_neumann.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_neumannf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_neumannf.cpp
   branches/CMake/release/libs/math/src/tr1/cyl_neumannl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/cyl_neumannl.cpp
   branches/CMake/release/libs/math/src/tr1/ellint_1.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/ellint_1.cpp
   branches/CMake/release/libs/math/src/tr1/ellint_1f.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/ellint_1f.cpp
   branches/CMake/release/libs/math/src/tr1/ellint_1l.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/ellint_1l.cpp
   branches/CMake/release/libs/math/src/tr1/ellint_2.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/ellint_2.cpp
   branches/CMake/release/libs/math/src/tr1/ellint_2f.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/ellint_2f.cpp
   branches/CMake/release/libs/math/src/tr1/ellint_2l.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/ellint_2l.cpp
   branches/CMake/release/libs/math/src/tr1/ellint_3.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/ellint_3.cpp
   branches/CMake/release/libs/math/src/tr1/ellint_3f.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/ellint_3f.cpp
   branches/CMake/release/libs/math/src/tr1/ellint_3l.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/ellint_3l.cpp
   branches/CMake/release/libs/math/src/tr1/erf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/erf.cpp
   branches/CMake/release/libs/math/src/tr1/erfc.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/erfc.cpp
   branches/CMake/release/libs/math/src/tr1/erfcf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/erfcf.cpp
   branches/CMake/release/libs/math/src/tr1/erfcl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/erfcl.cpp
   branches/CMake/release/libs/math/src/tr1/erff.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/erff.cpp
   branches/CMake/release/libs/math/src/tr1/erfl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/erfl.cpp
   branches/CMake/release/libs/math/src/tr1/expint.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/expint.cpp
   branches/CMake/release/libs/math/src/tr1/expintf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/expintf.cpp
   branches/CMake/release/libs/math/src/tr1/expintl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/expintl.cpp
   branches/CMake/release/libs/math/src/tr1/expm1.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/expm1.cpp
   branches/CMake/release/libs/math/src/tr1/expm1f.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/expm1f.cpp
   branches/CMake/release/libs/math/src/tr1/expm1l.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/expm1l.cpp
   branches/CMake/release/libs/math/src/tr1/fmax.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/fmax.cpp
   branches/CMake/release/libs/math/src/tr1/fmaxf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/fmaxf.cpp
   branches/CMake/release/libs/math/src/tr1/fmaxl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/fmaxl.cpp
   branches/CMake/release/libs/math/src/tr1/fmin.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/fmin.cpp
   branches/CMake/release/libs/math/src/tr1/fminf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/fminf.cpp
   branches/CMake/release/libs/math/src/tr1/fminl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/fminl.cpp
   branches/CMake/release/libs/math/src/tr1/fpclassify.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/fpclassify.cpp
   branches/CMake/release/libs/math/src/tr1/fpclassifyf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/fpclassifyf.cpp
   branches/CMake/release/libs/math/src/tr1/fpclassifyl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/fpclassifyl.cpp
   branches/CMake/release/libs/math/src/tr1/hermite.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/hermite.cpp
   branches/CMake/release/libs/math/src/tr1/hermitef.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/hermitef.cpp
   branches/CMake/release/libs/math/src/tr1/hermitel.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/hermitel.cpp
   branches/CMake/release/libs/math/src/tr1/hypot.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/hypot.cpp
   branches/CMake/release/libs/math/src/tr1/hypotf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/hypotf.cpp
   branches/CMake/release/libs/math/src/tr1/hypotl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/hypotl.cpp
   branches/CMake/release/libs/math/src/tr1/laguerre.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/laguerre.cpp
   branches/CMake/release/libs/math/src/tr1/laguerref.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/laguerref.cpp
   branches/CMake/release/libs/math/src/tr1/laguerrel.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/laguerrel.cpp
   branches/CMake/release/libs/math/src/tr1/legendre.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/legendre.cpp
   branches/CMake/release/libs/math/src/tr1/legendref.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/legendref.cpp
   branches/CMake/release/libs/math/src/tr1/legendrel.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/legendrel.cpp
   branches/CMake/release/libs/math/src/tr1/lgamma.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/lgamma.cpp
   branches/CMake/release/libs/math/src/tr1/lgammaf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/lgammaf.cpp
   branches/CMake/release/libs/math/src/tr1/lgammal.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/lgammal.cpp
   branches/CMake/release/libs/math/src/tr1/llround.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/llround.cpp
   branches/CMake/release/libs/math/src/tr1/llroundf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/llroundf.cpp
   branches/CMake/release/libs/math/src/tr1/llroundl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/llroundl.cpp
   branches/CMake/release/libs/math/src/tr1/log1p.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/log1p.cpp
   branches/CMake/release/libs/math/src/tr1/log1pf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/log1pf.cpp
   branches/CMake/release/libs/math/src/tr1/log1pl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/log1pl.cpp
   branches/CMake/release/libs/math/src/tr1/lround.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/lround.cpp
   branches/CMake/release/libs/math/src/tr1/lroundf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/lroundf.cpp
   branches/CMake/release/libs/math/src/tr1/lroundl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/lroundl.cpp
   branches/CMake/release/libs/math/src/tr1/nextafter.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/nextafter.cpp
   branches/CMake/release/libs/math/src/tr1/nextafterf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/nextafterf.cpp
   branches/CMake/release/libs/math/src/tr1/nextafterl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/nextafterl.cpp
   branches/CMake/release/libs/math/src/tr1/nexttoward.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/nexttoward.cpp
   branches/CMake/release/libs/math/src/tr1/nexttowardf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/nexttowardf.cpp
   branches/CMake/release/libs/math/src/tr1/nexttowardl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/nexttowardl.cpp
   branches/CMake/release/libs/math/src/tr1/riemann_zeta.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/riemann_zeta.cpp
   branches/CMake/release/libs/math/src/tr1/riemann_zetaf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/riemann_zetaf.cpp
   branches/CMake/release/libs/math/src/tr1/riemann_zetal.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/riemann_zetal.cpp
   branches/CMake/release/libs/math/src/tr1/round.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/round.cpp
   branches/CMake/release/libs/math/src/tr1/roundf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/roundf.cpp
   branches/CMake/release/libs/math/src/tr1/roundl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/roundl.cpp
   branches/CMake/release/libs/math/src/tr1/sph_bessel.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/sph_bessel.cpp
   branches/CMake/release/libs/math/src/tr1/sph_besself.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/sph_besself.cpp
   branches/CMake/release/libs/math/src/tr1/sph_bessell.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/sph_bessell.cpp
   branches/CMake/release/libs/math/src/tr1/sph_legendre.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/sph_legendre.cpp
   branches/CMake/release/libs/math/src/tr1/sph_legendref.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/sph_legendref.cpp
   branches/CMake/release/libs/math/src/tr1/sph_legendrel.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/sph_legendrel.cpp
   branches/CMake/release/libs/math/src/tr1/sph_neumann.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/sph_neumann.cpp
   branches/CMake/release/libs/math/src/tr1/sph_neumannf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/sph_neumannf.cpp
   branches/CMake/release/libs/math/src/tr1/sph_neumannl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/sph_neumannl.cpp
   branches/CMake/release/libs/math/src/tr1/tgamma.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/tgamma.cpp
   branches/CMake/release/libs/math/src/tr1/tgammaf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/tgammaf.cpp
   branches/CMake/release/libs/math/src/tr1/tgammal.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/tgammal.cpp
   branches/CMake/release/libs/math/src/tr1/trunc.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/trunc.cpp
   branches/CMake/release/libs/math/src/tr1/truncf.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/truncf.cpp
   branches/CMake/release/libs/math/src/tr1/truncl.cpp
      - copied unchanged from r47510, /branches/release/libs/math/src/tr1/truncl.cpp
   branches/CMake/release/libs/math/test/compile_test/dist_nc_beta_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/dist_nc_beta_incl_test.cpp
   branches/CMake/release/libs/math/test/compile_test/dist_nc_chi_squ_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/dist_nc_chi_squ_incl_test.cpp
   branches/CMake/release/libs/math/test/compile_test/dist_nc_f_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/dist_nc_f_incl_test.cpp
   branches/CMake/release/libs/math/test/compile_test/dist_nc_t_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/dist_nc_t_incl_test.cpp
   branches/CMake/release/libs/math/test/compile_test/sf_expint_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/sf_expint_incl_test.cpp
   branches/CMake/release/libs/math/test/compile_test/sf_modf_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/sf_modf_incl_test.cpp
   branches/CMake/release/libs/math/test/compile_test/sf_next_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/sf_next_incl_test.cpp
   branches/CMake/release/libs/math/test/compile_test/sf_round_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/sf_round_incl_test.cpp
   branches/CMake/release/libs/math/test/compile_test/sf_trunc_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/sf_trunc_incl_test.cpp
   branches/CMake/release/libs/math/test/compile_test/sf_zeta_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/sf_zeta_incl_test.cpp
   branches/CMake/release/libs/math/test/compile_test/tr1_incl_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/compile_test/tr1_incl_test.cpp
   branches/CMake/release/libs/math/test/expint_1_data.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/expint_1_data.ipp
   branches/CMake/release/libs/math/test/expint_data.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/expint_data.ipp
   branches/CMake/release/libs/math/test/expint_small_data.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/expint_small_data.ipp
   branches/CMake/release/libs/math/test/expinti_data.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/expinti_data.ipp
   branches/CMake/release/libs/math/test/expinti_data_double.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/expinti_data_double.ipp
   branches/CMake/release/libs/math/test/expinti_data_long.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/expinti_data_long.ipp
   branches/CMake/release/libs/math/test/ncbeta.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/ncbeta.ipp
   branches/CMake/release/libs/math/test/ncbeta_big.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/ncbeta_big.ipp
   branches/CMake/release/libs/math/test/nccs.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/nccs.ipp
   branches/CMake/release/libs/math/test/nccs_big.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/nccs_big.ipp
   branches/CMake/release/libs/math/test/nct.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/nct.ipp
   branches/CMake/release/libs/math/test/pow_test.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/pow_test.cpp
   branches/CMake/release/libs/math/test/test_expint.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_expint.cpp
   branches/CMake/release/libs/math/test/test_expint_hooks.hpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_expint_hooks.hpp
   branches/CMake/release/libs/math/test/test_nc_beta.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_nc_beta.cpp
   branches/CMake/release/libs/math/test/test_nc_chi_squared.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_nc_chi_squared.cpp
   branches/CMake/release/libs/math/test/test_nc_f.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_nc_f.cpp
   branches/CMake/release/libs/math/test/test_nc_t.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_nc_t.cpp
   branches/CMake/release/libs/math/test/test_ncbeta_hooks.hpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_ncbeta_hooks.hpp
   branches/CMake/release/libs/math/test/test_nccs_hooks.hpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_nccs_hooks.hpp
   branches/CMake/release/libs/math/test/test_next.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_next.cpp
   branches/CMake/release/libs/math/test/test_round.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_round.cpp
   branches/CMake/release/libs/math/test/test_tr1.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_tr1.cpp
   branches/CMake/release/libs/math/test/test_zeta.cpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_zeta.cpp
   branches/CMake/release/libs/math/test/test_zeta_hooks.hpp
      - copied unchanged from r47510, /branches/release/libs/math/test/test_zeta_hooks.hpp
   branches/CMake/release/libs/math/test/zeta_1_below_data.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/zeta_1_below_data.ipp
   branches/CMake/release/libs/math/test/zeta_1_up_data.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/zeta_1_up_data.ipp
   branches/CMake/release/libs/math/test/zeta_data.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/zeta_data.ipp
   branches/CMake/release/libs/math/test/zeta_neg_data.ipp
      - copied unchanged from r47510, /branches/release/libs/math/test/zeta_neg_data.ipp
   branches/CMake/release/libs/math/tools/expint_data.cpp
      - copied unchanged from r47510, /branches/release/libs/math/tools/expint_data.cpp
   branches/CMake/release/libs/math/tools/expint_i_data.cpp
      - copied unchanged from r47510, /branches/release/libs/math/tools/expint_i_data.cpp
   branches/CMake/release/libs/math/tools/zeta_data.cpp
      - copied unchanged from r47510, /branches/release/libs/math/tools/zeta_data.cpp
   branches/CMake/release/libs/mpi/src/python/py_nonblocking.cpp
      - copied unchanged from r47510, /branches/release/libs/mpi/src/python/py_nonblocking.cpp
   branches/CMake/release/libs/mpi/src/python/request_with_value.hpp
      - copied unchanged from r47510, /branches/release/libs/mpi/src/python/request_with_value.hpp
   branches/CMake/release/libs/mpi/test/python/nonblocking_test.py
      - copied unchanged from r47510, /branches/release/libs/mpi/test/python/nonblocking_test.py
   branches/CMake/release/libs/ptr_container/doc/comp_ptr_inserter.sh
      - copied unchanged from r47510, /branches/release/libs/ptr_container/doc/comp_ptr_inserter.sh
   branches/CMake/release/libs/ptr_container/doc/ptr_inserter.html
      - copied unchanged from r47510, /branches/release/libs/ptr_container/doc/ptr_inserter.html
   branches/CMake/release/libs/ptr_container/doc/ptr_inserter.rst
      - copied unchanged from r47510, /branches/release/libs/ptr_container/doc/ptr_inserter.rst
   branches/CMake/release/libs/range/doc/upgrading.html
      - copied unchanged from r47510, /branches/release/libs/range/doc/upgrading.html
   branches/CMake/release/libs/regex/doc/gcc-performance.html
      - copied unchanged from r47510, /branches/release/libs/regex/doc/gcc-performance.html
   branches/CMake/release/libs/regex/doc/vc71-performance.html
      - copied unchanged from r47510, /branches/release/libs/regex/doc/vc71-performance.html
   branches/CMake/release/libs/serialization/doc/new_case_studies.html
      - copied unchanged from r47510, /branches/release/libs/serialization/doc/new_case_studies.html
   branches/CMake/release/libs/serialization/doc/performance_status.html
      - copied unchanged from r47510, /branches/release/libs/serialization/doc/performance_status.html
   branches/CMake/release/libs/serialization/doc/profile1.txt
      - copied unchanged from r47510, /branches/release/libs/serialization/doc/profile1.txt
   branches/CMake/release/libs/serialization/doc/profile2.txt
      - copied unchanged from r47510, /branches/release/libs/serialization/doc/profile2.txt
   branches/CMake/release/libs/serialization/doc/profile3.txt
      - copied unchanged from r47510, /branches/release/libs/serialization/doc/profile3.txt
   branches/CMake/release/libs/serialization/doc/singleton.html
      - copied unchanged from r47510, /branches/release/libs/serialization/doc/singleton.html
   branches/CMake/release/libs/serialization/doc/todo.html
      - copied unchanged from r47510, /branches/release/libs/serialization/doc/todo.html
   branches/CMake/release/libs/serialization/example/Jamfile.v2
      - copied unchanged from r47510, /branches/release/libs/serialization/example/Jamfile.v2
   branches/CMake/release/libs/serialization/example/demo_dll.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/demo_dll.cpp
   branches/CMake/release/libs/serialization/example/demo_dll_a.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/demo_dll_a.hpp
   branches/CMake/release/libs/serialization/example/demo_dll_a.ipp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/demo_dll_a.ipp
   branches/CMake/release/libs/serialization/example/demo_dll_b.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/demo_dll_b.hpp
   branches/CMake/release/libs/serialization/example/demo_dll_b.ipp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/demo_dll_b.ipp
   branches/CMake/release/libs/serialization/example/demo_xml.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/demo_xml.hpp
   branches/CMake/release/libs/serialization/example/polymorphic_portable_binary_iarchive.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/polymorphic_portable_binary_iarchive.cpp
   branches/CMake/release/libs/serialization/example/polymorphic_portable_binary_iarchive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/polymorphic_portable_binary_iarchive.hpp
   branches/CMake/release/libs/serialization/example/polymorphic_portable_binary_oarchive.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/polymorphic_portable_binary_oarchive.cpp
   branches/CMake/release/libs/serialization/example/polymorphic_portable_binary_oarchive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/polymorphic_portable_binary_oarchive.hpp
   branches/CMake/release/libs/serialization/example/portable_binary_archive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/portable_binary_archive.hpp
   branches/CMake/release/libs/serialization/example/portable_binary_iarchive.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/portable_binary_iarchive.cpp
   branches/CMake/release/libs/serialization/example/portable_binary_oarchive.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/example/portable_binary_oarchive.cpp
   branches/CMake/release/libs/serialization/performance/
      - copied from r47510, /branches/release/libs/serialization/performance/
   branches/CMake/release/libs/serialization/performance/Jamfile.v2
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/Jamfile.v2
   branches/CMake/release/libs/serialization/performance/binary_archive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/binary_archive.hpp
   branches/CMake/release/libs/serialization/performance/binary_warchive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/binary_warchive.hpp
   branches/CMake/release/libs/serialization/performance/peformance_array.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/peformance_array.cpp
   branches/CMake/release/libs/serialization/performance/performance_binary.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/performance_binary.cpp
   branches/CMake/release/libs/serialization/performance/performance_codecvt_null.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/performance_codecvt_null.cpp
   branches/CMake/release/libs/serialization/performance/performance_iterators.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/performance_iterators.cpp
   branches/CMake/release/libs/serialization/performance/performance_iterators_base64.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/performance_iterators_base64.cpp
   branches/CMake/release/libs/serialization/performance/performance_no_rtti.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/performance_no_rtti.cpp
   branches/CMake/release/libs/serialization/performance/performance_polymorphic.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/performance_polymorphic.cpp
   branches/CMake/release/libs/serialization/performance/performance_simple_class.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/performance_simple_class.cpp
   branches/CMake/release/libs/serialization/performance/performance_utf8_codecvt.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/performance_utf8_codecvt.cpp
   branches/CMake/release/libs/serialization/performance/performance_vector.cpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/performance_vector.cpp
   branches/CMake/release/libs/serialization/performance/polymorphic_array_binary_archive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/polymorphic_array_binary_archive.hpp
   branches/CMake/release/libs/serialization/performance/polymorphic_binary_archive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/polymorphic_binary_archive.hpp
   branches/CMake/release/libs/serialization/performance/polymorphic_text_archive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/polymorphic_text_archive.hpp
   branches/CMake/release/libs/serialization/performance/polymorphic_text_warchive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/polymorphic_text_warchive.hpp
   branches/CMake/release/libs/serialization/performance/polymorphic_xml_archive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/polymorphic_xml_archive.hpp
   branches/CMake/release/libs/serialization/performance/polymorphic_xml_warchive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/polymorphic_xml_warchive.hpp
   branches/CMake/release/libs/serialization/performance/portable_binary_archive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/portable_binary_archive.hpp
   branches/CMake/release/libs/serialization/performance/profile.sh
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/profile.sh
   branches/CMake/release/libs/serialization/performance/text_archive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/text_archive.hpp
   branches/CMake/release/libs/serialization/performance/text_warchive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/text_warchive.hpp
   branches/CMake/release/libs/serialization/performance/xml_archive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/xml_archive.hpp
   branches/CMake/release/libs/serialization/performance/xml_warchive.hpp
      - copied unchanged from r47510, /branches/release/libs/serialization/performance/xml_warchive.hpp
   branches/CMake/release/libs/smart_ptr/test/allocate_shared_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/allocate_shared_test.cpp
   branches/CMake/release/libs/smart_ptr/test/esft_regtest.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/esft_regtest.cpp
   branches/CMake/release/libs/smart_ptr/test/ip_convertible_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/ip_convertible_test.cpp
   branches/CMake/release/libs/smart_ptr/test/make_shared_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/make_shared_test.cpp
   branches/CMake/release/libs/smart_ptr/test/scoped_array_eq_fail.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/scoped_array_eq_fail.cpp
   branches/CMake/release/libs/smart_ptr/test/scoped_ptr_eq_fail.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/scoped_ptr_eq_fail.cpp
   branches/CMake/release/libs/smart_ptr/test/sp_atomic_mt2_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/sp_atomic_mt2_test.cpp
   branches/CMake/release/libs/smart_ptr/test/sp_atomic_mt_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/sp_atomic_mt_test.cpp
   branches/CMake/release/libs/smart_ptr/test/sp_atomic_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/sp_atomic_test.cpp
   branches/CMake/release/libs/smart_ptr/test/sp_convertible_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/sp_convertible_test.cpp
   branches/CMake/release/libs/smart_ptr/test/spinlock_pool_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/spinlock_pool_test.cpp
   branches/CMake/release/libs/smart_ptr/test/spinlock_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/spinlock_test.cpp
   branches/CMake/release/libs/smart_ptr/test/spinlock_try_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/spinlock_try_test.cpp
   branches/CMake/release/libs/smart_ptr/test/wp_convertible_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/wp_convertible_test.cpp
   branches/CMake/release/libs/smart_ptr/test/yield_k_test.cpp
      - copied unchanged from r47510, /branches/release/libs/smart_ptr/test/yield_k_test.cpp
   branches/CMake/release/libs/spirit/doc/html/images/alert.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/alert.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/
      - copied from r47510, /branches/release/libs/spirit/doc/html/images/callouts/
   branches/CMake/release/libs/spirit/doc/html/images/callouts/1.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/1.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/10.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/10.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/11.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/11.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/12.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/12.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/13.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/13.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/14.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/14.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/15.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/15.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/2.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/2.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/3.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/3.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/4.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/4.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/5.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/5.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/6.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/6.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/7.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/7.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/8.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/8.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/9.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/9.png
   branches/CMake/release/libs/spirit/doc/html/images/callouts/Thumbs.db
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/callouts/Thumbs.db
   branches/CMake/release/libs/spirit/doc/html/images/caution.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/caution.png
   branches/CMake/release/libs/spirit/doc/html/images/important.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/important.png
   branches/CMake/release/libs/spirit/doc/html/images/lexerflow.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/lexerflow.png
   branches/CMake/release/libs/spirit/doc/html/images/note.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/note.png
   branches/CMake/release/libs/spirit/doc/html/images/tip.png
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/images/tip.png
   branches/CMake/release/libs/spirit/doc/html/index.html
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/html/index.html
   branches/CMake/release/libs/spirit/doc/qi_and_karma/actions.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/actions.qbk
   branches/CMake/release/libs/spirit/doc/qi_and_karma/complex.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/complex.qbk
   branches/CMake/release/libs/spirit/doc/qi_and_karma/employee.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/employee.qbk
   branches/CMake/release/libs/spirit/doc/qi_and_karma/mini_xml.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/mini_xml.qbk
   branches/CMake/release/libs/spirit/doc/qi_and_karma/num_list2.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/num_list2.qbk
   branches/CMake/release/libs/spirit/doc/qi_and_karma/num_list3.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/num_list3.qbk
   branches/CMake/release/libs/spirit/doc/qi_and_karma/num_list4.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/num_list4.qbk
   branches/CMake/release/libs/spirit/doc/qi_and_karma/roman.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/roman.qbk
   branches/CMake/release/libs/spirit/doc/qi_and_karma/sum_tutorial.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/sum_tutorial.qbk
   branches/CMake/release/libs/spirit/doc/qi_and_karma/tutorial_intro.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/tutorial_intro.qbk
   branches/CMake/release/libs/spirit/doc/qi_and_karma/warming_up.qbk
      - copied unchanged from r47510, /branches/release/libs/spirit/doc/qi_and_karma/warming_up.qbk
   branches/CMake/release/libs/spirit/example/qi/mini_xml3.cpp
      - copied unchanged from r47510, /branches/release/libs/spirit/example/qi/mini_xml3.cpp
   branches/CMake/release/libs/spirit/example/qi/mini_xml_samples/4.toyxml
      - copied unchanged from r47510, /branches/release/libs/spirit/example/qi/mini_xml_samples/4.toyxml
   branches/CMake/release/libs/spirit/example/qi/num_list1.cpp
      - copied unchanged from r47510, /branches/release/libs/spirit/example/qi/num_list1.cpp
   branches/CMake/release/libs/spirit/example/qi/num_list4.cpp
      - copied unchanged from r47510, /branches/release/libs/spirit/example/qi/num_list4.cpp
   branches/CMake/release/libs/statechart/example/PingPong/Player.cpp
      - copied unchanged from r47510, /branches/release/libs/statechart/example/PingPong/Player.cpp
   branches/CMake/release/libs/statechart/example/PingPong/Player.hpp
      - copied unchanged from r47510, /branches/release/libs/statechart/example/PingPong/Player.hpp
   branches/CMake/release/libs/statechart/example/PingPong/Waiting.hpp
      - copied unchanged from r47510, /branches/release/libs/statechart/example/PingPong/Waiting.hpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/
      - copied from r47510, /branches/release/libs/tr1/test/cyclic_depend/
   branches/CMake/release/libs/tr1/test/cyclic_depend/config.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/config.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function0.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function0.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function1.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function1.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function2.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function2.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function3.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function3.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function4.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function4.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function5.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function5.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function6.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function6.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function7.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function7.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function8.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function8.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/function9.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/function9.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/hash.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/hash.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/intrusive_ptr.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/intrusive_ptr.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/make_tuple.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/make_tuple.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/program_options.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/program_options.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/regex.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/regex.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/shared_count.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/shared_count.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/shared_ptr.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/shared_ptr.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/tuple.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/tuple.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/tuple_fwd.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/tuple_fwd.cpp
   branches/CMake/release/libs/tr1/test/cyclic_depend/tuple_tie.cpp
      - copied unchanged from r47510, /branches/release/libs/tr1/test/cyclic_depend/tuple_tie.cpp
   branches/CMake/release/tools/build/v2/contrib/
      - copied from r47510, /branches/release/tools/build/v2/contrib/
   branches/CMake/release/tools/build/v2/contrib/boost.jam
      - copied unchanged from r47510, /branches/release/tools/build/v2/contrib/boost.jam
   branches/CMake/release/tools/build/v2/contrib/tntnet.jam
      - copied unchanged from r47510, /branches/release/tools/build/v2/contrib/tntnet.jam
   branches/CMake/release/tools/build/v2/test/file_name_handling.py
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/file_name_handling.py
   branches/CMake/release/tools/build/v2/test/qt4/
      - copied from r47510, /branches/release/tools/build/v2/test/qt4/
   branches/CMake/release/tools/build/v2/test/qt4.py
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4.py
   branches/CMake/release/tools/build/v2/test/qt4/Jamroot
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/Jamroot
   branches/CMake/release/tools/build/v2/test/qt4/phonon.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/phonon.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qt3support.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qt3support.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtassistant.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtassistant.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtcore.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtcore.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtcorefail.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtcorefail.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtgui.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtgui.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qthelp.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qthelp.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtnetwork.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtnetwork.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtscript.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtscript.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtsql.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtsql.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtsvg.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtsvg.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qttest.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qttest.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtwebkit.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtwebkit.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtxml.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtxml.cpp
   branches/CMake/release/tools/build/v2/test/qt4/qtxmlpatterns.cpp
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/qt4/qtxmlpatterns.cpp
   branches/CMake/release/tools/build/v2/test/sort_rule.py
      - copied unchanged from r47510, /branches/release/tools/build/v2/test/sort_rule.py
   branches/CMake/release/tools/build/v2/tools/types/objc.jam
      - copied unchanged from r47510, /branches/release/tools/build/v2/tools/types/objc.jam
   branches/CMake/release/tools/inspect/ascii_check.cpp
      - copied unchanged from r47510, /branches/release/tools/inspect/ascii_check.cpp
   branches/CMake/release/tools/inspect/ascii_check.hpp
      - copied unchanged from r47510, /branches/release/tools/inspect/ascii_check.hpp
   branches/CMake/release/tools/inspect/build/msvc/
      - copied from r47510, /branches/release/tools/inspect/build/msvc/
   branches/CMake/release/tools/inspect/build/msvc/boost_inspect.sln
      - copied unchanged from r47510, /branches/release/tools/inspect/build/msvc/boost_inspect.sln
   branches/CMake/release/tools/inspect/build/msvc/boost_inspect.vcproj
      - copied unchanged from r47510, /branches/release/tools/inspect/build/msvc/boost_inspect.vcproj
   branches/CMake/release/tools/inspect/build/msvc/readme.txt
      - copied unchanged from r47510, /branches/release/tools/inspect/build/msvc/readme.txt
   branches/CMake/release/tools/inspect/path_name_check.cpp
      - copied unchanged from r47510, /branches/release/tools/inspect/path_name_check.cpp
   branches/CMake/release/tools/inspect/path_name_check.hpp
      - copied unchanged from r47510, /branches/release/tools/inspect/path_name_check.hpp
   branches/CMake/release/tools/jam/test/builtin_normalize_path.jam
      - copied unchanged from r47510, /branches/release/tools/jam/test/builtin_normalize_path.jam
Removed:
   branches/CMake/release/boost/spirit/home/support/detail/lexer/char_state_machine.hpp
   branches/CMake/release/boost/spirit/home/support/detail/lexer/tokeniser.hpp
   branches/CMake/release/libs/asio/doc/design/
   branches/CMake/release/libs/asio/doc/design.qbk
   branches/CMake/release/libs/config/test/options.jam
   branches/CMake/release/libs/config/test/options_v2.jam
   branches/CMake/release/libs/exception/doc/exception_what.html
   branches/CMake/release/libs/filesystem/src/exception.cpp
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bessel_i.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bessel_jn.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bessel_jv.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bessel_k.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bessel_yv.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/beta-small.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/beta_dist.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cauchy1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cauchy2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/chi_square.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_c.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erf1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erf2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/exponential_dist.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/extreme_val_dist.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/extreme_val_dist2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/fisher_f.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma_dist1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma_dist2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/legendre_p1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lgamma-errors.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lognormal1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lognormal2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/neg_binomial_pdf1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/neg_binomial_pdf2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/normal.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/poisson.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/re_exp_on_c.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sph_bessel_j.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sph_bessel_y.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/students_t.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/weibull.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/weibull2.png
   branches/CMake/release/libs/spirit/doc/qi_and_karma/tutorials.qbk
   branches/CMake/release/libs/spirit/example/qi/num_list.cpp
   branches/CMake/release/tools/inspect/long_name_check.cpp
   branches/CMake/release/tools/inspect/long_name_check.hpp
Properties modified:
   branches/CMake/release/ (props changed)
   branches/CMake/release/boost/tr1/tr1/algorithm (props changed)
   branches/CMake/release/boost/tr1/tr1/array (props changed)
   branches/CMake/release/boost/tr1/tr1/bitset (props changed)
   branches/CMake/release/boost/tr1/tr1/complex (props changed)
   branches/CMake/release/boost/tr1/tr1/deque (props changed)
   branches/CMake/release/boost/tr1/tr1/exception (props changed)
   branches/CMake/release/boost/tr1/tr1/fstream (props changed)
   branches/CMake/release/boost/tr1/tr1/functional (props changed)
   branches/CMake/release/boost/tr1/tr1/iomanip (props changed)
   branches/CMake/release/boost/tr1/tr1/ios (props changed)
   branches/CMake/release/boost/tr1/tr1/iostream (props changed)
   branches/CMake/release/boost/tr1/tr1/istream (props changed)
   branches/CMake/release/boost/tr1/tr1/iterator (props changed)
   branches/CMake/release/boost/tr1/tr1/limits (props changed)
   branches/CMake/release/boost/tr1/tr1/list (props changed)
   branches/CMake/release/boost/tr1/tr1/locale (props changed)
   branches/CMake/release/boost/tr1/tr1/map (props changed)
   branches/CMake/release/boost/tr1/tr1/memory (props changed)
   branches/CMake/release/boost/tr1/tr1/new (props changed)
   branches/CMake/release/boost/tr1/tr1/numeric (props changed)
   branches/CMake/release/boost/tr1/tr1/ostream (props changed)
   branches/CMake/release/boost/tr1/tr1/queue (props changed)
   branches/CMake/release/boost/tr1/tr1/random (props changed)
   branches/CMake/release/boost/tr1/tr1/regex (props changed)
   branches/CMake/release/boost/tr1/tr1/set (props changed)
   branches/CMake/release/boost/tr1/tr1/sstream (props changed)
   branches/CMake/release/boost/tr1/tr1/stack (props changed)
   branches/CMake/release/boost/tr1/tr1/stdexcept (props changed)
   branches/CMake/release/boost/tr1/tr1/streambuf (props changed)
   branches/CMake/release/boost/tr1/tr1/string (props changed)
   branches/CMake/release/boost/tr1/tr1/strstream (props changed)
   branches/CMake/release/boost/tr1/tr1/tuple (props changed)
   branches/CMake/release/boost/tr1/tr1/type_traits (props changed)
   branches/CMake/release/boost/tr1/tr1/typeinfo (props changed)
   branches/CMake/release/boost/tr1/tr1/utility (props changed)
   branches/CMake/release/boost/tr1/tr1/valarray (props changed)
   branches/CMake/release/boost/tr1/tr1/vector (props changed)
   branches/CMake/release/libs/config/doc/html/HTML.manifest (contents, props changed)
   branches/CMake/release/libs/config/tools/configure.in (props changed)
   branches/CMake/release/libs/program_options/doc/alternatives (props changed)
   branches/CMake/release/libs/program_options/doc/glossary.dox (props changed)
   branches/CMake/release/libs/program_options/doc/program_options.dox (props changed)
   branches/CMake/release/libs/program_options/doc/program_options.ent (props changed)
   branches/CMake/release/libs/program_options/doc/questions (props changed)
   branches/CMake/release/libs/program_options/doc/questions.dox (props changed)
   branches/CMake/release/libs/program_options/doc/rationale (props changed)
   branches/CMake/release/libs/program_options/doc/rationale.dox (props changed)
   branches/CMake/release/libs/program_options/doc/recipes.dox (props changed)
   branches/CMake/release/libs/program_options/doc/requirements-Rozental (props changed)
   branches/CMake/release/libs/program_options/example/multiple_sources.cfg (props changed)
   branches/CMake/release/libs/program_options/example/response_file.rsp (props changed)
   branches/CMake/release/libs/python/example/Jamroot (props changed)
   branches/CMake/release/libs/python/example/quickstart/Jamroot (props changed)
   branches/CMake/release/libs/python/example/tutorial/Jamroot (props changed)
   branches/CMake/release/libs/python/pyste/NEWS (props changed)
   branches/CMake/release/libs/python/pyste/tests/abstract_test.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/add_test.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/basic.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/code_test.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/enums.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/header_test.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/inherit.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/inherit2.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/inherit3.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/inherit4.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/nested.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/opaque.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/operators.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/smart_ptr.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/templates.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/vars.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/virtual.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/virtual2.pyste (props changed)
   branches/CMake/release/libs/python/pyste/tests/wrappertest.pyste (props changed)
   branches/CMake/release/libs/serialization/vc7ide/BoostSerializationLibrary.sln (props changed)
   branches/CMake/release/libs/serialization/vc7ide/Library.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/LibraryW.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/Manual.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo_auto_ptr.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo_exception.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo_fast_archive.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo_pimpl.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo_polymorphic.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo_portable_archive.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo_shared_ptr.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo_xml.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo_xml_load.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/demo_xml_save.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_array.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_binary.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_class_info_load.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_class_info_save.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_codecvt_null.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_const.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_const_fail.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_const_pass.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_contained_class.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_cyclic_ptrs.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_delete_pointer.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_deque.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_derived.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_derived_class.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_derived_class_ptr.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_diamond.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_exported.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_inclusion.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_iterators.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_iterators_base64.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_list.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_list_ptrs.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_map.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_mi.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_mult_archive_types.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_multiple_ptrs.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_no_rtti.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_non_default_ctor.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_non_default_ctor2.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_non_intrusive.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_not_serializable.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_null_ptr.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_nvp.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_object.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_optional.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_polymorphic.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_primitive.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_private_ctor.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_recursion.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_recusion.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_registered.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_reset_object_addr.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_set.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_shared_ptr.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_shared_ptr_132.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_simple_class.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_simple_class_ptr.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_smart_cast.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_split.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_static_warning.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_tracking.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_traits_fail.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_traits_pass.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_unregistered.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_utf8_codecvt.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_variant.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_vector.vcproj (props changed)
   branches/CMake/release/libs/serialization/vc7ide/test_void_cast.vcproj (props changed)
   branches/CMake/release/libs/spirit/doc/html/ (props changed)
   branches/CMake/release/libs/spirit/doc/html/images/ (props changed)
   branches/CMake/release/libs/spirit/phoenix/doc/html/ (props changed)
   branches/CMake/release/libs/statechart/example/PingPong/PingPong.vcproj (contents, props changed)
   branches/CMake/release/tools/boostbook/doc/reference.dtdxml (props changed)
   branches/CMake/release/tools/boostbook/setup_boostbook.sh (props changed)
   branches/CMake/release/tools/boostbook/xsl/caramel/LICENSE (props changed)
   branches/CMake/release/tools/build/v2/debian/boost-build.docs (props changed)
   branches/CMake/release/tools/build/v2/debian/boost-build.examples (props changed)
   branches/CMake/release/tools/build/v2/debian/changelog (props changed)
   branches/CMake/release/tools/build/v2/debian/conffiles (props changed)
   branches/CMake/release/tools/build/v2/debian/control (props changed)
   branches/CMake/release/tools/build/v2/debian/copyright (props changed)
   branches/CMake/release/tools/build/v2/debian/excludes (props changed)
   branches/CMake/release/tools/build/v2/debian/rules (props changed)
   branches/CMake/release/tools/build/v2/example/customization/class.verbatim (props changed)
   branches/CMake/release/tools/build/v2/example/customization/t1.verbatim (props changed)
   branches/CMake/release/tools/build/v2/example/customization/t2.verbatim (props changed)
   branches/CMake/release/tools/build/v2/example/customization/usage.verbatim (props changed)
   branches/CMake/release/tools/build/v2/example/generate/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/generator/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/generator/foo.gci (props changed)
   branches/CMake/release/tools/build/v2/example/gettext/russian.po (props changed)
   branches/CMake/release/tools/build/v2/example/hello/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/libraries/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/make/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/make/main_cpp.pro (props changed)
   branches/CMake/release/tools/build/v2/example/pch/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/python_modules/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/qt/qt3/hello/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/qt/qt3/moccable-cpp/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/qt/qt3/uic/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/qt/qt3/uic/hello_world_widget.ui (props changed)
   branches/CMake/release/tools/build/v2/example/qt/qt4/hello/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/qt/qt4/moccable-cpp/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/qt/qt4/uic/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/example/qt/qt4/uic/hello_world_widget.ui (props changed)
   branches/CMake/release/tools/build/v2/test/boostbook/Jamroot (props changed)
   branches/CMake/release/tools/build/v2/test/dependency-test/x.foo (props changed)
   branches/CMake/release/tools/build/v2/test/dependency-test/y.foo (props changed)
   branches/CMake/release/tools/build/v2/test/direct-request-test/Jamfile2 (props changed)
   branches/CMake/release/tools/build/v2/test/generators-test/b.cxx (props changed)
   branches/CMake/release/tools/build/v2/test/generators-test/c.tui (props changed)
   branches/CMake/release/tools/build/v2/test/generators-test/d.wd (props changed)
   branches/CMake/release/tools/build/v2/test/generators-test/x.l (props changed)
   branches/CMake/release/tools/build/v2/test/generators-test/y.x_pro (props changed)
   branches/CMake/release/tools/build/v2/test/prebuilt/ext/Jamfile2 (props changed)
   branches/CMake/release/tools/build/v2/test/prebuilt/ext/Jamfile3 (props changed)
   branches/CMake/release/tools/build/v2/test/project-test4/Jamfile3 (props changed)
   branches/CMake/release/tools/build/v2/test/project-test4/Jamfile4 (props changed)
   branches/CMake/release/tools/build/v2/test/project-test4/Jamfile5 (props changed)
   branches/CMake/release/tools/build/v2/test/project-test4/lib/Jamfile1 (props changed)
   branches/CMake/release/tools/build/v2/test/project-test4/lib/Jamfile2 (props changed)
   branches/CMake/release/tools/build/v2/test/project-test4/lib/Jamfile3 (props changed)
   branches/CMake/release/tools/build/v2/test/project-test4/lib2/Jamfile2 (props changed)
   branches/CMake/release/tools/build/v2/test/subdir1/file-to-bind (props changed)
   branches/CMake/release/tools/build/v2/test/unused/b.x (props changed)
   branches/CMake/release/tools/jam/src/ (props changed)
   branches/CMake/release/tools/jam/src/Jambase (contents, props changed)
   branches/CMake/release/tools/jam/src/boehm_gc/config.sub (props changed)
   branches/CMake/release/tools/jam/src/boost-jam.spec (contents, props changed)
   branches/CMake/release/tools/jam/src/build_vms.com (props changed)
   branches/CMake/release/tools/jam/src/debian/changelog (props changed)
   branches/CMake/release/tools/jam/src/debian/control (props changed)
   branches/CMake/release/tools/jam/src/debian/copyright (props changed)
   branches/CMake/release/tools/jam/src/debian/jam.man.sgml (props changed)
   branches/CMake/release/tools/jam/src/debian/rules (props changed)
   branches/CMake/release/tools/jam/src/jamgram.y (props changed)
   branches/CMake/release/tools/jam/src/jamgram.yy (props changed)
Binary files modified:
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bernoulli_cdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bernoulli_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/beta.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/beta_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/binomial_pdf_1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/binomial_pdf_2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/digamma.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_1.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_2.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_3.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erf_inv.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erfc_inv.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma_p.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma_q.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/hermite.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ibeta.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/laguerre.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/legendre_q.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lgamma.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/rayleigh_cdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/rayleigh_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/triangular_cdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/triangular_pdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/uniform_cdf.png
   branches/CMake/release/libs/math/doc/sf_and_dist/graphs/uniform_pdf.png
   branches/CMake/release/libs/spirit/doc/html/images/spiritkarmaflow.png
   branches/CMake/release/libs/spirit/doc/html/images/spiritstructure.png
   branches/CMake/release/libs/statechart/doc/reference.pdf
Text files modified:
   branches/CMake/release/boost/any.hpp | 2
   branches/CMake/release/boost/archive/basic_binary_iprimitive.hpp | 8
   branches/CMake/release/boost/archive/basic_binary_oprimitive.hpp | 4
   branches/CMake/release/boost/archive/detail/oserializer.hpp | 10
   branches/CMake/release/boost/archive/impl/xml_wiarchive_impl.ipp | 2
   branches/CMake/release/boost/archive/impl/xml_woarchive_impl.ipp | 7
   branches/CMake/release/boost/archive/shared_ptr_helper.hpp | 12
   branches/CMake/release/boost/asio/detail/socket_types.hpp | 5
   branches/CMake/release/boost/asio/ssl/detail/openssl_init.hpp | 7
   branches/CMake/release/boost/asio/version.hpp | 2
   branches/CMake/release/boost/config/abi_prefix.hpp | 2
   branches/CMake/release/boost/config/abi_suffix.hpp | 5
   branches/CMake/release/boost/config/compiler/intel.hpp | 6
   branches/CMake/release/boost/config/compiler/pgi.hpp | 8
   branches/CMake/release/boost/config/compiler/sunpro_cc.hpp | 3
   branches/CMake/release/boost/config/compiler/vacpp.hpp | 4
   branches/CMake/release/boost/config/compiler/visualc.hpp | 7
   branches/CMake/release/boost/config/platform/hpux.hpp | 3
   branches/CMake/release/boost/config/platform/macos.hpp | 8
   branches/CMake/release/boost/config/platform/solaris.hpp | 7
   branches/CMake/release/boost/config/stdlib/libstdcpp3.hpp | 9
   branches/CMake/release/boost/config/stdlib/stlport.hpp | 2
   branches/CMake/release/boost/config/suffix.hpp | 11
   branches/CMake/release/boost/detail/interlocked.hpp | 2
   branches/CMake/release/boost/detail/lwm_win32_cs.hpp | 16
   branches/CMake/release/boost/detail/shared_count.hpp | 55
   branches/CMake/release/boost/detail/sp_counted_base.hpp | 31
   branches/CMake/release/boost/exception/detail/object_hex_dump.hpp | 1
   branches/CMake/release/boost/exception/enable_current_exception.hpp | 2
   branches/CMake/release/boost/exception/enable_error_info.hpp | 1
   branches/CMake/release/boost/exception/info.hpp | 2
   branches/CMake/release/boost/exception/info_tuple.hpp | 3
   branches/CMake/release/boost/exception/to_string.hpp | 2
   branches/CMake/release/boost/exception/to_string_stub.hpp | 4
   branches/CMake/release/boost/exception_ptr.hpp | 14
   branches/CMake/release/boost/filesystem/convenience.hpp | 21
   branches/CMake/release/boost/filesystem/operations.hpp | 71
   branches/CMake/release/boost/filesystem/path.hpp | 128
   branches/CMake/release/boost/function/detail/prologue.hpp | 3
   branches/CMake/release/boost/function/function_base.hpp | 212
   branches/CMake/release/boost/function/function_template.hpp | 550 +-
   branches/CMake/release/boost/fusion/adapted/array/detail/category_of_impl.hpp | 2
   branches/CMake/release/boost/fusion/adapted/array/tag_of.hpp | 2
   branches/CMake/release/boost/fusion/adapted/boost_tuple/tag_of.hpp | 4
   branches/CMake/release/boost/fusion/adapted/std_pair.hpp | 4
   branches/CMake/release/boost/fusion/adapted/std_pair/detail/category_of_impl.hpp | 2
   branches/CMake/release/boost/fusion/adapted/std_pair/std_pair_iterator.hpp | 2
   branches/CMake/release/boost/fusion/adapted/std_pair/tag_of.hpp | 2
   branches/CMake/release/boost/fusion/adapted/struct/adapt_assoc_struct.hpp | 2
   branches/CMake/release/boost/fusion/adapted/struct/adapt_struct.hpp | 2
   branches/CMake/release/boost/fusion/adapted/struct/detail/category_of_impl.hpp | 2
   branches/CMake/release/boost/fusion/adapted/struct/struct_iterator.hpp | 2
   branches/CMake/release/boost/fusion/algorithm/transformation/transform.hpp | 2
   branches/CMake/release/boost/fusion/algorithm/transformation/zip.hpp | 2
   branches/CMake/release/boost/fusion/container/generation/deque_tie.hpp | 2
   branches/CMake/release/boost/fusion/container/generation/list_tie.hpp | 2
   branches/CMake/release/boost/fusion/container/generation/make_deque.hpp | 2
   branches/CMake/release/boost/fusion/container/generation/make_list.hpp | 2
   branches/CMake/release/boost/fusion/container/generation/make_map.hpp | 2
   branches/CMake/release/boost/fusion/container/generation/make_set.hpp | 2
   branches/CMake/release/boost/fusion/container/generation/make_vector.hpp | 2
   branches/CMake/release/boost/fusion/container/generation/map_tie.hpp | 2
   branches/CMake/release/boost/fusion/container/generation/vector_tie.hpp | 2
   branches/CMake/release/boost/fusion/container/list/detail/end_impl.hpp | 2
   branches/CMake/release/boost/fusion/functional/invocation/invoke.hpp | 2
   branches/CMake/release/boost/fusion/functional/invocation/invoke_function_object.hpp | 2
   branches/CMake/release/boost/fusion/functional/invocation/invoke_procedure.hpp | 2
   branches/CMake/release/boost/fusion/support/tag_of.hpp | 2
   branches/CMake/release/boost/fusion/view/transform_view/transform_view.hpp | 2
   branches/CMake/release/boost/gil/algorithm.hpp | 4
   branches/CMake/release/boost/gil/bit_aligned_pixel_reference.hpp | 10
   branches/CMake/release/boost/gil/channel.hpp | 16
   branches/CMake/release/boost/gil/color_base.hpp | 10
   branches/CMake/release/boost/gil/device_n.hpp | 14
   branches/CMake/release/boost/gil/extension/io/png_io_private.hpp | 4
   branches/CMake/release/boost/gil/gil_concept.hpp | 4
   branches/CMake/release/boost/gil/planar_pixel_reference.hpp | 8
   branches/CMake/release/boost/graph/detail/read_graphviz_spirit.hpp | 5
   branches/CMake/release/boost/intrusive_ptr.hpp | 35
   branches/CMake/release/boost/iterator/detail/config_def.hpp | 4
   branches/CMake/release/boost/math/bindings/rr.hpp | 20
   branches/CMake/release/boost/math/common_factor_rt.hpp | 4
   branches/CMake/release/boost/math/concepts/real_concept.hpp | 237
   branches/CMake/release/boost/math/concepts/std_real_concept.hpp | 194
   branches/CMake/release/boost/math/distributions.hpp | 11
   branches/CMake/release/boost/math/distributions/chi_squared.hpp | 20
   branches/CMake/release/boost/math/distributions/detail/common_error_handling.hpp | 54
   branches/CMake/release/boost/math/distributions/exponential.hpp | 4
   branches/CMake/release/boost/math/distributions/fwd.hpp | 16
   branches/CMake/release/boost/math/distributions/gamma.hpp | 3
   branches/CMake/release/boost/math/distributions/normal.hpp | 2
   branches/CMake/release/boost/math/distributions/poisson.hpp | 3
   branches/CMake/release/boost/math/distributions/students_t.hpp | 2
   branches/CMake/release/boost/math/distributions/triangular.hpp | 32
   branches/CMake/release/boost/math/distributions/uniform.hpp | 16
   branches/CMake/release/boost/math/distributions/weibull.hpp | 9
   branches/CMake/release/boost/math/policies/error_handling.hpp | 126
   branches/CMake/release/boost/math/policies/policy.hpp | 26
   branches/CMake/release/boost/math/special_functions.hpp | 7
   branches/CMake/release/boost/math/special_functions/acosh.hpp | 4
   branches/CMake/release/boost/math/special_functions/asinh.hpp | 5
   branches/CMake/release/boost/math/special_functions/atanh.hpp | 5
   branches/CMake/release/boost/math/special_functions/bessel.hpp | 21
   branches/CMake/release/boost/math/special_functions/beta.hpp | 12
   branches/CMake/release/boost/math/special_functions/binomial.hpp | 5
   branches/CMake/release/boost/math/special_functions/cbrt.hpp | 5
   branches/CMake/release/boost/math/special_functions/cos_pi.hpp | 22
   branches/CMake/release/boost/math/special_functions/detail/bessel_i0.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_i1.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_ik.hpp | 8
   branches/CMake/release/boost/math/special_functions/detail/bessel_j0.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_j1.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_jn.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_jy.hpp | 7
   branches/CMake/release/boost/math/special_functions/detail/bessel_jy_asym.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_k0.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_k1.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_kn.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_y0.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_y1.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/bessel_yn.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/erf_inv.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/gamma_inva.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/ibeta_inv_ab.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/ibeta_inverse.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/igamma_inverse.hpp | 7
   branches/CMake/release/boost/math/special_functions/detail/igamma_large.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/lgamma_small.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/simple_complex.hpp | 5
   branches/CMake/release/boost/math/special_functions/detail/t_distribution_inv.hpp | 17
   branches/CMake/release/boost/math/special_functions/detail/unchecked_factorial.hpp | 5
   branches/CMake/release/boost/math/special_functions/digamma.hpp | 5
   branches/CMake/release/boost/math/special_functions/ellint_1.hpp | 5
   branches/CMake/release/boost/math/special_functions/ellint_2.hpp | 5
   branches/CMake/release/boost/math/special_functions/ellint_3.hpp | 10
   branches/CMake/release/boost/math/special_functions/ellint_rc.hpp | 5
   branches/CMake/release/boost/math/special_functions/ellint_rd.hpp | 5
   branches/CMake/release/boost/math/special_functions/ellint_rf.hpp | 5
   branches/CMake/release/boost/math/special_functions/ellint_rj.hpp | 5
   branches/CMake/release/boost/math/special_functions/erf.hpp | 976 ++-
   branches/CMake/release/boost/math/special_functions/expm1.hpp | 5
   branches/CMake/release/boost/math/special_functions/factorials.hpp | 7
   branches/CMake/release/boost/math/special_functions/fpclassify.hpp | 31
   branches/CMake/release/boost/math/special_functions/gamma.hpp | 56
   branches/CMake/release/boost/math/special_functions/hermite.hpp | 5
   branches/CMake/release/boost/math/special_functions/hypot.hpp | 5
   branches/CMake/release/boost/math/special_functions/laguerre.hpp | 5
   branches/CMake/release/boost/math/special_functions/lanczos.hpp | 9
   branches/CMake/release/boost/math/special_functions/legendre.hpp | 5
   branches/CMake/release/boost/math/special_functions/log1p.hpp | 197
   branches/CMake/release/boost/math/special_functions/math_fwd.hpp | 146
   branches/CMake/release/boost/math/special_functions/powm1.hpp | 5
   branches/CMake/release/boost/math/special_functions/sign.hpp | 5
   branches/CMake/release/boost/math/special_functions/sin_pi.hpp | 24
   branches/CMake/release/boost/math/special_functions/sinc.hpp | 5
   branches/CMake/release/boost/math/special_functions/sinhc.hpp | 5
   branches/CMake/release/boost/math/special_functions/spherical_harmonic.hpp | 5
   branches/CMake/release/boost/math/special_functions/sqrt1pm1.hpp | 5
   branches/CMake/release/boost/math/tools/config.hpp | 21
   branches/CMake/release/boost/math/tools/fraction.hpp | 5
   branches/CMake/release/boost/math/tools/minima.hpp | 5
   branches/CMake/release/boost/math/tools/polynomial.hpp | 89
   branches/CMake/release/boost/math/tools/precision.hpp | 5
   branches/CMake/release/boost/math/tools/promotion.hpp | 5
   branches/CMake/release/boost/math/tools/rational.hpp | 5
   branches/CMake/release/boost/math/tools/real_cast.hpp | 5
   branches/CMake/release/boost/math/tools/remez.hpp | 5
   branches/CMake/release/boost/math/tools/roots.hpp | 6
   branches/CMake/release/boost/math/tools/series.hpp | 5
   branches/CMake/release/boost/math/tools/solve.hpp | 5
   branches/CMake/release/boost/math/tools/stats.hpp | 5
   branches/CMake/release/boost/math/tools/test.hpp | 5
   branches/CMake/release/boost/math/tools/test_data.hpp | 6
   branches/CMake/release/boost/math/tools/toms748_solve.hpp | 11
   branches/CMake/release/boost/math/tools/traits.hpp | 5
   branches/CMake/release/boost/math/tools/user.hpp | 5
   branches/CMake/release/boost/math/tools/workaround.hpp | 5
   branches/CMake/release/boost/parameter/aux_/cast.hpp | 2
   branches/CMake/release/boost/parameter/aux_/default.hpp | 14
   branches/CMake/release/boost/parameter/aux_/python/invoker.hpp | 1
   branches/CMake/release/boost/parameter/aux_/set.hpp | 2
   branches/CMake/release/boost/parameter/aux_/tagged_argument.hpp | 1
   branches/CMake/release/boost/parameter/macros.hpp | 1
   branches/CMake/release/boost/parameter/preprocessor.hpp | 3
   branches/CMake/release/boost/pointer_cast.hpp | 2
   branches/CMake/release/boost/pointer_to_other.hpp | 2
   branches/CMake/release/boost/program_options/detail/utf8_codecvt_facet.hpp | 2
   branches/CMake/release/boost/progress.hpp | 2
   branches/CMake/release/boost/python/iterator.hpp | 10
   branches/CMake/release/boost/python/object_attributes.hpp | 48
   branches/CMake/release/boost/python/object_core.hpp | 6
   branches/CMake/release/boost/python/suite/indexing/container_utils.hpp | 13
   branches/CMake/release/boost/python/type_id.hpp | 1
   branches/CMake/release/boost/python/with_custodian_and_ward.hpp | 3
   branches/CMake/release/boost/random/detail/signed_unsigned_tools.hpp | 77
   branches/CMake/release/boost/random/uniform_int.hpp | 5
   branches/CMake/release/boost/random/uniform_real.hpp | 2
   branches/CMake/release/boost/random/uniform_smallint.hpp | 4
   branches/CMake/release/boost/regex/concepts.hpp | 6
   branches/CMake/release/boost/regex/pending/object_cache.hpp | 2
   branches/CMake/release/boost/regex/pending/unicode_iterator.hpp | 1
   branches/CMake/release/boost/regex/v4/basic_regex_creator.hpp | 13
   branches/CMake/release/boost/regex/v4/cpp_regex_traits.hpp | 5
   branches/CMake/release/boost/regex/v4/instances.hpp | 19
   branches/CMake/release/boost/regex/v4/perl_matcher_common.hpp | 4
   branches/CMake/release/boost/regex/v4/perl_matcher_non_recursive.hpp | 9
   branches/CMake/release/boost/scoped_array.hpp | 3
   branches/CMake/release/boost/scoped_ptr.hpp | 3
   branches/CMake/release/boost/serialization/export.hpp | 12
   branches/CMake/release/boost/shared_ptr.hpp | 152
   branches/CMake/release/boost/spirit/actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/assign_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/assign_key_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/clear_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/decrement_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/erase_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/increment_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/insert_at_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/insert_key_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/push_back_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/push_front_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/ref_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/ref_const_ref_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/ref_const_ref_const_ref_a.hpp | 4
   branches/CMake/release/boost/spirit/actor/ref_const_ref_value_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/ref_value_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/swap_actor.hpp | 4
   branches/CMake/release/boost/spirit/actor/typeof.hpp | 4
   branches/CMake/release/boost/spirit/attribute.hpp | 4
   branches/CMake/release/boost/spirit/attribute/closure.hpp | 4
   branches/CMake/release/boost/spirit/attribute/closure_context.hpp | 4
   branches/CMake/release/boost/spirit/attribute/closure_fwd.hpp | 4
   branches/CMake/release/boost/spirit/attribute/parametric.hpp | 4
   branches/CMake/release/boost/spirit/attribute/typeof.hpp | 4
   branches/CMake/release/boost/spirit/core.hpp | 4
   branches/CMake/release/boost/spirit/core/assert.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/actions.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/alternative.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/composite.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/difference.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/directives.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/epsilon.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/exclusive_or.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/intersection.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/kleene_star.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/list.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/no_actions.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/operators.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/optional.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/positive.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/sequence.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/sequential_and.hpp | 4
   branches/CMake/release/boost/spirit/core/composite/sequential_or.hpp | 4
   branches/CMake/release/boost/spirit/core/config.hpp | 4
   branches/CMake/release/boost/spirit/core/match.hpp | 4
   branches/CMake/release/boost/spirit/core/nil.hpp | 4
   branches/CMake/release/boost/spirit/core/non_terminal/grammar.hpp | 4
   branches/CMake/release/boost/spirit/core/non_terminal/parser_context.hpp | 4
   branches/CMake/release/boost/spirit/core/non_terminal/parser_id.hpp | 4
   branches/CMake/release/boost/spirit/core/non_terminal/rule.hpp | 4
   branches/CMake/release/boost/spirit/core/non_terminal/subrule.hpp | 4
   branches/CMake/release/boost/spirit/core/non_terminal/subrule_fwd.hpp | 4
   branches/CMake/release/boost/spirit/core/parser.hpp | 4
   branches/CMake/release/boost/spirit/core/primitives/numerics.hpp | 4
   branches/CMake/release/boost/spirit/core/primitives/numerics_fwd.hpp | 4
   branches/CMake/release/boost/spirit/core/primitives/primitives.hpp | 4
   branches/CMake/release/boost/spirit/core/safe_bool.hpp | 4
   branches/CMake/release/boost/spirit/core/scanner/scanner.hpp | 4
   branches/CMake/release/boost/spirit/core/scanner/scanner_fwd.hpp | 4
   branches/CMake/release/boost/spirit/core/scanner/skipper.hpp | 4
   branches/CMake/release/boost/spirit/core/scanner/skipper_fwd.hpp | 4
   branches/CMake/release/boost/spirit/core/typeof.hpp | 4
   branches/CMake/release/boost/spirit/debug.hpp | 4
   branches/CMake/release/boost/spirit/debug/debug_node.hpp | 4
   branches/CMake/release/boost/spirit/debug/minimal.hpp | 4
   branches/CMake/release/boost/spirit/debug/parser_names.hpp | 4
   branches/CMake/release/boost/spirit/debug/typeof.hpp | 4
   branches/CMake/release/boost/spirit/dynamic.hpp | 4
   branches/CMake/release/boost/spirit/dynamic/for.hpp | 4
   branches/CMake/release/boost/spirit/dynamic/if.hpp | 4
   branches/CMake/release/boost/spirit/dynamic/lazy.hpp | 4
   branches/CMake/release/boost/spirit/dynamic/rule_alias.hpp | 4
   branches/CMake/release/boost/spirit/dynamic/select.hpp | 4
   branches/CMake/release/boost/spirit/dynamic/stored_rule.hpp | 4
   branches/CMake/release/boost/spirit/dynamic/stored_rule_fwd.hpp | 4
   branches/CMake/release/boost/spirit/dynamic/switch.hpp | 4
   branches/CMake/release/boost/spirit/dynamic/typeof.hpp | 4
   branches/CMake/release/boost/spirit/dynamic/while.hpp | 4
   branches/CMake/release/boost/spirit/error_handling.hpp | 4
   branches/CMake/release/boost/spirit/error_handling/exceptions.hpp | 4
   branches/CMake/release/boost/spirit/error_handling/exceptions_fwd.hpp | 4
   branches/CMake/release/boost/spirit/error_handling/typeof.hpp | 4
   branches/CMake/release/boost/spirit/home/classic/core/non_terminal/impl/static.hpp | 38
   branches/CMake/release/boost/spirit/home/classic/tree/impl/tree_to_xml.ipp | 151
   branches/CMake/release/boost/spirit/home/karma/action/action.hpp | 11
   branches/CMake/release/boost/spirit/home/karma/auxiliary.hpp | 1
   branches/CMake/release/boost/spirit/home/karma/auxiliary/eps.hpp | 28
   branches/CMake/release/boost/spirit/home/karma/auxiliary/functor_director.hpp | 4
   branches/CMake/release/boost/spirit/home/karma/auxiliary/lazy.hpp | 4
   branches/CMake/release/boost/spirit/home/karma/auxiliary/meta_grammar.hpp | 3
   branches/CMake/release/boost/spirit/home/karma/auxiliary/none.hpp | 4
   branches/CMake/release/boost/spirit/home/karma/binary/binary.hpp | 8
   branches/CMake/release/boost/spirit/home/karma/binary/padding.hpp | 6
   branches/CMake/release/boost/spirit/home/karma/char/char.hpp | 138
   branches/CMake/release/boost/spirit/home/karma/char/space.hpp | 52
   branches/CMake/release/boost/spirit/home/karma/directive/center_alignment.hpp | 116
   branches/CMake/release/boost/spirit/home/karma/directive/delimit.hpp | 60
   branches/CMake/release/boost/spirit/home/karma/directive/left_alignment.hpp | 116
   branches/CMake/release/boost/spirit/home/karma/directive/right_alignment.hpp | 116
   branches/CMake/release/boost/spirit/home/karma/directive/verbatim.hpp | 6
   branches/CMake/release/boost/spirit/home/karma/nonterminal/grammar.hpp | 94
   branches/CMake/release/boost/spirit/home/karma/nonterminal/nonterminal_director.hpp | 8
   branches/CMake/release/boost/spirit/home/karma/nonterminal/rule.hpp | 6
   branches/CMake/release/boost/spirit/home/karma/numeric/int.hpp | 74
   branches/CMake/release/boost/spirit/home/karma/numeric/real.hpp | 80
   branches/CMake/release/boost/spirit/home/karma/numeric/uint.hpp | 62
   branches/CMake/release/boost/spirit/home/karma/operator/alternative.hpp | 6
   branches/CMake/release/boost/spirit/home/karma/operator/detail/alternative.hpp | 19
   branches/CMake/release/boost/spirit/home/karma/operator/kleene.hpp | 6
   branches/CMake/release/boost/spirit/home/karma/operator/list.hpp | 8
   branches/CMake/release/boost/spirit/home/karma/operator/optional.hpp | 6
   branches/CMake/release/boost/spirit/home/karma/operator/plus.hpp | 6
   branches/CMake/release/boost/spirit/home/karma/operator/sequence.hpp | 6
   branches/CMake/release/boost/spirit/home/karma/stream/stream.hpp | 114
   branches/CMake/release/boost/spirit/home/karma/string/lit.hpp | 114
   branches/CMake/release/boost/spirit/home/karma/what.hpp | 2
   branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/iterator_tokenizer.hpp | 9
   branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_functor.hpp | 2
   branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_generate_static.hpp | 2
   branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_lexer.hpp | 5
   branches/CMake/release/boost/spirit/home/lex/lexer/terminal_director.hpp | 4
   branches/CMake/release/boost/spirit/home/lex/qi/state/state_switcher.hpp | 10
   branches/CMake/release/boost/spirit/home/lex/qi/utility/plain_token.hpp | 4
   branches/CMake/release/boost/spirit/home/lex/tokenize_and_parse.hpp | 62
   branches/CMake/release/boost/spirit/home/qi/action/action.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/auxiliary/eps.hpp | 8
   branches/CMake/release/boost/spirit/home/qi/auxiliary/functor_director.hpp | 4
   branches/CMake/release/boost/spirit/home/qi/auxiliary/lazy.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/auxiliary/none.hpp | 4
   branches/CMake/release/boost/spirit/home/qi/auxiliary/primitives.hpp | 34
   branches/CMake/release/boost/spirit/home/qi/binary/binary.hpp | 8
   branches/CMake/release/boost/spirit/home/qi/char/char.hpp | 37
   branches/CMake/release/boost/spirit/home/qi/char/char_class.hpp | 4
   branches/CMake/release/boost/spirit/home/qi/char/char_parser.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/detail/expect_function.hpp | 4
   branches/CMake/release/boost/spirit/home/qi/directive/lexeme.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/directive/omit.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/directive/raw.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/nonterminal/grammar.hpp | 175
   branches/CMake/release/boost/spirit/home/qi/nonterminal/nonterminal_director.hpp | 4
   branches/CMake/release/boost/spirit/home/qi/nonterminal/rule.hpp | 15
   branches/CMake/release/boost/spirit/home/qi/numeric/int.hpp | 4
   branches/CMake/release/boost/spirit/home/qi/numeric/real.hpp | 4
   branches/CMake/release/boost/spirit/home/qi/numeric/uint.hpp | 4
   branches/CMake/release/boost/spirit/home/qi/operator/alternative.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/operator/and_predicate.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/operator/difference.hpp | 8
   branches/CMake/release/boost/spirit/home/qi/operator/kleene.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/operator/list.hpp | 8
   branches/CMake/release/boost/spirit/home/qi/operator/not_predicate.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/operator/optional.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/operator/permutation.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/operator/plus.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/operator/sequence_base.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/operator/sequential_or.hpp | 6
   branches/CMake/release/boost/spirit/home/qi/stream/stream.hpp | 4
   branches/CMake/release/boost/spirit/home/qi/string/lit.hpp | 18
   branches/CMake/release/boost/spirit/home/qi/string/symbols.hpp | 4
   branches/CMake/release/boost/spirit/home/qi/what.hpp | 2
   branches/CMake/release/boost/spirit/home/support/detail/action_dispatch.hpp | 27
   branches/CMake/release/boost/spirit/home/support/detail/hold_any.hpp | 2
   branches/CMake/release/boost/spirit/home/support/detail/lexer/char_traits.hpp | 58
   branches/CMake/release/boost/spirit/home/support/detail/lexer/consts.hpp | 10
   branches/CMake/release/boost/spirit/home/support/detail/lexer/containers/ptr_list.hpp | 4
   branches/CMake/release/boost/spirit/home/support/detail/lexer/containers/ptr_vector.hpp | 23
   branches/CMake/release/boost/spirit/home/support/detail/lexer/debug.hpp | 69
   branches/CMake/release/boost/spirit/home/support/detail/lexer/generate_cpp.hpp | 11
   branches/CMake/release/boost/spirit/home/support/detail/lexer/generator.hpp | 109
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/parser.hpp | 81
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/num_token.hpp | 73
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser.hpp | 57
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser_helper.hpp | 44
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser_state.hpp | 4
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/end_node.hpp | 4
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/iteration_node.hpp | 20
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/leaf_node.hpp | 28
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/node.hpp | 26
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/selection_node.hpp | 6
   branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/sequence_node.hpp | 4
   branches/CMake/release/boost/spirit/home/support/detail/lexer/partition/charset.hpp | 4
   branches/CMake/release/boost/spirit/home/support/detail/lexer/partition/equivset.hpp | 30
   branches/CMake/release/boost/spirit/home/support/detail/lexer/rules.hpp | 24
   branches/CMake/release/boost/spirit/home/support/detail/lexer/runtime_error.hpp | 2
   branches/CMake/release/boost/spirit/home/support/detail/lexer/serialise.hpp | 6
   branches/CMake/release/boost/spirit/home/support/detail/lexer/size_t.hpp | 2
   branches/CMake/release/boost/spirit/home/support/detail/lexer/state_machine.hpp | 343 +
   branches/CMake/release/boost/spirit/home/support/detail/lexer/string_token.hpp | 8
   branches/CMake/release/boost/spirit/home/support/detail/what_function.hpp | 8
   branches/CMake/release/boost/spirit/iterator.hpp | 4
   branches/CMake/release/boost/spirit/iterator/file_iterator.hpp | 4
   branches/CMake/release/boost/spirit/iterator/file_iterator_fwd.hpp | 4
   branches/CMake/release/boost/spirit/iterator/fixed_size_queue.hpp | 4
   branches/CMake/release/boost/spirit/iterator/multi_pass.hpp | 4
   branches/CMake/release/boost/spirit/iterator/multi_pass_fwd.hpp | 4
   branches/CMake/release/boost/spirit/iterator/position_iterator.hpp | 4
   branches/CMake/release/boost/spirit/iterator/position_iterator_fwd.hpp | 4
   branches/CMake/release/boost/spirit/iterator/typeof.hpp | 4
   branches/CMake/release/boost/spirit/meta.hpp | 4
   branches/CMake/release/boost/spirit/meta/as_parser.hpp | 4
   branches/CMake/release/boost/spirit/meta/fundamental.hpp | 4
   branches/CMake/release/boost/spirit/meta/parser_traits.hpp | 4
   branches/CMake/release/boost/spirit/meta/refactoring.hpp | 4
   branches/CMake/release/boost/spirit/meta/traverse.hpp | 4
   branches/CMake/release/boost/spirit/phoenix.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/actor.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/binders.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/casts.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/closures.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/composite.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/functions.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/new.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/operators.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/primitives.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/special_ops.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/statements.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/tuple_helpers.hpp | 4
   branches/CMake/release/boost/spirit/phoenix/tuples.hpp | 4
   branches/CMake/release/boost/spirit/symbols.hpp | 4
   branches/CMake/release/boost/spirit/symbols/symbols.hpp | 4
   branches/CMake/release/boost/spirit/symbols/symbols_fwd.hpp | 4
   branches/CMake/release/boost/spirit/symbols/typeof.hpp | 4
   branches/CMake/release/boost/spirit/tree/ast.hpp | 4
   branches/CMake/release/boost/spirit/tree/ast_fwd.hpp | 4
   branches/CMake/release/boost/spirit/tree/common.hpp | 4
   branches/CMake/release/boost/spirit/tree/common_fwd.hpp | 4
   branches/CMake/release/boost/spirit/tree/parse_tree.hpp | 4
   branches/CMake/release/boost/spirit/tree/parse_tree_fwd.hpp | 4
   branches/CMake/release/boost/spirit/tree/parse_tree_utils.hpp | 4
   branches/CMake/release/boost/spirit/tree/tree_to_xml.hpp | 4
   branches/CMake/release/boost/spirit/tree/typeof.hpp | 4
   branches/CMake/release/boost/spirit/utility.hpp | 4
   branches/CMake/release/boost/spirit/utility/chset.hpp | 4
   branches/CMake/release/boost/spirit/utility/chset_operators.hpp | 4
   branches/CMake/release/boost/spirit/utility/confix.hpp | 4
   branches/CMake/release/boost/spirit/utility/confix_fwd.hpp | 4
   branches/CMake/release/boost/spirit/utility/distinct.hpp | 4
   branches/CMake/release/boost/spirit/utility/distinct_fwd.hpp | 4
   branches/CMake/release/boost/spirit/utility/escape_char.hpp | 4
   branches/CMake/release/boost/spirit/utility/escape_char_fwd.hpp | 4
   branches/CMake/release/boost/spirit/utility/flush_multi_pass.hpp | 4
   branches/CMake/release/boost/spirit/utility/functor_parser.hpp | 4
   branches/CMake/release/boost/spirit/utility/grammar_def.hpp | 4
   branches/CMake/release/boost/spirit/utility/grammar_def_fwd.hpp | 4
   branches/CMake/release/boost/spirit/utility/lists.hpp | 4
   branches/CMake/release/boost/spirit/utility/lists_fwd.hpp | 4
   branches/CMake/release/boost/spirit/utility/loops.hpp | 4
   branches/CMake/release/boost/spirit/utility/regex.hpp | 4
   branches/CMake/release/boost/spirit/utility/rule_parser.hpp | 4
   branches/CMake/release/boost/spirit/utility/scoped_lock.hpp | 4
   branches/CMake/release/boost/spirit/utility/typeof.hpp | 4
   branches/CMake/release/boost/spirit/version.hpp | 4
   branches/CMake/release/boost/statechart/detail/counted_base.hpp | 2
   branches/CMake/release/boost/statechart/detail/rtti_policy.hpp | 11
   branches/CMake/release/boost/statechart/detail/state_base.hpp | 11
   branches/CMake/release/boost/statechart/event.hpp | 2
   branches/CMake/release/boost/statechart/event_processor.hpp | 5
   branches/CMake/release/boost/statechart/fifo_worker.hpp | 16
   branches/CMake/release/boost/statechart/in_state_reaction.hpp | 52
   branches/CMake/release/boost/statechart/processor_container.hpp | 75
   branches/CMake/release/boost/statechart/simple_state.hpp | 5
   branches/CMake/release/boost/statechart/state_machine.hpp | 33
   branches/CMake/release/boost/statechart/transition.hpp | 102
   branches/CMake/release/boost/static_assert.hpp | 18
   branches/CMake/release/boost/system/error_code.hpp | 38
   branches/CMake/release/boost/system/system_error.hpp | 14
   branches/CMake/release/boost/thread/detail/platform.hpp | 6
   branches/CMake/release/boost/thread/detail/thread.hpp | 4
   branches/CMake/release/boost/thread/locks.hpp | 135
   branches/CMake/release/boost/thread/pthread/condition_variable.hpp | 11
   branches/CMake/release/boost/thread/pthread/condition_variable_fwd.hpp | 10
   branches/CMake/release/boost/thread/pthread/mutex.hpp | 5
   branches/CMake/release/boost/thread/tss.hpp | 1
   branches/CMake/release/boost/thread/win32/basic_timed_mutex.hpp | 6
   branches/CMake/release/boost/thread/win32/mutex.hpp | 2
   branches/CMake/release/boost/thread/win32/shared_mutex.hpp | 209
   branches/CMake/release/boost/thread/win32/thread_primitives.hpp | 23
   branches/CMake/release/boost/tr1/detail/config.hpp | 4
   branches/CMake/release/boost/type_traits/alignment_of.hpp | 19
   branches/CMake/release/boost/type_traits/conversion_traits.hpp | 2
   branches/CMake/release/boost/type_traits/intrinsics.hpp | 52
   branches/CMake/release/boost/type_traits/is_abstract.hpp | 11
   branches/CMake/release/boost/type_traits/is_base_and_derived.hpp | 12
   branches/CMake/release/boost/type_traits/is_class.hpp | 11
   branches/CMake/release/boost/type_traits/is_convertible.hpp | 14
   branches/CMake/release/boost/type_traits/is_enum.hpp | 11
   branches/CMake/release/boost/type_traits/is_polymorphic.hpp | 12
   branches/CMake/release/boost/type_traits/make_signed.hpp | 4
   branches/CMake/release/boost/type_traits/make_unsigned.hpp | 4
   branches/CMake/release/boost/type_traits/type_with_alignment.hpp | 105
   branches/CMake/release/boost/units/absolute.hpp | 1
   branches/CMake/release/boost/units/conversion.hpp | 4
   branches/CMake/release/boost/units/derived_dimension.hpp | 74
   branches/CMake/release/boost/units/detail/absolute_impl.hpp | 16
   branches/CMake/release/boost/units/detail/conversion_impl.hpp | 182
   branches/CMake/release/boost/units/detail/dimension_impl.hpp | 209
   branches/CMake/release/boost/units/detail/heterogeneous_conversion.hpp | 104
   branches/CMake/release/boost/units/detail/linear_algebra.hpp | 1069 ++--
   branches/CMake/release/boost/units/detail/push_front_if.hpp | 7
   branches/CMake/release/boost/units/detail/push_front_or_add.hpp | 13
   branches/CMake/release/boost/units/detail/sort.hpp | 127
   branches/CMake/release/boost/units/detail/unscale.hpp | 8
   branches/CMake/release/boost/units/dimension.hpp | 14
   branches/CMake/release/boost/units/heterogeneous_system.hpp | 28
   branches/CMake/release/boost/units/io.hpp | 32
   branches/CMake/release/boost/units/lambda.hpp | 2
   branches/CMake/release/boost/units/make_system.hpp | 20
   branches/CMake/release/boost/units/quantity.hpp | 90
   branches/CMake/release/boost/units/unit.hpp | 36
   branches/CMake/release/boost/wave/cpplexer/cpp_lex_token.hpp | 3
   branches/CMake/release/boost/wave/grammars/cpp_expression_grammar.hpp | 14
   branches/CMake/release/boost/weak_ptr.hpp | 48
   branches/CMake/release/libs/any/test.hpp | 11
   branches/CMake/release/libs/asio/doc/Jamfile.v2 | 8
   branches/CMake/release/libs/asio/doc/asio.qbk | 21
   branches/CMake/release/libs/asio/doc/examples.qbk | 27
   branches/CMake/release/libs/asio/doc/reference.qbk | 9
   branches/CMake/release/libs/asio/doc/reference.xsl | 9
   branches/CMake/release/libs/asio/doc/using.qbk | 7
   branches/CMake/release/libs/assign/doc/index.html | 32
   branches/CMake/release/libs/config/doc/guidelines.qbk | 48
   branches/CMake/release/libs/config/doc/html/HTML.manifest | 10
   branches/CMake/release/libs/config/doc/html/boost_config/acknowledgements.html | 4
   branches/CMake/release/libs/config/doc/html/boost_config/boost_macro_reference.html | 285 +
   branches/CMake/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html | 128
   branches/CMake/release/libs/config/doc/html/boost_config/rationale.html | 4
   branches/CMake/release/libs/config/doc/html/index.html | 25
   branches/CMake/release/libs/config/doc/macro_reference.qbk | 88
   branches/CMake/release/libs/config/test/Jamfile.v2 | 385 -
   branches/CMake/release/libs/config/test/boost_has_pthreads.ipp | 37
   branches/CMake/release/libs/config/test/boost_has_tr1_function.ipp | 2
   branches/CMake/release/libs/config/test/boost_has_tr1_result_of.ipp | 2
   branches/CMake/release/libs/config/test/boost_no_bcb_partial_spec.ipp | 2
   branches/CMake/release/libs/config/test/boost_no_mem_tem_pnts.ipp | 2
   branches/CMake/release/libs/config/test/boost_no_sfinae.ipp | 2
   branches/CMake/release/libs/config/test/config_info.cpp | 16
   branches/CMake/release/libs/config/test/config_test.cpp | 32
   branches/CMake/release/libs/config/test/has_tr1_array_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_array_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_bind_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_bind_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_complex_over_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_complex_over_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_complex_trig_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_complex_trig_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_function_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_function_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_hash_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_hash_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_mem_fn_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_mem_fn_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_random_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_random_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_ref_wrap_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_ref_wrap_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_regex_fail.cpp | 16
   branches/CMake/release/libs/config/test/has_tr1_regex_pass.cpp | 18
   branches/CMake/release/libs/config/test/has_tr1_result_of_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_result_of_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_shared_ptr_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_shared_ptr_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_tuple_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_tuple_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_type_traits_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_type_traits_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_unordered_map_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_unordered_map_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_unordered_set_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_unordered_set_pass.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_utility_fail.cpp | 8
   branches/CMake/release/libs/config/test/has_tr1_utility_pass.cpp | 8
   branches/CMake/release/libs/config/tools/generate.cpp | 55
   branches/CMake/release/libs/dynamic_bitset/dynamic_bitset.html | 30
   branches/CMake/release/libs/exception/doc/BOOST_ERROR_INFO.html | 9
   branches/CMake/release/libs/exception/doc/boost-exception.html | 128
   branches/CMake/release/libs/exception/doc/boost_exception_diagnostic_information_hpp.html | 8
   branches/CMake/release/libs/exception/doc/copy_exception.html | 8
   branches/CMake/release/libs/exception/doc/current_exception.html | 10
   branches/CMake/release/libs/exception/doc/diagnostic_information.html | 10
   branches/CMake/release/libs/exception/doc/enable_current_exception.html | 15
   branches/CMake/release/libs/exception/doc/enable_error_info.html | 15
   branches/CMake/release/libs/exception/doc/error_info.html | 15
   branches/CMake/release/libs/exception/doc/exception.html | 35
   branches/CMake/release/libs/exception/doc/exception_cloning_hpp.html | 7
   branches/CMake/release/libs/exception/doc/exception_constructors.html | 7
   branches/CMake/release/libs/exception/doc/exception_destructor.html | 7
   branches/CMake/release/libs/exception/doc/exception_diagnostic_information.html | 19
   branches/CMake/release/libs/exception/doc/exception_enable_error_info_hpp.html | 7
   branches/CMake/release/libs/exception/doc/exception_enable_exception_cloning_hpp.html | 7
   branches/CMake/release/libs/exception/doc/exception_error_info_group_hpp.html | 7
   branches/CMake/release/libs/exception/doc/exception_error_info_hpp.html | 8
   branches/CMake/release/libs/exception/doc/exception_error_info_value_hpp.html | 11
   branches/CMake/release/libs/exception/doc/exception_exception_hpp.html | 7
   branches/CMake/release/libs/exception/doc/exception_hpp.html | 17
   branches/CMake/release/libs/exception/doc/exception_ptr.html | 9
   branches/CMake/release/libs/exception/doc/get_error_info.html | 15
   branches/CMake/release/libs/exception/doc/name_idx.html | 14
   branches/CMake/release/libs/exception/doc/operator_shl_exception.html | 13
   branches/CMake/release/libs/exception/doc/operator_shl_tuple.html | 7
   branches/CMake/release/libs/exception/doc/reno.css | 2
   branches/CMake/release/libs/exception/doc/rethrow_exception.html | 7
   branches/CMake/release/libs/exception/doc/source/boost-exception.reno | 8663 ++++++++++++++++++---------------------
   branches/CMake/release/libs/exception/doc/throw_exception.html | 11
   branches/CMake/release/libs/exception/doc/throw_exception_hpp.html | 7
   branches/CMake/release/libs/exception/doc/tutorial_diagnostic_information.html | 11
   branches/CMake/release/libs/exception/doc/tutorial_enable_error_info.html | 11
   branches/CMake/release/libs/exception/doc/tutorial_exception_ptr.html | 20
   branches/CMake/release/libs/exception/doc/tutorial_transporting_data.html | 22
   branches/CMake/release/libs/exception/doc/unknown_exception.html | 7
   branches/CMake/release/libs/exception/example/Jamfile | 2
   branches/CMake/release/libs/exception/test/diagnostic_information_test.cpp | 4
   branches/CMake/release/libs/filesystem/doc/index.htm | 4
   branches/CMake/release/libs/filesystem/doc/reference.html | 237
   branches/CMake/release/libs/filesystem/example/mbcopy.cpp | 4
   branches/CMake/release/libs/filesystem/example/mbpath.cpp | 4
   branches/CMake/release/libs/filesystem/example/simple_ls.cpp | 10
   branches/CMake/release/libs/filesystem/src/operations.cpp | 131
   branches/CMake/release/libs/filesystem/src/path.cpp | 2
   branches/CMake/release/libs/filesystem/src/utf8_codecvt_facet.hpp | 2
   branches/CMake/release/libs/filesystem/test/convenience_test.cpp | 7
   branches/CMake/release/libs/filesystem/test/equivalent.cpp | 2
   branches/CMake/release/libs/filesystem/test/fstream_test.cpp | 9
   branches/CMake/release/libs/filesystem/test/lpath.hpp | 1
   branches/CMake/release/libs/filesystem/test/operations_test.cpp | 182
   branches/CMake/release/libs/filesystem/test/path_test.cpp | 280
   branches/CMake/release/libs/filesystem/test/wide_test.cpp | 10
   branches/CMake/release/libs/function/doc/history.xml | 16
   branches/CMake/release/libs/function/doc/misc.xml | 6
   branches/CMake/release/libs/function/doc/reference.xml | 118
   branches/CMake/release/libs/function/test/allocator_test.cpp | 61
   branches/CMake/release/libs/gil/doc/index.html | 2
   branches/CMake/release/libs/gil/example/interleaved_ref.hpp | 4
   branches/CMake/release/libs/gil/test/Makefile | 34
   branches/CMake/release/libs/gil/test/image.cpp | 1
   branches/CMake/release/libs/gil/test/main.cpp | 26
   branches/CMake/release/libs/gil/test/pixel.cpp | 2
   branches/CMake/release/libs/intrusive/test/itestvalue.hpp | 9
   branches/CMake/release/libs/math/doc/complex/complex-tr1.qbk | 2
   branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex.html | 8
   branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/acos.html | 22
   branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/acosh.html | 22
   branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/asin.html | 22
   branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/asinh.html | 22
   branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/atan.html | 22
   branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/atanh.html | 22
   branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/history.html | 8
   branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/implementation.html | 8
   branches/CMake/release/libs/math/doc/complex/html/index.html | 10
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm.html | 8
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/compile_time.html | 18
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/credits.html | 8
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/demo.html | 8
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/gcd_function_object.html | 11
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/header.html | 8
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/history.html | 8
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/introduction.html | 8
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/lcm_function_object.html | 11
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/rationale.html | 8
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/run_time.html | 11
   branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/synopsis.html | 11
   branches/CMake/release/libs/math/doc/gcd/html/index.html | 10
   branches/CMake/release/libs/math/doc/gcd/math-gcd.qbk | 2
   branches/CMake/release/libs/math/doc/html/index.html | 22
   branches/CMake/release/libs/math/doc/math.qbk | 12
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions.html | 8
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/acknowledgements.html | 8
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/header_file.html | 8
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/history.html | 8
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/non_mem.html | 77
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/oct_create.html | 11
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_member_functions.html | 83
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_member_typedefs.html | 20
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_specializations.html | 347
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_value_operations.html | 50
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonions_transcendentals.html | 64
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/overview.html | 8
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/synopsis.html | 161
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/template_class_octonion.html | 93
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/test_program.html | 8
   branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/to_do.html | 8
   branches/CMake/release/libs/math/doc/octonion/html/index.html | 10
   branches/CMake/release/libs/math/doc/octonion/math-octonion.qbk | 2
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions.html | 8
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/acknowledgements.html | 8
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/create.html | 11
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/exp.html | 8
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/header_file.html | 8
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/history.html | 8
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/mem_fun.html | 88
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/mem_typedef.html | 20
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/non_mem.html | 81
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/overview.html | 8
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/quat.html | 67
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/spec.html | 197
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/synopsis.html | 141
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/test_program.html | 8
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/to_do.html | 8
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/trans.html | 64
   branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/value_op.html | 47
   branches/CMake/release/libs/math/doc/quaternion/html/index.html | 10
   branches/CMake/release/libs/math/doc/quaternion/math-quaternion.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/Jamfile.v2 | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/bessel_ik.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/bessel_jy.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/bessel_spherical.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/beta.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/common_overviews.qbk | 5
   branches/CMake/release/libs/math/doc/sf_and_dist/concepts.qbk | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/credits.qbk | 19
   branches/CMake/release/libs/math/doc/sf_and_dist/digamma.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/dist_reference.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/dist_tutorial.qbk | 24
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/bernoulli.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/beta.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/binomial.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/cauchy.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/chi_squared.qbk | 7
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/exponential.qbk | 9
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/extreme_value.qbk | 9
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/fisher.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/gamma.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/lognormal.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/negative_binomial.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/normal.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/pareto.qbk | 11
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/poisson.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/rayleigh.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/students_t.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/triangular.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/uniform.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/distributions/weibull.qbk | 9
   branches/CMake/release/libs/math/doc/sf_and_dist/ellint_carlson.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/ellint_legendre.qbk | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/erf.qbk | 33
   branches/CMake/release/libs/math/doc/sf_and_dist/erf_inv.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/error_handling.qbk | 77
   branches/CMake/release/libs/math/doc/sf_and_dist/fpclassify.qbk | 31
   branches/CMake/release/libs/math/doc/sf_and_dist/gamma_ratios.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/hermite.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/html/index.html | 74
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/implementation.html | 53
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/lanczos.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/refs.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/relative_error.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/remez.html | 24
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref.html | 16
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dist_algorithms.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists.html | 16
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/bernoulli_dist.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/beta_dist.html | 30
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/binomial_dist.html | 38
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/cauchy_dist.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/chi_squared_dist.html | 28
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/exp_dist.html | 30
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/extreme_dist.html | 26
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/f_dist.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/gamma_dist.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/lognormal_dist.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/negative_binomial_dist.html | 42
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/normal_dist.html | 24
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/pareto.html | 32
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/poisson_dist.html | 18
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/rayleigh.html | 24
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/students_t_dist.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/triangular_dist.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/uniform_dist.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/weibull.html | 28
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/nmp.html | 62
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/future.html | 16
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut.html | 12
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/dist_params.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/overview.html | 57
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/variates.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg.html | 12
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binom_conf.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binom_size_eg.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binomial_coinflip_example.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binomial_quiz_example.html | 12
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_intervals.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_size.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_test.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/dist_construct_eg.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/error_eg.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/f_eg.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_location_eg.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_mean_and_sd_eg.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_scale_eg.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/nag_library.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/neg_binom_conf.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/neg_binom_size_eg.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/negative_binomial_example1.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/negative_binomial_example2.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/normal_example.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/normal_example/normal_misc.html | 28
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/paired_st.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_intervals.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_size.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_test.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/two_sample_students_t.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview.html | 9
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/contact.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/directories.html | 12
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/error_handling.html | 276 +
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/history1.html | 70
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/intro.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/namespaces.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/navigation.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/perf_over.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/pol_overview.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/result_type.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/threads.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/comp_compilers.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/comparisons.html | 38
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/getting_best.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/interp.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/perf_over.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/perf_test_app.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/tuning.html | 12
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_overview.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/assert_undefined.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/discrete_quant_ref.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/error_handling_policies.html | 121
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/internal_promotion.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/iteration_pol.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/namespace_pol.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/pol_ref_ref.html | 39
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/policy_defaults.html | 57
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/precision_pol.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/ad_hoc_dist_policies.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/ad_hoc_sf_policies.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/changing_policy_defaults.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/namespace_policies.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/policy_tut_defaults.html | 16
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/policy_usage.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/understand_dis_quant.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/user_def_err_pol.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/what_is_a_policy.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special.html | 54
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/bessel.html | 26
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/bessel_over.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/mbessel.html | 26
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/sph_bessel.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_1.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_2.html | 24
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_3.html | 28
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_carlson.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_intro.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_binomial.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_double_factorial.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_factorial.html | 18
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_falling_factorial.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_rising_factorial.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/fpclass.html | 58
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/acosh.html | 11
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/asinh.html | 11
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/atanh.html | 17
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/inv_hyper_over.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers.html | 16
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/cbrt.html | 18
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/expm1.html | 18
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/hypot.html | 16
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/log1p.html | 18
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/powm1.html | 18
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/sqrt1pm1.html | 18
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/beta_derivative.html | 16
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/beta_function.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/ibeta_function.html | 28
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/ibeta_inv_function.html | 18
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf/error_function.html | 67
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf/error_inv.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/digamma.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/gamma_derivatives.html | 16
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/gamma_ratios.html | 23
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/igamma.html | 32
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/igamma_inv.html | 18
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/lgamma.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/tgamma.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/hermite.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/laguerre.html | 24
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/legendre.html | 28
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/sph_harm.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinc_overview.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinc_pi.html | 11
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinhc_pi.html | 11
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/compilers.html | 19
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/credits.html | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/history1.html | 64
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/issues.html | 1195 +++++
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/cf.html | 16
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/minima.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/rational.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/roots.html | 20
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/roots2.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/series_evaluation.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/error_test.html | 14
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/minimax.html | 35
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/polynomials.html | 12
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/test_data.html | 24
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals_overview.html | 8
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt.html | 12
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/archetypes.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/concepts.html | 88
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/dist_concept.html | 10
   branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/use_ntl.html | 12
   branches/CMake/release/libs/math/doc/sf_and_dist/ibeta.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/igamma.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/implementation.qbk | 13
   branches/CMake/release/libs/math/doc/sf_and_dist/inv_hyper.qbk | 6
   branches/CMake/release/libs/math/doc/sf_and_dist/issues.qbk | 52
   branches/CMake/release/libs/math/doc/sf_and_dist/laguerre.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/legendre.qbk | 4
   branches/CMake/release/libs/math/doc/sf_and_dist/lgamma.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/math.qbk | 75
   branches/CMake/release/libs/math/doc/sf_and_dist/minimax.qbk | 12
   branches/CMake/release/libs/math/doc/sf_and_dist/policy.qbk | 86
   branches/CMake/release/libs/math/doc/sf_and_dist/policy_tutorial.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/powers.qbk | 22
   branches/CMake/release/libs/math/doc/sf_and_dist/references.qbk | 6
   branches/CMake/release/libs/math/doc/sf_and_dist/roadmap.qbk | 18
   branches/CMake/release/libs/math/doc/sf_and_dist/sinc.qbk | 11
   branches/CMake/release/libs/math/doc/sf_and_dist/test_data.qbk | 2
   branches/CMake/release/libs/math/doc/sf_and_dist/tgamma.qbk | 2
   branches/CMake/release/libs/math/example/policy_eg_8.cpp | 2
   branches/CMake/release/libs/math/minimax/f.cpp | 109
   branches/CMake/release/libs/math/minimax/main.cpp | 158
   branches/CMake/release/libs/math/performance/distributions.cpp | 196
   branches/CMake/release/libs/math/performance/main.cpp | 7
   branches/CMake/release/libs/math/performance/performance_measure.hpp | 13
   branches/CMake/release/libs/math/test/Jamfile.v2 | 125
   branches/CMake/release/libs/math/test/common_factor_test.cpp | 6
   branches/CMake/release/libs/math/test/compile_test/distribution_concept_check.cpp | 1
   branches/CMake/release/libs/math/test/compile_test/instantiate.hpp | 128
   branches/CMake/release/libs/math/test/compile_test/test_compile_result.hpp | 4
   branches/CMake/release/libs/math/test/functor.hpp | 12
   branches/CMake/release/libs/math/test/handle_test_result.hpp | 5
   branches/CMake/release/libs/math/test/test_bernoulli.cpp | 6
   branches/CMake/release/libs/math/test/test_bessel_i.cpp | 3
   branches/CMake/release/libs/math/test/test_bessel_j.cpp | 2
   branches/CMake/release/libs/math/test/test_bessel_k.cpp | 2
   branches/CMake/release/libs/math/test/test_bessel_y.cpp | 2
   branches/CMake/release/libs/math/test/test_beta_dist.cpp | 6
   branches/CMake/release/libs/math/test/test_beta_hooks.hpp | 41
   branches/CMake/release/libs/math/test/test_binomial.cpp | 6
   branches/CMake/release/libs/math/test/test_binomial_coeff.cpp | 5
   branches/CMake/release/libs/math/test/test_classify.cpp | 2
   branches/CMake/release/libs/math/test/test_error_handling.cpp | 61
   branches/CMake/release/libs/math/test/test_find_location.cpp | 2
   branches/CMake/release/libs/math/test/test_find_scale.cpp | 2
   branches/CMake/release/libs/math/test/test_gamma_dist.cpp | 2
   branches/CMake/release/libs/math/test/test_igamma_inv.cpp | 4
   branches/CMake/release/libs/math/test/test_igamma_inva.cpp | 1
   branches/CMake/release/libs/math/test/test_negative_binomial.cpp | 6
   branches/CMake/release/libs/math/test/test_poisson.cpp | 2
   branches/CMake/release/libs/math/test/test_policy.cpp | 42
   branches/CMake/release/libs/math/test/test_policy_2.cpp | 25
   branches/CMake/release/libs/math/test/test_rational_instances/test_rational_double4.cpp | 2
   branches/CMake/release/libs/math/test/test_rational_instances/test_rational_float4.cpp | 2
   branches/CMake/release/libs/math/test/test_rational_instances/test_rational_ldouble4.cpp | 2
   branches/CMake/release/libs/math/test/test_rational_instances/test_rational_real_concept4.cpp | 2
   branches/CMake/release/libs/math/test/test_rationals.cpp | 2
   branches/CMake/release/libs/math/test/test_students_t.cpp | 2
   branches/CMake/release/libs/math/vc71_fix/instantiate_all.cpp | 4
   branches/CMake/release/libs/multi_index/doc/compiler_specifics.html | 14
   branches/CMake/release/libs/parameter/doc/html/index.html | 419 -
   branches/CMake/release/libs/parameter/doc/html/python.html | 146
   branches/CMake/release/libs/parameter/doc/html/reference.html | 412
   branches/CMake/release/libs/parameter/doc/index.rst | 5
   branches/CMake/release/libs/parameter/doc/reference.rst | 8
   branches/CMake/release/libs/program_options/doc/overview.xml | 16
   branches/CMake/release/libs/program_options/example/first.cpp | 13
   branches/CMake/release/libs/ptr_container/doc/examples.html | 5
   branches/CMake/release/libs/ptr_container/doc/examples.rst | 3
   branches/CMake/release/libs/ptr_container/doc/guidelines.html | 2
   branches/CMake/release/libs/ptr_container/doc/guidelines.rst | 2
   branches/CMake/release/libs/ptr_container/doc/headers.html | 7
   branches/CMake/release/libs/ptr_container/doc/headers.rst | 2
   branches/CMake/release/libs/ptr_container/doc/ptr_container.html | 37
   branches/CMake/release/libs/ptr_container/doc/ptr_container.rst | 47
   branches/CMake/release/libs/ptr_container/doc/ptr_sequence_adapter.html | 4
   branches/CMake/release/libs/ptr_container/doc/ptr_sequence_adapter.rst | 5
   branches/CMake/release/libs/ptr_container/doc/reference.html | 23
   branches/CMake/release/libs/ptr_container/doc/reference.rst | 25
   branches/CMake/release/libs/python/doc/projects.html | 27
   branches/CMake/release/libs/python/doc/v2/Dereferenceable.html | 2
   branches/CMake/release/libs/python/doc/v2/Extractor.html | 2
   branches/CMake/release/libs/python/doc/v2/HolderGenerator.html | 2
   branches/CMake/release/libs/python/doc/v2/object.html | 143
   branches/CMake/release/libs/python/src/errors.cpp | 4
   branches/CMake/release/libs/python/test/args.cpp | 2
   branches/CMake/release/libs/python/test/module_tail.cpp | 1
   branches/CMake/release/libs/python/test/numpy.cpp | 29
   branches/CMake/release/libs/python/test/object.cpp | 55
   branches/CMake/release/libs/python/test/object.py | 39
   branches/CMake/release/libs/python/test/pickle3.cpp | 2
   branches/CMake/release/libs/python/test/slice.cpp | 2
   branches/CMake/release/libs/python/test/vector_indexing_suite.py | 13
   branches/CMake/release/libs/range/index.html | 2
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/acknowledgements.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/examples.html | 16
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/faq.html | 8
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/futher.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/headers.html | 6
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/history.html | 24
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/locale.html | 40
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/performance.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/redist.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/standards.html | 24
   branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/thread_safety.html | 22
   branches/CMake/release/libs/regex/doc/html/boost_regex/captures.html | 30
   branches/CMake/release/libs/regex/doc/html/boost_regex/configuration.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/algorithm.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/compiler.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/linkage.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/locale.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/tuning.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/format.html | 10
   branches/CMake/release/libs/regex/doc/html/boost_regex/format/boost_format_syntax.html | 20
   branches/CMake/release/libs/regex/doc/html/boost_regex/format/perl_format.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/format/sed_format.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/install.html | 36
   branches/CMake/release/libs/regex/doc/html/boost_regex/introduction_and_overview.html | 48
   branches/CMake/release/libs/regex/doc/html/boost_regex/partial_matches.html | 22
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/bad_expression.html | 27
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/basic_regex.html | 374
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/charT_concept.html | 6
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/iterator_concepts.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/traits_concept.html | 18
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/old_regex.html | 58
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_format.html | 25
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_grep.html | 32
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_split.html | 24
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/error_type.html | 15
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/match_flag_type.html | 27
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/match_results.html | 166
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/intro.html | 9
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_algo.html | 36
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_iter.html | 40
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_types.html | 31
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_algo.html | 64
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_intro.html | 7
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_iter.html | 32
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_create.html | 7
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_types.html | 7
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/posix.html | 29
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_iterator.html | 99
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_match.html | 47
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_replace.html | 61
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_search.html | 41
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_token_iterator.html | 120
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_traits.html | 13
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/sub_match.html | 368 -
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_basic.html | 18
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_extended.html | 16
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_literal.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_overview.html | 19
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_perl.html | 10
   branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_synopsis.html | 11
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax.html | 10
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/basic_extended.html | 185
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/basic_syntax.html | 124
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes/optional_char_class_names.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes/std_char_clases.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/digraphs.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/named_unicode.html | 6
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/posix_symbolic_names.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/leftmost_longest_rule.html | 4
   branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/perl_syntax.html | 242
   branches/CMake/release/libs/regex/doc/html/boost_regex/unicode.html | 16
   branches/CMake/release/libs/regex/doc/html/index.html | 6
   branches/CMake/release/libs/regex/doc/syntax_perl.qbk | 2
   branches/CMake/release/libs/regex/example/snippets/icu_example.cpp | 2
   branches/CMake/release/libs/regex/src/posix_api.cpp | 16
   branches/CMake/release/libs/regex/src/usinstances.cpp | 5
   branches/CMake/release/libs/regex/src/wc_regex_traits.cpp | 35
   branches/CMake/release/libs/regex/src/wide_posix_api.cpp | 16
   branches/CMake/release/libs/regex/test/regress/test_escapes.cpp | 3
   branches/CMake/release/libs/serialization/build/Jamfile.v2 | 4
   branches/CMake/release/libs/serialization/test/Jamfile.v2 | 4
   branches/CMake/release/libs/serialization/util/test.jam | 2
   branches/CMake/release/libs/smart_ptr/intrusive_ptr.html | 6
   branches/CMake/release/libs/smart_ptr/shared_ptr.htm | 11
   branches/CMake/release/libs/smart_ptr/test/Jamfile.v2 | 15
   branches/CMake/release/libs/smart_ptr/test/pointer_cast_test.cpp | 2
   branches/CMake/release/libs/smart_ptr/test/shared_from_this_test.cpp | 3
   branches/CMake/release/libs/smart_ptr/test/shared_ptr_mt_test.cpp | 139
   branches/CMake/release/libs/smart_ptr/test/shared_ptr_test.cpp | 12
   branches/CMake/release/libs/smart_ptr/test/smart_ptr_test.cpp | 4
   branches/CMake/release/libs/smart_ptr/test/sp_unary_addr_test.cpp | 5
   branches/CMake/release/libs/smart_ptr/test/weak_ptr_mt_test.cpp | 132
   branches/CMake/release/libs/spirit/doc/Jamfile | 9
   branches/CMake/release/libs/spirit/doc/introduction.qbk | 155
   branches/CMake/release/libs/spirit/doc/lex.qbk | 12
   branches/CMake/release/libs/spirit/doc/lex/introduction.qbk | 21
   branches/CMake/release/libs/spirit/doc/lex/lexer_attributes.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/lexer_primitives.qbk | 3
   branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart1.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart2.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart3.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/lexer_semantic_actions.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/lexer_states.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/lexer_static_model.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/lexer_tutorials.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/parsing_using_a_lexer.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/token_definition.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/tokenizing.qbk | 2
   branches/CMake/release/libs/spirit/doc/lex/tokens_values.qbk | 2
   branches/CMake/release/libs/spirit/doc/qi_and_karma.qbk | 15
   branches/CMake/release/libs/spirit/doc/qi_and_karma/error_handling.qbk | 113
   branches/CMake/release/libs/spirit/doc/spirit2.qbk | 63
   branches/CMake/release/libs/spirit/doc/what_s_new.qbk | 42
   branches/CMake/release/libs/spirit/example/karma/actions.cpp | 2
   branches/CMake/release/libs/spirit/example/karma/calc2_ast_dump.cpp | 16
   branches/CMake/release/libs/spirit/example/karma/calc2_ast_rpn.cpp | 14
   branches/CMake/release/libs/spirit/example/karma/calc2_ast_vm.cpp | 16
   branches/CMake/release/libs/spirit/example/karma/mini_xml_karma.cpp | 14
   branches/CMake/release/libs/spirit/example/lex/example1.cpp | 6
   branches/CMake/release/libs/spirit/example/lex/example2.cpp | 14
   branches/CMake/release/libs/spirit/example/lex/example3.cpp | 16
   branches/CMake/release/libs/spirit/example/lex/example4.cpp | 6
   branches/CMake/release/libs/spirit/example/lex/example5.cpp | 8
   branches/CMake/release/libs/spirit/example/lex/example6.cpp | 6
   branches/CMake/release/libs/spirit/example/lex/print_numbers.cpp | 10
   branches/CMake/release/libs/spirit/example/lex/static_lexer/word_count_static.cpp | 13
   branches/CMake/release/libs/spirit/example/lex/strip_comments.cpp | 12
   branches/CMake/release/libs/spirit/example/lex/word_count.cpp | 13
   branches/CMake/release/libs/spirit/example/qi/Jamfile | 15
   branches/CMake/release/libs/spirit/example/qi/actions.cpp | 52
   branches/CMake/release/libs/spirit/example/qi/calc1.cpp | 7
   branches/CMake/release/libs/spirit/example/qi/calc2.cpp | 7
   branches/CMake/release/libs/spirit/example/qi/calc2_ast.cpp | 7
   branches/CMake/release/libs/spirit/example/qi/calc3.cpp | 7
   branches/CMake/release/libs/spirit/example/qi/calc3_lexer.cpp | 10
   branches/CMake/release/libs/spirit/example/qi/calc4.cpp | 6
   branches/CMake/release/libs/spirit/example/qi/calc5.cpp | 9
   branches/CMake/release/libs/spirit/example/qi/calc6/calc6.cpp | 7
   branches/CMake/release/libs/spirit/example/qi/calc6/calc6.hpp | 7
   branches/CMake/release/libs/spirit/example/qi/calc6/calc6b.hpp | 3
   branches/CMake/release/libs/spirit/example/qi/calc6/calc6c.hpp | 6
   branches/CMake/release/libs/spirit/example/qi/calc7/calc7.cpp | 8
   branches/CMake/release/libs/spirit/example/qi/calc7/calc7.hpp | 7
   branches/CMake/release/libs/spirit/example/qi/calc7/calc7b.hpp | 3
   branches/CMake/release/libs/spirit/example/qi/calc7/calc7c.hpp | 6
   branches/CMake/release/libs/spirit/example/qi/complex_number.cpp | 2
   branches/CMake/release/libs/spirit/example/qi/employee.cpp | 13
   branches/CMake/release/libs/spirit/example/qi/mini_c/mini_c.cpp | 12
   branches/CMake/release/libs/spirit/example/qi/mini_c/mini_c.hpp | 22
   branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cb.hpp | 3
   branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cc.hpp | 6
   branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cd.hpp | 14
   branches/CMake/release/libs/spirit/example/qi/mini_xml1.cpp | 16
   branches/CMake/release/libs/spirit/example/qi/mini_xml2.cpp | 15
   branches/CMake/release/libs/spirit/example/qi/num_list2.cpp | 5
   branches/CMake/release/libs/spirit/example/qi/num_list3.cpp | 6
   branches/CMake/release/libs/spirit/example/qi/roman.cpp | 46
   branches/CMake/release/libs/spirit/example/qi/sum.cpp | 8
   branches/CMake/release/libs/spirit/test/karma/actions.cpp | 2
   branches/CMake/release/libs/spirit/test/karma/char.cpp | 4
   branches/CMake/release/libs/spirit/test/karma/grammar.cpp | 7
   branches/CMake/release/libs/spirit/test/karma/grammar_fail.cpp | 2
   branches/CMake/release/libs/spirit/test/karma/real_numerics.cpp | 11
   branches/CMake/release/libs/spirit/test/karma/test.hpp | 8
   branches/CMake/release/libs/spirit/test/qi/grammar.cpp | 59
   branches/CMake/release/libs/spirit/test/qi/grammar_fail.cpp | 7
   branches/CMake/release/libs/spirit/test/qi/range_run.cpp | 4
   branches/CMake/release/libs/statechart/Statechart.sln | 635 +-
   branches/CMake/release/libs/statechart/doc/acknowledgments.html | 22
   branches/CMake/release/libs/statechart/doc/configuration.html | 27
   branches/CMake/release/libs/statechart/doc/faq.html | 49
   branches/CMake/release/libs/statechart/doc/future_and_history.html | 35
   branches/CMake/release/libs/statechart/doc/index.html | 2
   branches/CMake/release/libs/statechart/doc/reference.html | 599 +-
   branches/CMake/release/libs/statechart/example/BitMachine/BitMachine.vcproj | 512 +
   branches/CMake/release/libs/statechart/example/Camera/Camera.vcproj | 574 +-
   branches/CMake/release/libs/statechart/example/Handcrafted/Handcrafted.vcproj | 345
   branches/CMake/release/libs/statechart/example/Jamfile.v2 | 6
   branches/CMake/release/libs/statechart/example/Keyboard/Keyboard.vcproj | 485 +
   branches/CMake/release/libs/statechart/example/Performance/Performance.cpp | 29
   branches/CMake/release/libs/statechart/example/Performance/Performance.vcproj | 486 +
   branches/CMake/release/libs/statechart/example/PingPong/PingPong.cpp | 161
   branches/CMake/release/libs/statechart/example/PingPong/PingPong.vcproj | 262
   branches/CMake/release/libs/statechart/example/StopWatch/StopWatch.vcproj | 480 +
   branches/CMake/release/libs/statechart/test/CustomReactionTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/DeferralTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/FifoSchedulerTest.cpp | 11
   branches/CMake/release/libs/statechart/test/FifoSchedulerTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/HistoryTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/InStateReactionTest.cpp | 39
   branches/CMake/release/libs/statechart/test/InStateReactionTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/InconsistentHistoryTest1.vcproj | 336
   branches/CMake/release/libs/statechart/test/InconsistentHistoryTest2.vcproj | 336
   branches/CMake/release/libs/statechart/test/InconsistentHistoryTest3.vcproj | 336
   branches/CMake/release/libs/statechart/test/InconsistentHistoryTest4.vcproj | 336
   branches/CMake/release/libs/statechart/test/InconsistentHistoryTest5.vcproj | 336
   branches/CMake/release/libs/statechart/test/InconsistentHistoryTest6.vcproj | 336
   branches/CMake/release/libs/statechart/test/InconsistentHistoryTest7.vcproj | 336
   branches/CMake/release/libs/statechart/test/InconsistentHistoryTest8.vcproj | 336
   branches/CMake/release/libs/statechart/test/InvalidChartTest1.vcproj | 336
   branches/CMake/release/libs/statechart/test/InvalidChartTest2.vcproj | 336
   branches/CMake/release/libs/statechart/test/InvalidChartTest3.vcproj | 336
   branches/CMake/release/libs/statechart/test/InvalidResultAssignTest.vcproj | 336
   branches/CMake/release/libs/statechart/test/InvalidResultCopyTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/InvalidResultDefCtorTest.vcproj | 336
   branches/CMake/release/libs/statechart/test/InvalidTransitionTest1.vcproj | 336
   branches/CMake/release/libs/statechart/test/InvalidTransitionTest2.vcproj | 336
   branches/CMake/release/libs/statechart/test/Jamfile.v2 | 2
   branches/CMake/release/libs/statechart/test/StateCastTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/StateIterationTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/TerminationTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/TransitionTest.vcproj | 365 +
   branches/CMake/release/libs/statechart/test/TuTest.cpp | 2
   branches/CMake/release/libs/statechart/test/TuTest.hpp | 11
   branches/CMake/release/libs/statechart/test/TuTest.vcproj | 365 +
   branches/CMake/release/libs/statechart/test/TypeInfoTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/UnconsumedResultTest.vcproj | 340
   branches/CMake/release/libs/statechart/test/UnsuppDeepHistoryTest.vcproj | 336
   branches/CMake/release/libs/static_assert/doc/static_assert.qbk | 2
   branches/CMake/release/libs/system/doc/index.html | 16
   branches/CMake/release/libs/system/doc/reference.html | 58
   branches/CMake/release/libs/system/src/error_code.cpp | 31
   branches/CMake/release/libs/system/test/Jamfile.v2 | 17
   branches/CMake/release/libs/system/test/error_code_test.cpp | 9
   branches/CMake/release/libs/system/test/header_only_test.cpp | 9
   branches/CMake/release/libs/system/test/system_error_test.cpp | 68
   branches/CMake/release/libs/tr1/doc/tr1.qbk | 3
   branches/CMake/release/libs/tr1/test/Jamfile.v2 | 13
   branches/CMake/release/libs/type_traits/doc/function_traits.qbk | 12
   branches/CMake/release/libs/type_traits/doc/has_virtual_destructor.qbk | 2
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/background.html | 124
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category.html | 8
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/alignment.html | 19
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/function.html | 17
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/transform.html | 57
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits.html | 16
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/primary.html | 60
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/properties.html | 59
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/relate.html | 17
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/credits.html | 10
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples.html | 8
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/copy.html | 19
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/destruct.html | 17
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/fill.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/iter.html | 23
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/to_double.html | 11
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/intrinsics.html | 128
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/intro.html | 12
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/mpl.html | 14
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference.html | 8
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_const.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_cv.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_pointer.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_reference.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_volatile.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/aligned_storage.html | 11
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/alignment_of.html | 17
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/decay.html | 13
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/extent.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/floating_point_promotion.html | 13
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/function_traits.html | 29
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_no_throw_def_cons.html | 10
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_assign.html | 17
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_constructor.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_copy.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_cp_cons.html | 10
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_assign.html | 23
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_constructor.html | 25
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_copy.html | 25
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_cp_cons.html | 10
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_def_cons.html | 10
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_destructor.html | 23
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_virtual_destructor.html | 23
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/integral_constant.html | 11
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/integral_promotion.html | 13
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_abstract.html | 23
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_arithmetic.html | 25
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_array.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_base_of.html | 23
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_class.html | 27
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_complex.html | 13
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_compound.html | 23
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_const.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_convertible.html | 26
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_empty.html | 23
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_enum.html | 23
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_floating_point.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_function.html | 32
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_fundamental.html | 27
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_integral.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_function_pointer.html | 25
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_object_pointer.html | 25
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_pointer.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_object.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_pod.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_pointer.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_polymorphic.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_reference.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_same.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_scalar.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_signed.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_stateless.html | 24
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_union.html | 25
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_unsigned.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_void.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_volatile.html | 21
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/make_signed.html | 13
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html | 13
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/promote.html | 17
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/rank.html | 19
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html | 15
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/type_with_alignment.html | 11
   branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/user_defined.html | 23
   branches/CMake/release/libs/type_traits/doc/html/index.html | 10
   branches/CMake/release/libs/type_traits/doc/intrinsics.qbk | 12
   branches/CMake/release/libs/type_traits/test/alignment_of_test.cpp | 35
   branches/CMake/release/libs/type_traits/test/check_integral_constant.hpp | 8
   branches/CMake/release/libs/type_traits/test/has_virtual_destructor_test.cpp | 1
   branches/CMake/release/libs/type_traits/test/is_convertible_test.cpp | 6
   branches/CMake/release/libs/type_traits/test/make_signed_test.cpp | 16
   branches/CMake/release/libs/type_traits/test/make_unsigned_test.cpp | 16
   branches/CMake/release/libs/type_traits/test/type_with_alignment_test.cpp | 260
   branches/CMake/release/libs/unordered/doc/rationale.qbk | 37
   branches/CMake/release/libs/unordered/doc/ref.xml | 8
   branches/CMake/release/status/explicit-failures-markup.xml | 21
   branches/CMake/release/tools/boostbook/doc/documenting.xml | 2
   branches/CMake/release/tools/build/v2/build-system.jam | 63
   branches/CMake/release/tools/build/v2/build/alias.jam | 33
   branches/CMake/release/tools/build/v2/build/feature.jam | 52
   branches/CMake/release/tools/build/v2/build/generators.jam | 231
   branches/CMake/release/tools/build/v2/build/modifiers.jam | 78
   branches/CMake/release/tools/build/v2/build/project.jam | 98
   branches/CMake/release/tools/build/v2/build/property-set.jam | 42
   branches/CMake/release/tools/build/v2/build/property.jam | 65
   branches/CMake/release/tools/build/v2/build/scanner.jam | 1
   branches/CMake/release/tools/build/v2/build/targets.jam | 268
   branches/CMake/release/tools/build/v2/build/toolset.jam | 10
   branches/CMake/release/tools/build/v2/build/type.jam | 22
   branches/CMake/release/tools/build/v2/build/version.jam | 123
   branches/CMake/release/tools/build/v2/build/virtual-target.jam | 82
   branches/CMake/release/tools/build/v2/doc/src/advanced.xml | 402
   branches/CMake/release/tools/build/v2/doc/src/extending.xml | 149
   branches/CMake/release/tools/build/v2/doc/src/fragments.xml | 59
   branches/CMake/release/tools/build/v2/doc/src/reference.xml | 721 +-
   branches/CMake/release/tools/build/v2/doc/src/tasks.xml | 429 +
   branches/CMake/release/tools/build/v2/doc/src/tutorial.xml | 590 +-
   branches/CMake/release/tools/build/v2/index.html | 2
   branches/CMake/release/tools/build/v2/kernel/bootstrap.jam | 6
   branches/CMake/release/tools/build/v2/kernel/class.jam | 195
   branches/CMake/release/tools/build/v2/kernel/errors.jam | 12
   branches/CMake/release/tools/build/v2/kernel/modules.jam | 114
   branches/CMake/release/tools/build/v2/roll.sh | 2
   branches/CMake/release/tools/build/v2/test/BoostBuild.py | 166
   branches/CMake/release/tools/build/v2/test/TestCmd.py | 321
   branches/CMake/release/tools/build/v2/test/build_file.py | 178
   branches/CMake/release/tools/build/v2/test/conditionals_multiple.py | 2
   branches/CMake/release/tools/build/v2/test/example_qt4.py | 6
   branches/CMake/release/tools/build/v2/test/rebuilds.py | 2
   branches/CMake/release/tools/build/v2/test/test_all.py | 15
   branches/CMake/release/tools/build/v2/test/test_system.html | 388 +
   branches/CMake/release/tools/build/v2/test/unit_test.py | 14
   branches/CMake/release/tools/build/v2/tools/acc.jam | 3
   branches/CMake/release/tools/build/v2/tools/builtin.jam | 31
   branches/CMake/release/tools/build/v2/tools/common.jam | 218
   branches/CMake/release/tools/build/v2/tools/como-linux.jam | 30
   branches/CMake/release/tools/build/v2/tools/como-win.jam | 65
   branches/CMake/release/tools/build/v2/tools/como.jam | 5
   branches/CMake/release/tools/build/v2/tools/darwin.jam | 275
   branches/CMake/release/tools/build/v2/tools/doxygen.jam | 198
   branches/CMake/release/tools/build/v2/tools/gcc.jam | 38
   branches/CMake/release/tools/build/v2/tools/intel-darwin.jam | 11
   branches/CMake/release/tools/build/v2/tools/intel-win.jam | 3
   branches/CMake/release/tools/build/v2/tools/make.jam | 64
   branches/CMake/release/tools/build/v2/tools/msvc.jam | 402 +
   branches/CMake/release/tools/build/v2/tools/pathscale.jam | 4
   branches/CMake/release/tools/build/v2/tools/pgi.jam | 6
   branches/CMake/release/tools/build/v2/tools/python.jam | 648 +-
   branches/CMake/release/tools/build/v2/tools/qt3.jam | 85
   branches/CMake/release/tools/build/v2/tools/qt4.jam | 651 +-
   branches/CMake/release/tools/build/v2/tools/quickbook.jam | 52
   branches/CMake/release/tools/build/v2/tools/stage.jam | 197
   branches/CMake/release/tools/build/v2/tools/symlink.jam | 6
   branches/CMake/release/tools/build/v2/tools/testing.jam | 24
   branches/CMake/release/tools/build/v2/tools/vacpp.jam | 2
   branches/CMake/release/tools/build/v2/tools/xsltproc.jam | 132
   branches/CMake/release/tools/build/v2/user-config.jam | 108
   branches/CMake/release/tools/build/v2/util/assert.jam | 342 +
   branches/CMake/release/tools/build/v2/util/container.jam | 333
   branches/CMake/release/tools/build/v2/util/doc.jam | 281
   branches/CMake/release/tools/build/v2/util/indirect.jam | 5
   branches/CMake/release/tools/build/v2/util/numbers.jam | 119
   branches/CMake/release/tools/build/v2/util/os.jam | 3
   branches/CMake/release/tools/build/v2/util/path.jam | 247
   branches/CMake/release/tools/build/v2/util/print.jam | 134
   branches/CMake/release/tools/build/v2/util/sequence.jam | 77
   branches/CMake/release/tools/build/v2/util/set.jam | 47
   branches/CMake/release/tools/build/v2/util/string.jam | 86
   branches/CMake/release/tools/build/v2/util/utility.jam | 2
   branches/CMake/release/tools/inspect/build/Jamfile.v2 | 2
   branches/CMake/release/tools/inspect/copyright_check.hpp | 2
   branches/CMake/release/tools/inspect/crlf_check.hpp | 4
   branches/CMake/release/tools/inspect/index.html | 11
   branches/CMake/release/tools/inspect/inspect.cpp | 173
   branches/CMake/release/tools/inspect/inspector.hpp | 2
   branches/CMake/release/tools/inspect/license_check.hpp | 4
   branches/CMake/release/tools/inspect/link_check.cpp | 132
   branches/CMake/release/tools/inspect/link_check.hpp | 10
   branches/CMake/release/tools/inspect/minmax_check.hpp | 2
   branches/CMake/release/tools/inspect/tab_check.hpp | 4
   branches/CMake/release/tools/inspect/time_string.hpp | 2
   branches/CMake/release/tools/inspect/unnamed_namespace_check.hpp | 2
   branches/CMake/release/tools/jam/doc/bjam.qbk | 12
   branches/CMake/release/tools/jam/src/Jambase | 277
   branches/CMake/release/tools/jam/src/boost-jam.spec | 128
   branches/CMake/release/tools/jam/src/build.bat | 5
   branches/CMake/release/tools/jam/src/build.jam | 2
   branches/CMake/release/tools/jam/src/builtins.c | 469 +
   branches/CMake/release/tools/jam/src/compile.c | 16
   branches/CMake/release/tools/jam/src/execnt.c | 61
   branches/CMake/release/tools/jam/src/execunix.c | 20
   branches/CMake/release/tools/jam/src/expand.c | 7
   branches/CMake/release/tools/jam/src/filent.c | 25
   branches/CMake/release/tools/jam/src/filesys.c | 1
   branches/CMake/release/tools/jam/src/filesys.h | 5
   branches/CMake/release/tools/jam/src/hcache.c | 8
   branches/CMake/release/tools/jam/src/jambase.c | 111
   branches/CMake/release/tools/jam/src/lists.c | 114
   branches/CMake/release/tools/jam/src/make.c | 3
   branches/CMake/release/tools/jam/src/make1.c | 5
   branches/CMake/release/tools/jam/src/modules/property-set.c | 33
   branches/CMake/release/tools/jam/src/native.c | 10
   branches/CMake/release/tools/jam/src/patchlevel.h | 6
   branches/CMake/release/tools/jam/src/rules.c | 5
   branches/CMake/release/tools/jam/src/search.c | 15
   branches/CMake/release/tools/jam/src/search.h | 2
   branches/CMake/release/tools/jam/test/action_status.jam | 11
   branches/CMake/release/tools/jam/test/actions_quietly.jam | 4
   branches/CMake/release/tools/jam/test/builtin_shell.jam | 30
   branches/CMake/release/tools/jam/test/option_d2.jam | 2
   branches/CMake/release/tools/jam/test/option_l.jam | 3
   branches/CMake/release/tools/jam/test/option_n.jam | 2
   branches/CMake/release/tools/jam/test/parallel_actions.jam | 2
   branches/CMake/release/tools/jam/test/parallel_multifile_actions.jam | 6
   branches/CMake/release/tools/jam/test/test.jam | 9
   branches/CMake/release/tools/quickbook/detail/actions.cpp | 85
   branches/CMake/release/tools/quickbook/doc/html/index.html | 8
   branches/CMake/release/tools/quickbook/doc/html/quickbook/change_log.html | 45
   branches/CMake/release/tools/quickbook/doc/html/quickbook/editors.html | 18
   branches/CMake/release/tools/quickbook/doc/html/quickbook/editors/kde_support.html | 113
   branches/CMake/release/tools/quickbook/doc/html/quickbook/editors/scite.html | 25
   branches/CMake/release/tools/quickbook/doc/html/quickbook/faq.html | 29
   branches/CMake/release/tools/quickbook/doc/html/quickbook/install.html | 15
   branches/CMake/release/tools/quickbook/doc/html/quickbook/install/linux.html | 39
   branches/CMake/release/tools/quickbook/doc/html/quickbook/install/macosx.html | 47
   branches/CMake/release/tools/quickbook/doc/html/quickbook/install/windows.html | 51
   branches/CMake/release/tools/quickbook/doc/html/quickbook/intro.html | 13
   branches/CMake/release/tools/quickbook/doc/html/quickbook/ref.html | 220
   branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax.html | 9
   branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/block.html | 449 -
   branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/comments.html | 11
   branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/phrase.html | 271
   branches/CMake/release/tools/quickbook/test/code-block-1.gold | 3
   branches/CMake/release/tools/quickbook/test/code-block-2.gold | 3
   branches/CMake/release/tools/quickbook/test/import.gold | 6
   branches/CMake/release/tools/quickbook/test/quickbook-manual.gold | 5076 +++++++++++-----------
   branches/CMake/release/tools/quickbook/test/templates.gold | 3
   branches/CMake/release/tools/quickbook/test/templates.quickbook | 7
   1513 files changed, 41706 insertions(+), 31644 deletions(-)

Modified: branches/CMake/release/boost/any.hpp
==============================================================================
--- branches/CMake/release/boost/any.hpp (original)
+++ branches/CMake/release/boost/any.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -127,6 +127,8 @@
 
             ValueType held;
 
+ private: // intentionally left unimplemented
+ holder & operator=(const holder &);
         };
 
 #ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS

Modified: branches/CMake/release/boost/archive/basic_binary_iprimitive.hpp
==============================================================================
--- branches/CMake/release/boost/archive/basic_binary_iprimitive.hpp (original)
+++ branches/CMake/release/boost/archive/basic_binary_iprimitive.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -120,11 +120,11 @@
     ~basic_binary_iprimitive();
 public:
     // we provide an optimized load for all fundamental types
- //typedef serialization::is_bitwise_serializable<mpl::_1>
- // use_array_optimization;
+ // typedef serialization::is_bitwise_serializable<mpl::_1>
+ // use_array_optimization;
     struct use_array_optimization {
- template <class T>
- struct apply : public serialization::is_bitwise_serializable<T> {};
+ template <class T>
+ struct apply : public serialization::is_bitwise_serializable<T> {};
     };
 
     // the optimized load_array dispatches to load_binary

Modified: branches/CMake/release/boost/archive/basic_binary_oprimitive.hpp
==============================================================================
--- branches/CMake/release/boost/archive/basic_binary_oprimitive.hpp (original)
+++ branches/CMake/release/boost/archive/basic_binary_oprimitive.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -120,13 +120,13 @@
     // workaround without using mpl lambdas
     struct use_array_optimization {
       template <class T>
- struct apply : public serialization::is_bitwise_serializable<T> {};
+ struct apply : public boost::serialization::is_bitwise_serializable<T> {};
     };
     
 
     // the optimized save_array dispatches to save_binary
     template <class ValueType>
- void save_array(serialization::array<ValueType> const& a, unsigned int)
+ void save_array(boost::serialization::array<ValueType> const& a, unsigned int)
     {
       save_binary(a.address(),a.count()*sizeof(ValueType));
     }

Modified: branches/CMake/release/boost/archive/detail/oserializer.hpp
==============================================================================
--- branches/CMake/release/boost/archive/detail/oserializer.hpp (original)
+++ branches/CMake/release/boost/archive/detail/oserializer.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -353,8 +353,8 @@
             T & t
         ){
             BOOST_DEDUCED_TYPENAME
- boost::serialization::type_info_implementation<T>::type
- const & i = boost::serialization::type_info_implementation<T>::type
+ boost::serialization::type_info_implementation<T>::type const
+ & i = boost::serialization::type_info_implementation<T>::type
                     ::get_const_instance();
 
             boost::serialization::extended_type_info const * const this_type = & i;
@@ -383,7 +383,11 @@
             }
             // convert pointer to more derived type. if this is thrown
             // it means that the base/derived relationship hasn't be registered
- vp = serialization::void_downcast(*true_type, *this_type, &t);
+ vp = serialization::void_downcast(
+ *true_type,
+ *this_type,
+ static_cast<const void *>(&t)
+ );
             if(NULL == vp){
                 boost::throw_exception(
                     archive_exception(archive_exception::unregistered_cast)

Modified: branches/CMake/release/boost/archive/impl/xml_wiarchive_impl.ipp
==============================================================================
--- branches/CMake/release/boost/archive/impl/xml_wiarchive_impl.ipp (original)
+++ branches/CMake/release/boost/archive/impl/xml_wiarchive_impl.ipp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -166,7 +166,7 @@
         archive_locale.reset(
             add_facet(
                 std::locale::classic(),
- new detail::utf8_codecvt_facet
+ new boost::archive::detail::utf8_codecvt_facet
             )
         );
         is.imbue(* archive_locale);

Modified: branches/CMake/release/boost/archive/impl/xml_woarchive_impl.ipp
==============================================================================
--- branches/CMake/release/boost/archive/impl/xml_woarchive_impl.ipp (original)
+++ branches/CMake/release/boost/archive/impl/xml_woarchive_impl.ipp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -139,12 +139,13 @@
     // we can hack around this by using a static codecvt that never
     // gets destroyed.
     if(0 == (flags & no_codecvt)){
- detail::utf8_codecvt_facet *pfacet;
+ boost::archive::detail::utf8_codecvt_facet *pfacet;
         #if defined(__SGI_STL_PORT)
- static detail::utf8_codecvt_facet facet(static_cast<size_t>(1));
+ static boost::archive::detail::utf8_codecvt_facet
+ facet(static_cast<size_t>(1));
             pfacet = & facet;
         #else
- pfacet = new detail::utf8_codecvt_facet;
+ pfacet = new boost::archive::detail::utf8_codecvt_facet;
         #endif
         archive_locale.reset(add_facet(std::locale::classic(), pfacet));
         os.imbue(* archive_locale);

Modified: branches/CMake/release/boost/archive/shared_ptr_helper.hpp
==============================================================================
--- branches/CMake/release/boost/archive/shared_ptr_helper.hpp (original)
+++ branches/CMake/release/boost/archive/shared_ptr_helper.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -54,7 +54,7 @@
 // a common class for holding various types of shared pointers
 
 class shared_ptr_helper {
- typedef std::map<void*, shared_ptr<void> > collection_type;
+ typedef std::map<const void *, shared_ptr<void> > collection_type;
     typedef collection_type::const_iterator iterator_type;
     // list of shared_pointers create accessable by raw pointer. This
     // is used to "match up" shared pointers loaded at different
@@ -86,7 +86,7 @@
 
     // return a void pointer to the most derived type
     template<class T>
- void * object_identifier(T * t) const {
+ const void * object_identifier(T * t) const {
         const boost::serialization::extended_type_info * true_type
             = boost::serialization::type_info_implementation<T>::type
                 ::get_const_instance().get_derived_extended_type_info(*t);
@@ -101,7 +101,11 @@
         const boost::serialization::extended_type_info * this_type
             = & boost::serialization::type_info_implementation<T>::type
                     ::get_const_instance();
- void * vp = void_downcast(*true_type, *this_type, t);
+ const void * vp = void_downcast(
+ *true_type,
+ *this_type,
+ static_cast<const void *>(t)
+ );
         return vp;
     }
 public:
@@ -113,7 +117,7 @@
         }
         // get pointer to the most derived object. This is effectively
         // the object identifer
- void * od = object_identifier(r);
+ const void * od = object_identifier(r);
 
         if(NULL == m_pointers)
             m_pointers = new collection_type;

Modified: branches/CMake/release/boost/asio/detail/socket_types.hpp
==============================================================================
--- branches/CMake/release/boost/asio/detail/socket_types.hpp (original)
+++ branches/CMake/release/boost/asio/detail/socket_types.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -188,7 +188,12 @@
 const int message_peek = MSG_PEEK;
 const int message_out_of_band = MSG_OOB;
 const int message_do_not_route = MSG_DONTROUTE;
+# if defined(IOV_MAX)
 const int max_iov_len = IOV_MAX;
+# else
+// POSIX platforms are not required to define IOV_MAX.
+const int max_iov_len = 16;
+# endif
 #endif
 const int custom_socket_option_level = 0xA5100000;
 const int enable_connection_aborted_option = 1;

Modified: branches/CMake/release/boost/asio/ssl/detail/openssl_init.hpp
==============================================================================
--- branches/CMake/release/boost/asio/ssl/detail/openssl_init.hpp (original)
+++ branches/CMake/release/boost/asio/ssl/detail/openssl_init.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -21,6 +21,7 @@
 #include <boost/asio/detail/push_options.hpp>
 #include <vector>
 #include <boost/assert.hpp>
+#include <boost/config.hpp>
 #include <boost/shared_ptr.hpp>
 #include <boost/asio/detail/pop_options.hpp>
 
@@ -87,11 +88,15 @@
   private:
     static unsigned long openssl_id_func()
     {
+#if defined(BOOST_WINDOWS) || defined(__CYGWIN__)
+ return ::GetCurrentThreadId();
+#else // defined(BOOST_WINDOWS) || defined(__CYGWIN__)
       void* id = instance()->thread_id_;
       if (id == 0)
         instance()->thread_id_ = id = &id; // Ugh.
       BOOST_ASSERT(sizeof(unsigned long) >= sizeof(void*));
       return reinterpret_cast<unsigned long>(id);
+#endif // defined(BOOST_WINDOWS) || defined(__CYGWIN__)
     }
 
     static void openssl_locking_func(int mode, int n,
@@ -106,8 +111,10 @@
     // Mutexes to be used in locking callbacks.
     std::vector<boost::shared_ptr<boost::asio::detail::mutex> > mutexes_;
 
+#if !defined(BOOST_WINDOWS) && !defined(__CYGWIN__)
     // The thread identifiers to be used by openssl.
     boost::asio::detail::tss_ptr<void> thread_id_;
+#endif // !defined(BOOST_WINDOWS) && !defined(__CYGWIN__)
   };
 
 public:

Modified: branches/CMake/release/boost/asio/version.hpp
==============================================================================
--- branches/CMake/release/boost/asio/version.hpp (original)
+++ branches/CMake/release/boost/asio/version.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -18,6 +18,6 @@
 // BOOST_ASIO_VERSION % 100 is the sub-minor version
 // BOOST_ASIO_VERSION / 100 % 1000 is the minor version
 // BOOST_ASIO_VERSION / 100000 is the major version
-#define BOOST_ASIO_VERSION 100100 // 1.1.0
+#define BOOST_ASIO_VERSION 100200 // 1.2.0
 
 #endif // BOOST_ASIO_VERSION_HPP

Modified: branches/CMake/release/boost/config/abi_prefix.hpp
==============================================================================
--- branches/CMake/release/boost/config/abi_prefix.hpp (original)
+++ branches/CMake/release/boost/config/abi_prefix.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // abi_prefix header -------------------------------------------------------//
 
-// © Copyright John Maddock 2003
+// (c) Copyright John Maddock 2003
    
 // Use, modification and distribution are subject to the Boost Software License,
 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at

Modified: branches/CMake/release/boost/config/abi_suffix.hpp
==============================================================================
--- branches/CMake/release/boost/config/abi_suffix.hpp (original)
+++ branches/CMake/release/boost/config/abi_suffix.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // abi_sufffix header -------------------------------------------------------//
 
-// © Copyright John Maddock 2003
+// (c) Copyright John Maddock 2003
    
 // Use, modification and distribution are subject to the Boost Software License,
 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
@@ -10,7 +10,7 @@
 // <boost/config/abi_prefix.hpp>.
 
 #ifndef BOOST_CONFIG_ABI_PREFIX_HPP
-# error Header boost/config/abi_prefix.hpp must only be used after boost/config/abi_prefix.hpp
+# error Header boost/config/abi_suffix.hpp must only be used after boost/config/abi_prefix.hpp
 #else
 # undef BOOST_CONFIG_ABI_PREFIX_HPP
 #endif
@@ -24,3 +24,4 @@
 #pragma nopushoptwarn
 #endif
 
+

Modified: branches/CMake/release/boost/config/compiler/intel.hpp
==============================================================================
--- branches/CMake/release/boost/config/compiler/intel.hpp (original)
+++ branches/CMake/release/boost/config/compiler/intel.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -146,6 +146,12 @@
 #if BOOST_INTEL_CXX_VERSION < 500
 # error "Compiler not supported or configured - please reconfigure"
 #endif
+
+// Intel on MacOS requires
+#if defined(__APPLE__) && defined(__INTEL_COMPILER)
+# define BOOST_NO_TWO_PHASE_NAME_LOOKUP
+#endif
+
 //
 // last known and checked version:
 #if (BOOST_INTEL_CXX_VERSION > 1010)

Modified: branches/CMake/release/boost/config/compiler/pgi.hpp
==============================================================================
--- branches/CMake/release/boost/config/compiler/pgi.hpp (original)
+++ branches/CMake/release/boost/config/compiler/pgi.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,6 +7,7 @@
 
 // PGI C++ compiler setup:
 
+#define BOOST_COMPILER_VERSION __PGIC__##__PGIC_MINOR__
 #define BOOST_COMPILER "PGI compiler version " BOOST_STRINGIZE(_COMPILER_VERSION)
 
 //
@@ -15,10 +16,17 @@
 // if no threading API is detected.
 //
 
+#if (__PGIC__ == 7) && (__PGIC_MINOR__ == 1)
+
 #define BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
 #define BOOST_NO_TWO_PHASE_NAME_LOOKUP
 #define BOOST_NO_SWPRINTF
 
+#else
+
+# error "Pgi compiler not configured - please reconfigure"
+
+#endif
 //
 // version check:
 // probably nothing to do here?

Modified: branches/CMake/release/boost/config/compiler/sunpro_cc.hpp
==============================================================================
--- branches/CMake/release/boost/config/compiler/sunpro_cc.hpp (original)
+++ branches/CMake/release/boost/config/compiler/sunpro_cc.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,7 +40,7 @@
        // initialized in-class.
        // >> Assertion: (../links/dbg_cstabs.cc, line 611)
        // while processing ../test.cpp at line 0.
- // (Jens Maurer according to Gottfried Ganßauge 04 Mar 2002)
+ // (Jens Maurer according to Gottfried Ganssauge 04 Mar 2002)
 # define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
 
        // SunPro 5.3 has better support for partial specialization,
@@ -73,6 +73,7 @@
 // Issues that effect all known versions:
 //
 #define BOOST_NO_TWO_PHASE_NAME_LOOKUP
+#define BOOST_NO_ADL_BARRIER
 
 
 #define BOOST_COMPILER "Sun compiler version " BOOST_STRINGIZE(__SUNPRO_CC)

Modified: branches/CMake/release/boost/config/compiler/vacpp.hpp
==============================================================================
--- branches/CMake/release/boost/config/compiler/vacpp.hpp (original)
+++ branches/CMake/release/boost/config/compiler/vacpp.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 // (C) Copyright John Maddock 2001 - 2003.
 // (C) Copyright Toon Knapen 2001 - 2003.
 // (C) Copyright Lie-Quan Lee 2001.
-// (C) Copyright Markus Schöpflin 2002 - 2003.
+// (C) Copyright Markus Schoepflin 2002 - 2003.
 // (C) Copyright Beman Dawes 2002 - 2003.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
@@ -53,7 +53,7 @@
 #endif
 
 // Some versions of the compiler have issues with default arguments on partial specializations
-#define BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS
+#define BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS
 
 
 

Modified: branches/CMake/release/boost/config/compiler/visualc.hpp
==============================================================================
--- branches/CMake/release/boost/config/compiler/visualc.hpp (original)
+++ branches/CMake/release/boost/config/compiler/visualc.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -83,6 +83,11 @@
 # define BOOST_NO_TWO_PHASE_NAME_LOOKUP
 #endif
 
+#if _MSC_VER == 1500 // 1500 == VC++ 9.0
+ // A bug in VC9:
+# define BOOST_NO_ADL_BARRIER
+#endif
+
 #ifndef _NATIVE_WCHAR_T_DEFINED
 # define BOOST_NO_INTRINSIC_WCHAR_T
 #endif
@@ -181,7 +186,7 @@
 #error "Compiler not supported or configured - please reconfigure"
 #endif
 //
-// last known and checked version is 1400 (VC8):
+// last known and checked version is 1500 (VC9):
 #if (_MSC_VER > 1500)
 # if defined(BOOST_ASSERT_CONFIG)
 # error "Unknown compiler version - please run the configure tests and report the results"

Modified: branches/CMake/release/boost/config/platform/hpux.hpp
==============================================================================
--- branches/CMake/release/boost/config/platform/hpux.hpp (original)
+++ branches/CMake/release/boost/config/platform/hpux.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -23,6 +23,8 @@
 
 #if !(defined(__HP_aCC) || !defined(_INCLUDE__STDC_A1_SOURCE))
 # define BOOST_NO_SWPRINTF
+#endif
+#if defined(__HP_aCC) && !defined(_INCLUDE__STDC_A1_SOURCE)
 # define BOOST_NO_CWCTYPE
 #endif
 
@@ -82,3 +84,4 @@
 #ifndef BOOST_HAS_EXPM1
 # define BOOST_HAS_EXPM1
 #endif
+

Modified: branches/CMake/release/boost/config/platform/macos.hpp
==============================================================================
--- branches/CMake/release/boost/config/platform/macos.hpp (original)
+++ branches/CMake/release/boost/config/platform/macos.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -47,6 +47,14 @@
 # define BOOST_NO_STDC_NAMESPACE
 # endif
 
+# if (__GNUC__ == 4)
+
+// Both gcc and intel require these.
+# define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
+# define BOOST_HAS_NANOSLEEP
+
+# endif
+
 #else
 
 // Using the MSL C library.

Modified: branches/CMake/release/boost/config/platform/solaris.hpp
==============================================================================
--- branches/CMake/release/boost/config/platform/solaris.hpp (original)
+++ branches/CMake/release/boost/config/platform/solaris.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,6 +16,13 @@
 #define BOOST_HAS_UNISTD_H
 #include <boost/config/posix_features.hpp>
 
+//
+// pthreads don't actually work with gcc unless _PTHREADS is defined:
+//
+#if defined(__GNUC__) && defined(_POSIX_THREADS) && !defined(_PTHREADS)
+# undef BOOST_HAS_PTHREADS
+#endif
+
 
 
 

Modified: branches/CMake/release/boost/config/stdlib/libstdcpp3.hpp
==============================================================================
--- branches/CMake/release/boost/config/stdlib/libstdcpp3.hpp (original)
+++ branches/CMake/release/boost/config/stdlib/libstdcpp3.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -68,6 +68,11 @@
 # define BOOST_HAS_SLIST
 # define BOOST_HAS_HASH
 # define BOOST_SLIST_HEADER <ext/slist>
-# define BOOST_HASH_SET_HEADER <ext/hash_set>
-# define BOOST_HASH_MAP_HEADER <ext/hash_map>
+# if !defined(__GNUC__) || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3)
+# define BOOST_HASH_SET_HEADER <ext/hash_set>
+# define BOOST_HASH_MAP_HEADER <ext/hash_map>
+# else
+# define BOOST_HASH_SET_HEADER <backward/hash_set>
+# define BOOST_HASH_MAP_HEADER <backward/hash_map>
+# endif
 #endif

Modified: branches/CMake/release/boost/config/stdlib/stlport.hpp
==============================================================================
--- branches/CMake/release/boost/config/stdlib/stlport.hpp (original)
+++ branches/CMake/release/boost/config/stdlib/stlport.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -98,8 +98,10 @@
 //
 // We always have SGI style hash_set, hash_map, and slist:
 //
+#ifndef _STLP_NO_EXTENSIONS
 #define BOOST_HAS_HASH
 #define BOOST_HAS_SLIST
+#endif
 
 //
 // STLport does a good job of importing names into namespace std::,

Modified: branches/CMake/release/boost/config/suffix.hpp
==============================================================================
--- branches/CMake/release/boost/config/suffix.hpp (original)
+++ branches/CMake/release/boost/config/suffix.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -121,6 +121,15 @@
 # endif
 
 //
+// Without partial specialization, partial
+// specialization with default args won't work either:
+//
+# if defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
+ && !defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
+# define BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS
+# endif
+
+//
 // Without member template support, we can't have template constructors
 // in the standard library either:
 //
@@ -232,6 +241,8 @@
 #ifndef BOOST_HAS_THREADS
 # undef BOOST_HAS_PTHREADS
 # undef BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
+# undef BOOST_HAS_PTHREAD_YIELD
+# undef BOOST_HAS_PTHREAD_DELAY_NP
 # undef BOOST_HAS_WINTHREADS
 # undef BOOST_HAS_BETHREADS
 # undef BOOST_HAS_MPTASKS

Modified: branches/CMake/release/boost/detail/interlocked.hpp
==============================================================================
--- branches/CMake/release/boost/detail/interlocked.hpp (original)
+++ branches/CMake/release/boost/detail/interlocked.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -92,7 +92,7 @@
 # define BOOST_INTERLOCKED_EXCHANGE _InterlockedExchange
 # define BOOST_INTERLOCKED_EXCHANGE_ADD _InterlockedExchangeAdd
 
-#elif defined( WIN32 ) || defined( _WIN32 ) || defined( __WIN32__ )
+#elif defined( WIN32 ) || defined( _WIN32 ) || defined( __WIN32__ ) || defined( __CYGWIN__ )
 
 namespace boost
 {

Modified: branches/CMake/release/boost/detail/lwm_win32_cs.hpp
==============================================================================
--- branches/CMake/release/boost/detail/lwm_win32_cs.hpp (original)
+++ branches/CMake/release/boost/detail/lwm_win32_cs.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -29,7 +29,7 @@
 
 #ifndef BOOST_USE_WINDOWS_H
 
-struct CRITICAL_SECTION
+struct critical_section
 {
     struct critical_section_debug * DebugInfo;
     long LockCount;
@@ -43,10 +43,14 @@
 #endif
 };
 
-extern "C" __declspec(dllimport) void __stdcall InitializeCriticalSection(CRITICAL_SECTION *);
-extern "C" __declspec(dllimport) void __stdcall EnterCriticalSection(CRITICAL_SECTION *);
-extern "C" __declspec(dllimport) void __stdcall LeaveCriticalSection(CRITICAL_SECTION *);
-extern "C" __declspec(dllimport) void __stdcall DeleteCriticalSection(CRITICAL_SECTION *);
+extern "C" __declspec(dllimport) void __stdcall InitializeCriticalSection(critical_section *);
+extern "C" __declspec(dllimport) void __stdcall EnterCriticalSection(critical_section *);
+extern "C" __declspec(dllimport) void __stdcall LeaveCriticalSection(critical_section *);
+extern "C" __declspec(dllimport) void __stdcall DeleteCriticalSection(critical_section *);
+
+#else
+
+typedef ::CRITICAL_SECTION critical_section;
 
 #endif // #ifndef BOOST_USE_WINDOWS_H
 
@@ -54,7 +58,7 @@
 {
 private:
 
- CRITICAL_SECTION cs_;
+ critical_section cs_;
 
     lightweight_mutex(lightweight_mutex const &);
     lightweight_mutex & operator=(lightweight_mutex const &);

Modified: branches/CMake/release/boost/detail/shared_count.hpp
==============================================================================
--- branches/CMake/release/boost/detail/shared_count.hpp (original)
+++ branches/CMake/release/boost/detail/shared_count.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -28,8 +28,11 @@
 #include <boost/detail/bad_weak_ptr.hpp>
 #include <boost/detail/sp_counted_base.hpp>
 #include <boost/detail/sp_counted_impl.hpp>
-
-#include <memory> // std::auto_ptr
+// In order to avoid circular dependencies with Boost.TR1
+// we make sure that our include of <memory> doesn't try to
+// pull in the TR1 headers: that's why we use this header
+// rather than including <memory> directly:
+#include <boost/config/no_tr1/memory.hpp> // std::auto_ptr
 #include <functional> // std::less
 #include <new> // std::bad_alloc
 
@@ -46,6 +49,8 @@
 
 #endif
 
+struct sp_nothrow_tag {};
+
 class weak_count;
 
 class shared_count
@@ -99,11 +104,18 @@
 #endif
     }
 
- template<class P, class D> shared_count(P p, D d): pi_(0)
+#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, <= 1200 )
+ template<class Y, class D> shared_count( Y * p, D d ): pi_(0)
+#else
+ template<class P, class D> shared_count( P p, D d ): pi_(0)
+#endif
 #if defined(BOOST_SP_ENABLE_DEBUG_HOOKS)
         , id_(shared_count_id)
 #endif
     {
+#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, <= 1200 )
+ typedef Y* P;
+#endif
 #ifndef BOOST_NO_EXCEPTIONS
 
         try
@@ -216,6 +228,7 @@
     }
 
     explicit shared_count(weak_count const & r); // throws bad_weak_ptr when r.use_count() == 0
+ shared_count( weak_count const & r, sp_nothrow_tag ); // constructs an empty *this when r.use_count() == 0
 
     shared_count & operator= (shared_count const & r) // nothrow
     {
@@ -248,6 +261,11 @@
         return use_count() == 1;
     }
 
+ bool empty() const // nothrow
+ {
+ return pi_ == 0;
+ }
+
     friend inline bool operator==(shared_count const & a, shared_count const & b)
     {
         return a.pi_ == b.pi_;
@@ -313,9 +331,13 @@
     weak_count & operator= (shared_count const & r) // nothrow
     {
         sp_counted_base * tmp = r.pi_;
- if(tmp != 0) tmp->weak_add_ref();
- if(pi_ != 0) pi_->weak_release();
- pi_ = tmp;
+
+ if( tmp != pi_ )
+ {
+ if(tmp != 0) tmp->weak_add_ref();
+ if(pi_ != 0) pi_->weak_release();
+ pi_ = tmp;
+ }
 
         return *this;
     }
@@ -323,9 +345,13 @@
     weak_count & operator= (weak_count const & r) // nothrow
     {
         sp_counted_base * tmp = r.pi_;
- if(tmp != 0) tmp->weak_add_ref();
- if(pi_ != 0) pi_->weak_release();
- pi_ = tmp;
+
+ if( tmp != pi_ )
+ {
+ if(tmp != 0) tmp->weak_add_ref();
+ if(pi_ != 0) pi_->weak_release();
+ pi_ = tmp;
+ }
 
         return *this;
     }
@@ -364,6 +390,17 @@
     }
 }
 
+inline shared_count::shared_count( weak_count const & r, sp_nothrow_tag ): pi_( r.pi_ )
+#if defined(BOOST_SP_ENABLE_DEBUG_HOOKS)
+ , id_(shared_count_id)
+#endif
+{
+ if( pi_ != 0 && !pi_->add_ref_lock() )
+ {
+ pi_ = 0;
+ }
+}
+
 } // namespace detail
 
 } // namespace boost

Modified: branches/CMake/release/boost/detail/sp_counted_base.hpp
==============================================================================
--- branches/CMake/release/boost/detail/sp_counted_base.hpp (original)
+++ branches/CMake/release/boost/detail/sp_counted_base.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,61 +20,46 @@
 #include <boost/config.hpp>
 
 #if defined( BOOST_SP_DISABLE_THREADS )
-
 # include <boost/detail/sp_counted_base_nt.hpp>
 
-#elif defined( BOOST_SP_USE_PTHREADS )
+#elif defined( BOOST_SP_USE_SPINLOCK )
+# include <boost/detail/sp_counted_base_spin.hpp>
 
+#elif defined( BOOST_SP_USE_PTHREADS )
 # include <boost/detail/sp_counted_base_pt.hpp>
 
-#elif defined( __GNUC__ ) && ( defined( __i386__ ) || defined( __x86_64__ ) )
+#elif defined( BOOST_DISABLE_THREADS ) && !defined( BOOST_SP_ENABLE_THREADS ) && !defined( BOOST_DISABLE_WIN32 )
+# include <boost/detail/sp_counted_base_nt.hpp>
 
+#elif defined( __GNUC__ ) && ( defined( __i386__ ) || defined( __x86_64__ ) )
 # include <boost/detail/sp_counted_base_gcc_x86.hpp>
 
-//~ #elif defined( __MWERKS__ ) && ( defined( __i386__ ) || defined( __x86_64__ ) )
-
-//~ # include <boost/detail/sp_counted_base_cw_x86.hpp>
-
 #elif defined( __GNUC__ ) && defined( __ia64__ ) && !defined( __INTEL_COMPILER )
-
 # include <boost/detail/sp_counted_base_gcc_ia64.hpp>
 
 #elif defined(__HP_aCC) && defined(__ia64)
-
 # include <boost/detail/sp_counted_base_acc_ia64.hpp>
 
 #elif defined( __MWERKS__ ) && defined( __POWERPC__ )
-
 # include <boost/detail/sp_counted_base_cw_ppc.hpp>
 
 #elif defined( __GNUC__ ) && ( defined( __powerpc__ ) || defined( __ppc__ ) || defined( __ppc ) )
-
 # include <boost/detail/sp_counted_base_gcc_ppc.hpp>
 
-#elif defined(__GNUC__) && ( __GNUC__ * 100 + __GNUC_MINOR__ >= 401 ) && !defined(__arm__) && !defined(__hppa)
-
+#elif defined(__GNUC__) && ( __GNUC__ * 100 + __GNUC_MINOR__ >= 401 ) && !defined( __arm__ ) && !defined( __hppa )
 # include <boost/detail/sp_counted_base_sync.hpp>
 
 #elif defined(__GNUC__) && ( defined( __sparcv8 ) || defined( __sparcv9 ) )
-
 # include <boost/detail/sp_counted_base_gcc_sparc.hpp>
 
 #elif defined( WIN32 ) || defined( _WIN32 ) || defined( __WIN32__ )
-
 # include <boost/detail/sp_counted_base_w32.hpp>
 
 #elif !defined( BOOST_HAS_THREADS )
-
 # include <boost/detail/sp_counted_base_nt.hpp>
 
-#elif defined( BOOST_HAS_PTHREADS )
-
-# include <boost/detail/sp_counted_base_pt.hpp>
-
 #else
-
-// Use #define BOOST_DISABLE_THREADS to avoid the error
-# error Unrecognized threading platform
+# include <boost/detail/sp_counted_base_spin.hpp>
 
 #endif
 

Modified: branches/CMake/release/boost/exception/detail/object_hex_dump.hpp
==============================================================================
--- branches/CMake/release/boost/exception/detail/object_hex_dump.hpp (original)
+++ branches/CMake/release/boost/exception/detail/object_hex_dump.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,6 +19,7 @@
     exception_detail
         {
         template <class T>
+ inline
         std::string
         object_hex_dump( T const & x, size_t max_size=16 )
             {

Modified: branches/CMake/release/boost/exception/enable_current_exception.hpp
==============================================================================
--- branches/CMake/release/boost/exception/enable_current_exception.hpp (original)
+++ branches/CMake/release/boost/exception/enable_current_exception.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -121,6 +121,7 @@
             };
 
         template <class T>
+ inline
         clone_base *
         make_clone( T const & x )
             {
@@ -144,6 +145,7 @@
         }
 
     template <class T>
+ inline
     exception_detail::clone_impl<T>
     enable_current_exception( T const & x )
         {

Modified: branches/CMake/release/boost/exception/enable_error_info.hpp
==============================================================================
--- branches/CMake/release/boost/exception/enable_error_info.hpp (original)
+++ branches/CMake/release/boost/exception/enable_error_info.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -88,6 +88,7 @@
         }
 
     template <class T>
+ inline
 #if !BOOST_WORKAROUND(__BORLANDC__,BOOST_TESTED_AT(0x582))
     typename
 #endif

Modified: branches/CMake/release/boost/exception/info.hpp
==============================================================================
--- branches/CMake/release/boost/exception/info.hpp (original)
+++ branches/CMake/release/boost/exception/info.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -86,6 +86,7 @@
         };
 
     template <class E,class Tag,class T>
+ inline
     E const &
     operator<<( E const & x, error_info<Tag,T> const & v )
         {
@@ -95,6 +96,7 @@
         }
 
     template <class ErrorInfo,class E>
+ inline
     shared_ptr<typename ErrorInfo::value_type const>
     get_error_info( E const & some_exception )
         {

Modified: branches/CMake/release/boost/exception/info_tuple.hpp
==============================================================================
--- branches/CMake/release/boost/exception/info_tuple.hpp (original)
+++ branches/CMake/release/boost/exception/info_tuple.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,6 +16,7 @@
         class E,
         class Tag1,class T1,
         class Tag2,class T2 >
+ inline
     E const &
     operator<<(
         E const & x,
@@ -31,6 +32,7 @@
         class Tag1,class T1,
         class Tag2,class T2,
         class Tag3,class T3 >
+ inline
     E const &
     operator<<(
         E const & x,
@@ -48,6 +50,7 @@
         class Tag2,class T2,
         class Tag3,class T3,
         class Tag4,class T4 >
+ inline
     E const &
     operator<<(
         E const & x,

Modified: branches/CMake/release/boost/exception/to_string.hpp
==============================================================================
--- branches/CMake/release/boost/exception/to_string.hpp (original)
+++ branches/CMake/release/boost/exception/to_string.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -39,6 +39,7 @@
         }
 
     template <class T>
+ inline
     typename enable_if<is_output_streamable<T>,std::string>::type
     to_string( T const & x )
         {
@@ -55,6 +56,7 @@
         };
 
     template <class T,class U>
+ inline
     std::string
     to_string( std::pair<T,U> const & x )
         {

Modified: branches/CMake/release/boost/exception/to_string_stub.hpp
==============================================================================
--- branches/CMake/release/boost/exception/to_string_stub.hpp (original)
+++ branches/CMake/release/boost/exception/to_string_stub.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -63,6 +63,7 @@
         to_string_dispatch
             {
             template <class T,class Stub>
+ inline
             std::string
             dispatch( T const & x, Stub s )
                 {
@@ -71,6 +72,7 @@
             }
 
         template <class T>
+ inline
         std::string
         string_stub_dump( T const & x )
             {
@@ -79,6 +81,7 @@
         }
 
     template <class T>
+ inline
     std::string
     to_string_stub( T const & x )
         {
@@ -86,6 +89,7 @@
         }
 
     template <class T,class Stub>
+ inline
     std::string
     to_string_stub( T const & x, Stub s )
         {

Modified: branches/CMake/release/boost/exception_ptr.hpp
==============================================================================
--- branches/CMake/release/boost/exception_ptr.hpp (original)
+++ branches/CMake/release/boost/exception_ptr.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -32,9 +32,9 @@
             {
             }
 
- ~unknown_exception() throw()
- {
- }
+ ~unknown_exception() throw()
+ {
+ }
         };
 
     typedef intrusive_ptr<exception_detail::clone_base const> exception_ptr;
@@ -62,12 +62,13 @@
                 {
                 }
 
- ~current_exception_std_exception_wrapper() throw()
- {
- }
+ ~current_exception_std_exception_wrapper() throw()
+ {
+ }
             };
 
         template <class T>
+ inline
         exception_ptr
         current_exception_std_exception( T const & e1 )
             {
@@ -170,6 +171,7 @@
         }
 
     template <class T>
+ inline
     exception_ptr
     copy_exception( T const & e )
         {

Modified: branches/CMake/release/boost/filesystem/convenience.hpp
==============================================================================
--- branches/CMake/release/boost/filesystem/convenience.hpp (original)
+++ branches/CMake/release/boost/filesystem/convenience.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -50,20 +50,22 @@
          }
 
          // First create branch, by calling ourself recursively
- create_directories(ph.branch_path());
+ create_directories(ph.parent_path());
          // Now that parent's path exists, create the directory
          create_directory(ph);
          return true;
      }
 
+# ifndef BOOST_FILESYSTEM_NO_DEPRECATED
+
     BOOST_FS_FUNC_STRING extension(const Path& ph)
     {
       typedef BOOST_FS_TYPENAME Path::string_type string_type;
- string_type leaf = ph.leaf();
+ string_type filename = ph.filename();
 
- BOOST_FS_TYPENAME string_type::size_type n = leaf.rfind('.');
+ BOOST_FS_TYPENAME string_type::size_type n = filename.rfind('.');
       if (n != string_type::npos)
- return leaf.substr(n);
+ return filename.substr(n);
       else
         return string_type();
     }
@@ -71,14 +73,17 @@
     BOOST_FS_FUNC_STRING basename(const Path& ph)
     {
       typedef BOOST_FS_TYPENAME Path::string_type string_type;
- string_type leaf = ph.leaf();
- BOOST_FS_TYPENAME string_type::size_type n = leaf.rfind('.');
- return leaf.substr(0, n);
+ string_type filename = ph.filename();
+ BOOST_FS_TYPENAME string_type::size_type n = filename.rfind('.');
+ return filename.substr(0, n);
     }
 
+
     BOOST_FS_FUNC(Path) change_extension( const Path & ph,
       const BOOST_FS_TYPENAME Path::string_type & new_extension )
- { return ph.branch_path() / (basename(ph) + new_extension); }
+ { return ph.parent_path() / (basename(ph) + new_extension); }
+
+# endif
 
 # ifndef BOOST_FILESYSTEM_NARROW_ONLY
 

Modified: branches/CMake/release/boost/filesystem/operations.hpp
==============================================================================
--- branches/CMake/release/boost/filesystem/operations.hpp (original)
+++ branches/CMake/release/boost/filesystem/operations.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -102,10 +102,14 @@
 
     inline bool status_known( file_status f ) { return f.type() != status_unknown; }
     inline bool exists( file_status f ) { return f.type() != status_unknown && f.type() != file_not_found; }
- inline bool is_regular( file_status f ) { return f.type() == regular_file; }
+ inline bool is_regular_file(file_status f){ return f.type() == regular_file; }
     inline bool is_directory( file_status f ) { return f.type() == directory_file; }
     inline bool is_symlink( file_status f ) { return f.type() == symlink_file; }
- inline bool is_other( file_status f ) { return exists(f) && !is_regular(f) && !is_directory(f) && !is_symlink(f); }
+ inline bool is_other( file_status f ) { return exists(f) && !is_regular_file(f) && !is_directory(f) && !is_symlink(f); }
+
+# ifndef BOOST_FILESYSTEM_NO_DEPRECATED
+ inline bool is_regular( file_status f ) { return f.type() == regular_file; }
+# endif
 
     struct space_info
     {
@@ -117,6 +121,10 @@
 
     namespace detail
     {
+ // singular object used only as a tag; thus initialization and
+ // thread-safety are not issues
+ BOOST_FILESYSTEM_DECL extern system::error_code throws;
+
       typedef std::pair< system::error_code, bool >
         query_pair;
 
@@ -275,7 +283,7 @@
 # ifndef BOOST_FILESYSTEM_NO_DEPRECATED
     inline bool symbolic_link_exists( const path & ph )
       { return is_symlink( symlink_status(ph) ); }
-#endif
+# endif
 
     BOOST_FS_FUNC(bool) exists( const Path & ph )
     {
@@ -297,6 +305,17 @@
       return is_directory( result );
     }
 
+ BOOST_FS_FUNC(bool) is_regular_file( const Path & ph )
+ {
+ system::error_code ec;
+ file_status result( detail::status_api( ph.external_file_string(), ec ) );
+ if ( ec )
+ boost::throw_exception( basic_filesystem_error<Path>(
+ "boost::filesystem::is_regular_file", ph, ec ) );
+ return is_regular_file( result );
+ }
+
+# ifndef BOOST_FILESYSTEM_NO_DEPRECATED
     BOOST_FS_FUNC(bool) is_regular( const Path & ph )
     {
       system::error_code ec;
@@ -306,6 +325,7 @@
           "boost::filesystem::is_regular", ph, ec ) );
       return is_regular( result );
     }
+# endif
 
     BOOST_FS_FUNC(bool) is_other( const Path & ph )
     {
@@ -454,21 +474,13 @@
       return ec;
     }
 
- BOOST_FS_FUNC(bool) remove( const Path & ph )
+ BOOST_FS_FUNC(void) remove( const Path & ph, system::error_code & ec = detail::throws )
     {
- if ( exists( ph )
- || is_symlink( ph ) ) // handle dangling symbolic links
- // note that the POSIX behavior for symbolic links is what we want;
- // the link rather than what it points to is deleted. Windows behavior
- // doesn't matter; is_symlink() is always false on Windows.
- {
- system::error_code ec( detail::remove_api( ph.external_file_string() ) );
- if ( ec )
- boost::throw_exception( basic_filesystem_error<Path>(
- "boost::filesystem::remove", ph, ec ) );
- return true;
- }
- return false;
+ system::error_code error( detail::remove_api(ph.external_file_string()) );
+ if ( error && &ec == &detail::throws )
+ boost::throw_exception( basic_filesystem_error<Path>(
+ "boost::filesystem::remove", ph, error ) );
+ ec = error;
     }
 
     BOOST_FS_FUNC(unsigned long) remove_all( const Path & ph )
@@ -618,10 +630,17 @@
     inline bool is_directory( const wpath & ph )
       { return is_directory<wpath>( ph ); }
  
+ inline bool is_regular_file( const path & ph )
+ { return is_regular_file<path>( ph ); }
+ inline bool is_regular_file( const wpath & ph )
+ { return is_regular_file<wpath>( ph ); }
+
+# ifndef BOOST_FILESYSTEM_NO_DEPRECATED
     inline bool is_regular( const path & ph )
       { return is_regular<path>( ph ); }
     inline bool is_regular( const wpath & ph )
       { return is_regular<wpath>( ph ); }
+# endif
 
     inline bool is_other( const path & ph )
       { return is_other<path>( ph ); }
@@ -693,10 +712,8 @@
       const wpath & from_ph, system::error_code & ec )
       { return create_symlink<wpath>( to_ph, from_ph, ec ); }
 
- inline bool remove( const path & ph )
- { return remove<path>( ph ); }
- inline bool remove( const wpath & ph )
- { return remove<wpath>( ph ); }
+ inline void remove( const path & ph ) { remove<path>( ph ); }
+ inline void remove( const wpath & ph ) { remove<wpath>( ph ); }
 
     inline unsigned long remove_all( const path & ph )
       { return remove_all<path>( ph ); }
@@ -965,7 +982,7 @@
         {
           boost::throw_exception( basic_filesystem_error<Path>(
             "boost::filesystem::basic_directory_iterator increment",
- m_imp->m_directory_entry.path().branch_path(), ec ) );
+ m_imp->m_directory_entry.path().parent_path(), ec ) );
         }
         if ( m_imp->m_handle == 0 ) { m_imp.reset(); return; } // eof, make end
         if ( !(name[0] == dot<Path>::value // !(dot or dot-dot)
@@ -973,7 +990,7 @@
             || (name[1] == dot<Path>::value
               && name.size() == 2))) )
         {
- m_imp->m_directory_entry.replace_leaf(
+ m_imp->m_directory_entry.replace_filename(
             Path::traits_type::to_internal( name ), fs, symlink_fs );
           return;
         }
@@ -1001,10 +1018,10 @@
         file_status st, file_status symlink_st )
         { m_path = p; m_status = st; m_symlink_status = symlink_st; }
 
- void replace_leaf( const string_type & s,
+ void replace_filename( const string_type & s,
         file_status st, file_status symlink_st )
      {
- m_path.remove_leaf();
+ m_path.remove_filename();
        m_path /= s;
        m_status = st;
        m_symlink_status = symlink_st;
@@ -1021,9 +1038,9 @@
 
 # ifndef BOOST_FILESYSTEM_NO_DEPRECATED
       // deprecated functions preserve common use cases in legacy code
- typename Path::string_type leaf() const
+ typename Path::string_type filename() const
       {
- return path().leaf();
+ return path().filename();
       }
       typename Path::string_type string() const
       {

Modified: branches/CMake/release/boost/filesystem/path.hpp
==============================================================================
--- branches/CMake/release/boost/filesystem/path.hpp (original)
+++ branches/CMake/release/boost/filesystem/path.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,12 +1,17 @@
 // boost/filesystem/path.hpp -----------------------------------------------//
 
 // Copyright Beman Dawes 2002-2005
+// Copyright Vladimir Prus 2002
 
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 // See library home page at http://www.boost.org/libs/filesystem
 
+// basic_path's stem(), extension(), and replace_extension() are based on
+// basename(), extension(), and change_extension() from the original
+// filesystem/convenience.hpp header by Vladimir Prus.
+
 //----------------------------------------------------------------------------//
 
 #ifndef BOOST_FILESYSTEM_PATH_HPP
@@ -197,7 +202,12 @@
 # endif
       }
 
- basic_path & remove_leaf();
+ basic_path & remove_filename();
+ basic_path & replace_extension( const string_type & new_extension = "" );
+
+# ifndef BOOST_FILESYSTEM_NO_DEPRECATED
+ basic_path & remove_leaf() { return remove_filename(); }
+# endif
 
       // observers
       const string_type & string() const { return m_path; }
@@ -211,8 +221,15 @@
       string_type root_name() const;
       string_type root_directory() const;
       basic_path relative_path() const;
- string_type leaf() const;
- basic_path branch_path() const;
+ basic_path parent_path() const;
+ string_type filename() const;
+ string_type stem() const;
+ string_type extension() const;
+
+# ifndef BOOST_FILESYSTEM_NO_DEPRECATED
+ string_type leaf() const { return filename(); }
+ basic_path branch_path() const { return parent_path(); }
+# endif
 
       bool empty() const { return m_path.empty(); } // name consistent with std containers
       bool is_complete() const;
@@ -220,8 +237,8 @@
       bool has_root_name() const;
       bool has_root_directory() const;
       bool has_relative_path() const { return !relative_path().empty(); }
- bool has_leaf() const { return !m_path.empty(); }
- bool has_branch_path() const { return !branch_path().empty(); }
+ bool has_filename() const { return !m_path.empty(); }
+ bool has_parent_path() const { return !parent_path().empty(); }
 
       // iterators
       class iterator : public boost::iterator_facade<
@@ -624,14 +641,14 @@
 
       typedef Path path_type;
 
- basic_filesystem_error( const std::string & what,
+ basic_filesystem_error( const std::string & what_arg,
         system::error_code ec );
 
- basic_filesystem_error( const std::string & what,
- const path_type & path1, system::error_code ec );
+ basic_filesystem_error( const std::string & what_arg,
+ const path_type & path1_arg, system::error_code ec );
 
- basic_filesystem_error( const std::string & what, const path_type & path1,
- const path_type & path2, system::error_code ec );
+ basic_filesystem_error( const std::string & what_arg, const path_type & path1_arg,
+ const path_type & path2_arg, system::error_code ec );
 
       ~basic_filesystem_error() throw() {}
 
@@ -698,13 +715,13 @@
           ;
       }
 
- // leaf_pos helper ----------------------------------------------------//
+ // filename_pos helper ----------------------------------------------------//
 
       template<class String, class Traits>
- typename String::size_type leaf_pos(
+ typename String::size_type filename_pos(
         const String & str, // precondition: portable generic path grammar
         typename String::size_type end_pos ) // end_pos is past-the-end position
- // return 0 if str itself is leaf (or empty)
+ // return 0 if str itself is filename (or empty)
       {
         typedef typename
           boost::BOOST_FILESYSTEM_NAMESPACE::basic_path<String, Traits> path_type;
@@ -728,9 +745,9 @@
           pos = str.find_last_of( colon<path_type>::value, end_pos-2 );
 # endif
 
- return ( pos == String::npos // path itself must be a leaf (or empty)
+ return ( pos == String::npos // path itself must be a filename (or empty)
           || (pos == 1 && str[0] == slash<path_type>::value) ) // or net
- ? 0 // so leaf is entire string
+ ? 0 // so filename is entire string
             : pos + 1; // or starts after delimiter
       }
 
@@ -876,10 +893,10 @@
     // decomposition functions ----------------------------------------------//
 
     template<class String, class Traits>
- String basic_path<String, Traits>::leaf() const
+ String basic_path<String, Traits>::filename() const
     {
       typename String::size_type end_pos(
- detail::leaf_pos<String, Traits>( m_path, m_path.size() ) );
+ detail::filename_pos<String, Traits>( m_path, m_path.size() ) );
       return (m_path.size()
                 && end_pos
                 && m_path[end_pos] == slash<path_type>::value
@@ -889,12 +906,31 @@
     }
 
     template<class String, class Traits>
- basic_path<String, Traits> basic_path<String, Traits>::branch_path() const
+ String basic_path<String, Traits>::stem() const
+ {
+ string_type name = filename();
+ typename string_type::size_type n = name.rfind('.');
+ return name.substr(0, n);
+ }
+
+ template<class String, class Traits>
+ String basic_path<String, Traits>::extension() const
+ {
+ string_type name = filename();
+ typename string_type::size_type n = name.rfind('.');
+ if (n != string_type::npos)
+ return name.substr(n);
+ else
+ return string_type();
+ }
+
+ template<class String, class Traits>
+ basic_path<String, Traits> basic_path<String, Traits>::parent_path() const
     {
       typename String::size_type end_pos(
- detail::leaf_pos<String, Traits>( m_path, m_path.size() ) );
+ detail::filename_pos<String, Traits>( m_path, m_path.size() ) );
 
- bool leaf_was_separator( m_path.size()
+ bool filename_was_separator( m_path.size()
         && m_path[end_pos] == slash<path_type>::value );
 
       // skip separators unless root directory
@@ -907,7 +943,7 @@
         ;
         --end_pos ) {}
 
- return (end_pos == 1 && root_dir_pos == 0 && leaf_was_separator)
+ return (end_pos == 1 && root_dir_pos == 0 && filename_was_separator)
        ? path_type()
        : path_type( m_path.substr( 0, end_pos ) );
     }
@@ -1137,7 +1173,7 @@
           && (*itr)[0] == dot<path_type>::value
           && (*itr)[1] == dot<path_type>::value ) // dot dot
         {
- string_type lf( temp.leaf() );
+ string_type lf( temp.filename() );
           if ( lf.size() > 0
             && (lf.size() != 1
               || (lf[0] != dot<path_type>::value
@@ -1152,7 +1188,7 @@
                )
             )
           {
- temp.remove_leaf();
+ temp.remove_filename();
             // if not root directory, must also remove "/" if any
             if ( temp.m_path.size() > 0
               && temp.m_path[temp.m_path.size()-1]
@@ -1183,16 +1219,34 @@
 
 # endif
 
- // remove_leaf ----------------------------------------------------------//
+ // modifiers ------------------------------------------------------------//
 
     template<class String, class Traits>
- basic_path<String, Traits> & basic_path<String, Traits>::remove_leaf()
+ basic_path<String, Traits> & basic_path<String, Traits>::remove_filename()
     {
       m_path.erase(
- detail::leaf_pos<String, Traits>( m_path, m_path.size() ) );
+ detail::filename_pos<String, Traits>( m_path, m_path.size() ) );
+ return *this;
+ }
+
+ template<class String, class Traits>
+ basic_path<String, Traits> &
+ basic_path<String, Traits>::replace_extension( const string_type & new_ext )
+ {
+ // erase existing extension if any
+ string_type old_ext = extension();
+ if ( !old_ext.empty() )
+ m_path.erase( m_path.size() - old_ext.size() );
+
+ if ( !new_ext.empty() && new_ext[0] != dot<path_type>::value )
+ m_path += dot<path_type>::value;
+
+ m_path += new_ext;
+
       return *this;
     }
 
+
     // path conversion functions --------------------------------------------//
 
     template<class String, class Traits>
@@ -1375,7 +1429,7 @@
           ;
           --end_pos ) {}
 
- itr.m_pos = detail::leaf_pos<string_type, traits_type>
+ itr.m_pos = detail::filename_pos<string_type, traits_type>
             ( itr.m_path_ptr->m_path, end_pos );
         itr.m_name = itr.m_path_ptr->m_path.substr( itr.m_pos, end_pos - itr.m_pos );
       }
@@ -1385,8 +1439,8 @@
 
     template<class Path>
     basic_filesystem_error<Path>::basic_filesystem_error(
- const std::string & what, system::error_code ec )
- : system::system_error(ec, what)
+ const std::string & what_arg, system::error_code ec )
+ : system::system_error(ec, what_arg)
     {
       try
       {
@@ -1397,29 +1451,29 @@
 
     template<class Path>
     basic_filesystem_error<Path>::basic_filesystem_error(
- const std::string & what, const path_type & path1,
+ const std::string & what_arg, const path_type & path1_arg,
       system::error_code ec )
- : system::system_error(ec, what)
+ : system::system_error(ec, what_arg)
     {
       try
       {
         m_imp_ptr.reset( new m_imp );
- m_imp_ptr->m_path1 = path1;
+ m_imp_ptr->m_path1 = path1_arg;
       }
       catch (...) { m_imp_ptr.reset(); }
     }
 
     template<class Path>
     basic_filesystem_error<Path>::basic_filesystem_error(
- const std::string & what, const path_type & path1,
- const path_type & path2, system::error_code ec )
- : system::system_error(ec, what)
+ const std::string & what_arg, const path_type & path1_arg,
+ const path_type & path2_arg, system::error_code ec )
+ : system::system_error(ec, what_arg)
     {
       try
       {
         m_imp_ptr.reset( new m_imp );
- m_imp_ptr->m_path1 = path1;
- m_imp_ptr->m_path2 = path2;
+ m_imp_ptr->m_path1 = path1_arg;
+ m_imp_ptr->m_path2 = path2_arg;
       }
       catch (...) { m_imp_ptr.reset(); }
     }

Modified: branches/CMake/release/boost/function/detail/prologue.hpp
==============================================================================
--- branches/CMake/release/boost/function/detail/prologue.hpp (original)
+++ branches/CMake/release/boost/function/detail/prologue.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,7 +11,7 @@
 #define BOOST_FUNCTION_PROLOGUE_HPP
 # include <cassert>
 # include <algorithm>
-# include <functional> // unary_function, binary_function
+# include <boost/config/no_tr1/functional.hpp> // unary_function, binary_function
 # include <boost/throw_exception.hpp>
 # include <boost/config.hpp>
 # include <boost/function/function_base.hpp>
@@ -22,4 +22,5 @@
 # include <boost/preprocessor/cat.hpp>
 # include <boost/preprocessor/repeat.hpp>
 # include <boost/preprocessor/inc.hpp>
+# include <boost/type_traits/is_void.hpp>
 #endif // BOOST_FUNCTION_PROLOGUE_HPP

Modified: branches/CMake/release/boost/function/function_base.hpp
==============================================================================
--- branches/CMake/release/boost/function/function_base.hpp (original)
+++ branches/CMake/release/boost/function/function_base.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,8 +1,9 @@
 // Boost.Function library
 
-// Copyright Douglas Gregor 2001-2006. Use, modification and
-// distribution is subject to the Boost Software License, Version
-// 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+// Copyright Douglas Gregor 2001-2006
+// Copyright Emil Dotchevski 2007
+// Use, modification and distribution is subject to the Boost Software License, Version 1.0.
+// (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
 
 // For more information, see http://www.boost.org
@@ -73,7 +74,7 @@
 
 #if defined (BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
  || defined(BOOST_BCB_PARTIAL_SPECIALIZATION_BUG) \
- || !(defined(BOOST_STRICT_CONFIG) || !defined(__SUNPRO_CC) || __SUNPRO_CC > 0x540)
+ || !(BOOST_STRICT_CONFIG || !defined(__SUNPRO_CC) || __SUNPRO_CC > 0x540)
 # define BOOST_FUNCTION_NO_FUNCTION_TYPE_SYNTAX
 #endif
 
@@ -94,21 +95,12 @@
 #if !defined(BOOST_FUNCTION_NO_FUNCTION_TYPE_SYNTAX)
 namespace boost {
 
-#if defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730 && !defined(BOOST_STRICT_CONFIG)
-// The library shipping with MIPSpro 7.3.1.3m has a broken allocator<void>
-class function_base;
-
-template<typename Signature,
- typename Allocator = std::allocator<function_base> >
-class function;
-#else
-template<typename Signature, typename Allocator = std::allocator<void> >
+template<typename Signature>
 class function;
-#endif
 
-template<typename Signature, typename Allocator>
-inline void swap(function<Signature, Allocator>& f1,
- function<Signature, Allocator>& f2)
+template<typename Signature>
+inline void swap(function<Signature>& f1,
+ function<Signature>& f2)
 {
   f1.swap(f2);
 }
@@ -212,8 +204,8 @@
       struct reference_manager
       {
         static inline void
- manage(const function_buffer& in_buffer, function_buffer& out_buffer,
- functor_manager_operation_type op)
+ get(const function_buffer& in_buffer, function_buffer& out_buffer,
+ functor_manager_operation_type op)
         {
           switch (op) {
           case clone_functor_tag:
@@ -259,20 +251,29 @@
                       % alignment_of<F>::value == 0))));
       };
 
+ template <typename F,typename A>
+ struct functor_wrapper: public F, public A
+ {
+ functor_wrapper( F f, A a ):
+ F(f),
+ A(a)
+ {
+ }
+ };
+
       /**
        * The functor_manager class contains a static function "manage" which
        * can clone or destroy the given function/function object pointer.
        */
- template<typename Functor, typename Allocator>
- struct functor_manager
+ template<typename Functor>
+ struct functor_manager_common
       {
- private:
         typedef Functor functor_type;
 
- // For function pointers, the manager is trivial
+ // Function pointers
         static inline void
- manager(const function_buffer& in_buffer, function_buffer& out_buffer,
- functor_manager_operation_type op, function_ptr_tag)
+ manage_ptr(const function_buffer& in_buffer, function_buffer& out_buffer,
+ functor_manager_operation_type op)
         {
           if (op == clone_functor_tag)
             out_buffer.func_ptr = in_buffer.func_ptr;
@@ -290,8 +291,8 @@
 
         // Function objects that fit in the small-object buffer.
         static inline void
- manager(const function_buffer& in_buffer, function_buffer& out_buffer,
- functor_manager_operation_type op, mpl::true_)
+ manage_small(const function_buffer& in_buffer, function_buffer& out_buffer,
+ functor_manager_operation_type op)
         {
           if (op == clone_functor_tag) {
             const functor_type* in_functor =
@@ -309,57 +310,48 @@
               out_buffer.obj_ptr = 0;
           }
         }
+ };
+
+ template<typename Functor>
+ struct functor_manager
+ {
+ private:
+ typedef Functor functor_type;
+
+ // Function pointers
+ static inline void
+ manager(const function_buffer& in_buffer, function_buffer& out_buffer,
+ functor_manager_operation_type op, function_ptr_tag)
+ {
+ functor_manager_common<Functor>::manage_ptr(in_buffer,out_buffer,op);
+ }
+
+ // Function objects that fit in the small-object buffer.
+ static inline void
+ manager(const function_buffer& in_buffer, function_buffer& out_buffer,
+ functor_manager_operation_type op, mpl::true_)
+ {
+ functor_manager_common<Functor>::manage_small(in_buffer,out_buffer,op);
+ }
         
         // Function objects that require heap allocation
         static inline void
         manager(const function_buffer& in_buffer, function_buffer& out_buffer,
                 functor_manager_operation_type op, mpl::false_)
         {
-#ifndef BOOST_NO_STD_ALLOCATOR
- typedef typename Allocator::template rebind<functor_type>::other
- allocator_type;
- typedef typename allocator_type::pointer pointer_type;
-#else
- typedef functor_type* pointer_type;
-#endif // BOOST_NO_STD_ALLOCATOR
-
-# ifndef BOOST_NO_STD_ALLOCATOR
- allocator_type allocator;
-# endif // BOOST_NO_STD_ALLOCATOR
-
           if (op == clone_functor_tag) {
+ // Clone the functor
             // GCC 2.95.3 gets the CV qualifiers wrong here, so we
             // can't do the static_cast that we should do.
             const functor_type* f =
               (const functor_type*)(in_buffer.obj_ptr);
-
- // Clone the functor
-# ifndef BOOST_NO_STD_ALLOCATOR
- pointer_type copy = allocator.allocate(1);
- allocator.construct(copy, *f);
-
- // Get back to the original pointer type
- functor_type* new_f = static_cast<functor_type*>(copy);
-# else
             functor_type* new_f = new functor_type(*f);
-# endif // BOOST_NO_STD_ALLOCATOR
             out_buffer.obj_ptr = new_f;
           } else if (op == destroy_functor_tag) {
             /* Cast from the void pointer to the functor pointer type */
             functor_type* f =
               static_cast<functor_type*>(out_buffer.obj_ptr);
-
-# ifndef BOOST_NO_STD_ALLOCATOR
- /* Cast from the functor pointer type to the allocator's pointer
- type */
- pointer_type victim = static_cast<pointer_type>(f);
-
- // Destroy and deallocate the functor
- allocator.destroy(victim);
- allocator.deallocate(victim, 1);
-# else
             delete f;
-# endif // BOOST_NO_STD_ALLOCATOR
             out_buffer.obj_ptr = 0;
           } else /* op == check_functor_type_tag */ {
             const BOOST_FUNCTION_STD_NS::type_info& check_type =
@@ -382,13 +374,98 @@
                   mpl::bool_<(function_allows_small_object_optimization<functor_type>::value)>());
         }
 
- // For member pointers, we treat them as function objects with
- // the small-object optimization always enabled.
+ public:
+ /* Dispatch to an appropriate manager based on whether we have a
+ function pointer or a function object pointer. */
+ static inline void
+ manage(const function_buffer& in_buffer, function_buffer& out_buffer,
+ functor_manager_operation_type op)
+ {
+ typedef typename get_function_tag<functor_type>::type tag_type;
+ switch (op) {
+ case get_functor_type_tag:
+ out_buffer.const_obj_ptr = &typeid(functor_type);
+ return;
+
+ default:
+ manager(in_buffer, out_buffer, op, tag_type());
+ return;
+ }
+ }
+ };
+
+ template<typename Functor, typename Allocator>
+ struct functor_manager_a
+ {
+ private:
+ typedef Functor functor_type;
+
+ // Function pointers
+ static inline void
+ manager(const function_buffer& in_buffer, function_buffer& out_buffer,
+ functor_manager_operation_type op, function_ptr_tag)
+ {
+ functor_manager_common<Functor>::manage_ptr(in_buffer,out_buffer,op);
+ }
+
+ // Function objects that fit in the small-object buffer.
         static inline void
         manager(const function_buffer& in_buffer, function_buffer& out_buffer,
- functor_manager_operation_type op, member_ptr_tag)
+ functor_manager_operation_type op, mpl::true_)
         {
- manager(in_buffer, out_buffer, op, mpl::true_());
+ functor_manager_common<Functor>::manage_small(in_buffer,out_buffer,op);
+ }
+
+ // Function objects that require heap allocation
+ static inline void
+ manager(const function_buffer& in_buffer, function_buffer& out_buffer,
+ functor_manager_operation_type op, mpl::false_)
+ {
+ typedef functor_wrapper<Functor,Allocator> functor_wrapper_type;
+ typedef typename Allocator::template rebind<functor_wrapper_type>::other
+ wrapper_allocator_type;
+ typedef typename wrapper_allocator_type::pointer wrapper_allocator_pointer_type;
+
+ if (op == clone_functor_tag) {
+ // Clone the functor
+ // GCC 2.95.3 gets the CV qualifiers wrong here, so we
+ // can't do the static_cast that we should do.
+ const functor_wrapper_type* f =
+ (const functor_wrapper_type*)(in_buffer.obj_ptr);
+ wrapper_allocator_type wrapper_allocator(static_cast<Allocator const &>(*f));
+ wrapper_allocator_pointer_type copy = wrapper_allocator.allocate(1);
+ wrapper_allocator.construct(copy, *f);
+
+ // Get back to the original pointer type
+ functor_wrapper_type* new_f = static_cast<functor_wrapper_type*>(copy);
+ out_buffer.obj_ptr = new_f;
+ } else if (op == destroy_functor_tag) {
+ /* Cast from the void pointer to the functor_wrapper_type */
+ functor_wrapper_type* victim =
+ static_cast<functor_wrapper_type*>(in_buffer.obj_ptr);
+ wrapper_allocator_type wrapper_allocator(static_cast<Allocator const &>(*victim));
+ wrapper_allocator.destroy(victim);
+ wrapper_allocator.deallocate(victim,1);
+ out_buffer.obj_ptr = 0;
+ } else /* op == check_functor_type_tag */ {
+ const BOOST_FUNCTION_STD_NS::type_info& check_type =
+ *static_cast<const BOOST_FUNCTION_STD_NS::type_info*>(out_buffer.const_obj_ptr);
+ if (BOOST_FUNCTION_COMPARE_TYPE_ID(check_type, typeid(Functor)))
+ out_buffer.obj_ptr = in_buffer.obj_ptr;
+ else
+ out_buffer.obj_ptr = 0;
+ }
+ }
+
+ // For function objects, we determine whether the function
+ // object can use the small-object optimization buffer or
+ // whether we need to allocate it on the heap.
+ static inline void
+ manager(const function_buffer& in_buffer, function_buffer& out_buffer,
+ functor_manager_operation_type op, function_obj_tag)
+ {
+ manager(in_buffer, out_buffer, op,
+ mpl::bool_<(function_allows_small_object_optimization<functor_type>::value)>());
         }
 
       public:
@@ -479,6 +556,7 @@
        */
       struct vtable_base
       {
+ vtable_base() : manager(0) { }
         void (*manager)(const function_buffer& in_buffer,
                         function_buffer& out_buffer,
                         functor_manager_operation_type op);
@@ -580,7 +658,7 @@
 #endif
 
 public: // should be protected, but GCC 2.95.3 will fail to allow access
- const detail::function::vtable_base* vtable;
+ detail::function::vtable_base* vtable;
   mutable detail::function::function_buffer functor;
 };
 
@@ -755,8 +833,4 @@
 #undef BOOST_FUNCTION_ENABLE_IF_NOT_INTEGRAL
 #undef BOOST_FUNCTION_COMPARE_TYPE_ID
 
-#if defined(BOOST_MSVC)
-# pragma warning( pop )
-#endif
-
 #endif // BOOST_FUNCTION_BASE_HEADER

Modified: branches/CMake/release/boost/function/function_template.hpp
==============================================================================
--- branches/CMake/release/boost/function/function_template.hpp (original)
+++ branches/CMake/release/boost/function/function_template.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,8 +1,9 @@
 // Boost.Function library
 
-// Copyright Douglas Gregor 2001-2006. Use, modification and
-// distribution is subject to the Boost Software License, Version
-// 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+// Copyright Douglas Gregor 2001-2006
+// Copyright Emil Dotchevski 2007
+// Use, modification and distribution is subject to the Boost Software License, Version 1.0.
+// (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
 
 // For more information, see http://www.boost.org
@@ -31,13 +32,6 @@
 
 #define BOOST_FUNCTION_ARG_TYPES BOOST_PP_REPEAT(BOOST_FUNCTION_NUM_ARGS,BOOST_FUNCTION_ARG_TYPE,BOOST_PP_EMPTY)
 
-// Type of the default allocator
-#ifndef BOOST_NO_STD_ALLOCATOR
-# define BOOST_FUNCTION_DEFAULT_ALLOCATOR std::allocator<function_base>
-#else
-# define BOOST_FUNCTION_DEFAULT_ALLOCATOR int
-#endif // BOOST_NO_STD_ALLOCATOR
-
 // Comma if nonzero number of arguments
 #if BOOST_FUNCTION_NUM_ARGS == 0
 # define BOOST_FUNCTION_COMMA
@@ -59,20 +53,12 @@
   BOOST_JOIN(function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
 #define BOOST_FUNCTION_VOID_FUNCTION_REF_INVOKER \
   BOOST_JOIN(void_function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
-#define BOOST_FUNCTION_MEMBER_INVOKER \
- BOOST_JOIN(member_invoker,BOOST_FUNCTION_NUM_ARGS)
-#define BOOST_FUNCTION_VOID_MEMBER_INVOKER \
- BOOST_JOIN(void_member_invoker,BOOST_FUNCTION_NUM_ARGS)
 #define BOOST_FUNCTION_GET_FUNCTION_INVOKER \
   BOOST_JOIN(get_function_invoker,BOOST_FUNCTION_NUM_ARGS)
 #define BOOST_FUNCTION_GET_FUNCTION_OBJ_INVOKER \
   BOOST_JOIN(get_function_obj_invoker,BOOST_FUNCTION_NUM_ARGS)
 #define BOOST_FUNCTION_GET_FUNCTION_REF_INVOKER \
   BOOST_JOIN(get_function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
-#define BOOST_FUNCTION_GET_MEMBER_INVOKER \
- BOOST_JOIN(get_member_invoker,BOOST_FUNCTION_NUM_ARGS)
-#define BOOST_FUNCTION_GET_INVOKER \
- BOOST_JOIN(get_invoker,BOOST_FUNCTION_NUM_ARGS)
 #define BOOST_FUNCTION_VTABLE BOOST_JOIN(basic_vtable,BOOST_FUNCTION_NUM_ARGS)
 
 #ifndef BOOST_NO_VOID_RETURNS
@@ -194,44 +180,6 @@
         }
       };
 
-#if BOOST_FUNCTION_NUM_ARGS > 0
- /* Handle invocation of member pointers. */
- template<
- typename MemberPtr,
- typename R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_PARMS
- >
- struct BOOST_FUNCTION_MEMBER_INVOKER
- {
- static R invoke(function_buffer& function_obj_ptr BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_PARMS)
-
- {
- MemberPtr* f =
- reinterpret_cast<MemberPtr*>(&function_obj_ptr.data);
- return boost::mem_fn(*f)(BOOST_FUNCTION_ARGS);
- }
- };
-
- template<
- typename MemberPtr,
- typename R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_PARMS
- >
- struct BOOST_FUNCTION_VOID_MEMBER_INVOKER
- {
- static BOOST_FUNCTION_VOID_RETURN_TYPE
- invoke(function_buffer& function_obj_ptr BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_PARMS)
-
- {
- MemberPtr* f =
- reinterpret_cast<MemberPtr*>(&function_obj_ptr.data);
- BOOST_FUNCTION_RETURN(boost::mem_fn(*f)(BOOST_FUNCTION_ARGS));
- }
- };
-#endif
-
       template<
         typename FunctionPtr,
         typename R BOOST_FUNCTION_COMMA
@@ -295,130 +243,11 @@
>::type type;
       };
 
-#if BOOST_FUNCTION_NUM_ARGS > 0
- /* Retrieve the appropriate invoker for a member pointer. */
- template<
- typename MemberPtr,
- typename R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_PARMS
- >
- struct BOOST_FUNCTION_GET_MEMBER_INVOKER
- {
- typedef typename mpl::if_c<(is_void<R>::value),
- BOOST_FUNCTION_VOID_MEMBER_INVOKER<
- MemberPtr,
- R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS
- >,
- BOOST_FUNCTION_MEMBER_INVOKER<
- MemberPtr,
- R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS
- >
- >::type type;
- };
-#endif
-
- /* Given the tag returned by get_function_tag, retrieve the
- actual invoker that will be used for the given function
- object.
-
- Each specialization contains an "apply" nested class template
- that accepts the function object, return type, function
- argument types, and allocator. The resulting "apply" class
- contains two typedefs, "invoker_type" and "manager_type",
- which correspond to the invoker and manager types. */
- template<typename Tag>
- struct BOOST_FUNCTION_GET_INVOKER { };
-
- /* Retrieve the invoker for a function pointer. */
- template<>
- struct BOOST_FUNCTION_GET_INVOKER<function_ptr_tag>
- {
- template<typename FunctionPtr,
- typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS,
- typename Allocator>
- struct apply
- {
- typedef typename BOOST_FUNCTION_GET_FUNCTION_INVOKER<
- FunctionPtr,
- R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS
- >::type
- invoker_type;
-
- typedef functor_manager<FunctionPtr, Allocator> manager_type;
- };
- };
-
-#if BOOST_FUNCTION_NUM_ARGS > 0
- /* Retrieve the invoker for a member pointer. */
- template<>
- struct BOOST_FUNCTION_GET_INVOKER<member_ptr_tag>
- {
- template<typename MemberPtr,
- typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS,
- typename Allocator>
- struct apply
- {
- typedef typename BOOST_FUNCTION_GET_MEMBER_INVOKER<
- MemberPtr,
- R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS
- >::type
- invoker_type;
-
- typedef functor_manager<MemberPtr, Allocator> manager_type;
- };
- };
-#endif
-
- /* Retrieve the invoker for a function object. */
- template<>
- struct BOOST_FUNCTION_GET_INVOKER<function_obj_tag>
- {
- template<typename FunctionObj,
- typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS,
- typename Allocator>
- struct apply
- {
- typedef typename BOOST_FUNCTION_GET_FUNCTION_OBJ_INVOKER<
- FunctionObj,
- R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS
- >::type
- invoker_type;
-
- typedef functor_manager<FunctionObj, Allocator> manager_type;
- };
- };
-
- /* Retrieve the invoker for a reference to a function object. */
- template<>
- struct BOOST_FUNCTION_GET_INVOKER<function_obj_ref_tag>
- {
- template<typename RefWrapper,
- typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS,
- typename Allocator>
- struct apply
- {
- typedef typename BOOST_FUNCTION_GET_FUNCTION_REF_INVOKER<
- typename RefWrapper::type,
- R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS
- >::type
- invoker_type;
-
- typedef reference_manager<typename RefWrapper::type> manager_type;
- };
- };
-
       /**
        * vtable for a specific boost::function instance.
        */
- template<typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS,
- typename Allocator>
- struct BOOST_FUNCTION_VTABLE
+ template<typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS>
+ struct BOOST_FUNCTION_VTABLE : vtable_base
       {
 #ifndef BOOST_NO_VOID_RETURNS
         typedef R result_type;
@@ -431,25 +260,80 @@
                                             BOOST_FUNCTION_TEMPLATE_ARGS);
 
         template<typename F>
- bool assign_to(const F& f, function_buffer& functor) const
+ BOOST_FUNCTION_VTABLE(F f) : vtable_base(), invoker(0)
+ {
+ init(f);
+ }
+ template<typename F,typename Allocator>
+ BOOST_FUNCTION_VTABLE(F f, Allocator) : vtable_base(), invoker(0)
+ {
+ init_a<Allocator>(f);
+ }
+
+ template<typename F>
+ bool assign_to(F f, function_buffer& functor)
         {
           typedef typename get_function_tag<F>::type tag;
           return assign_to(f, functor, tag());
         }
+ template<typename F,typename Allocator>
+ bool assign_to_a(F f, function_buffer& functor, Allocator a)
+ {
+ typedef typename get_function_tag<F>::type tag;
+ return assign_to_a(f, functor, a, tag());
+ }
 
- void clear(function_buffer& functor) const
+ void clear(function_buffer& functor)
         {
- if (base.manager)
- base.manager(functor, functor, destroy_functor_tag);
+ if (manager)
+ manager(functor, functor, destroy_functor_tag);
         }
-#ifndef BOOST_NO_PRIVATE_IN_AGGREGATE
+
       private:
-#endif
+ template<typename F>
+ void init(F f)
+ {
+ typedef typename get_function_tag<F>::type tag;
+ init(f, tag());
+ }
+ template<typename Allocator,typename F>
+ void init_a(F f)
+ {
+ typedef typename get_function_tag<F>::type tag;
+ init_a<Allocator>(f, tag());
+ }
+
         // Function pointers
         template<typename FunctionPtr>
+ void init(FunctionPtr /*f*/, function_ptr_tag)
+ {
+ typedef typename BOOST_FUNCTION_GET_FUNCTION_INVOKER<
+ FunctionPtr,
+ R BOOST_FUNCTION_COMMA
+ BOOST_FUNCTION_TEMPLATE_ARGS
+ >::type
+ actual_invoker_type;
+
+ invoker = &actual_invoker_type::invoke;
+ manager = &functor_manager<FunctionPtr>::manage;
+ }
+ template<typename Allocator,typename FunctionPtr>
+ void init_a(FunctionPtr f, function_ptr_tag)
+ {
+ typedef typename BOOST_FUNCTION_GET_FUNCTION_INVOKER<
+ FunctionPtr,
+ R BOOST_FUNCTION_COMMA
+ BOOST_FUNCTION_TEMPLATE_ARGS
+ >::type
+ actual_invoker_type;
+
+ invoker = &actual_invoker_type::invoke;
+ manager = &functor_manager_a<FunctionPtr, Allocator>::manage;
+ }
+
+ template<typename FunctionPtr>
         bool
- assign_to(FunctionPtr f, function_buffer& functor,
- function_ptr_tag) const
+ assign_to(FunctionPtr f, function_buffer& functor, function_ptr_tag)
         {
           this->clear(functor);
           if (f) {
@@ -461,17 +345,53 @@
             return false;
           }
         }
+ template<typename FunctionPtr,typename Allocator>
+ bool
+ assign_to_a(FunctionPtr f, function_buffer& functor, Allocator, function_ptr_tag)
+ {
+ return assign_to(f,functor,function_ptr_tag());
+ }
 
         // Member pointers
 #if BOOST_FUNCTION_NUM_ARGS > 0
         template<typename MemberPtr>
- bool
- assign_to(MemberPtr f, function_buffer& functor, member_ptr_tag) const
+ void init(MemberPtr f, member_ptr_tag)
         {
+ // DPG TBD: Add explicit support for member function
+ // objects, so we invoke through mem_fn() but we retain the
+ // right target_type() values.
+ this->init(mem_fn(f));
+ }
+ template<typename Allocator,typename MemberPtr>
+ void init_a(MemberPtr f, member_ptr_tag)
+ {
+ // DPG TBD: Add explicit support for member function
+ // objects, so we invoke through mem_fn() but we retain the
+ // right target_type() values.
+ this->init_a<Allocator>(mem_fn(f));
+ }
+
+ template<typename MemberPtr>
+ bool assign_to(MemberPtr f, function_buffer& functor, member_ptr_tag)
+ {
+ // DPG TBD: Add explicit support for member function
+ // objects, so we invoke through mem_fn() but we retain the
+ // right target_type() values.
+ if (f) {
+ this->assign_to(mem_fn(f), functor);
+ return true;
+ } else {
+ return false;
+ }
+ }
+ template<typename MemberPtr,typename Allocator>
+ bool assign_to_a(MemberPtr f, function_buffer& functor, Allocator a, member_ptr_tag)
+ {
+ // DPG TBD: Add explicit support for member function
+ // objects, so we invoke through mem_fn() but we retain the
+ // right target_type() values.
           if (f) {
- // Always use the small-object optimization for member
- // pointers.
- assign_functor(f, functor, mpl::true_());
+ this->assign_to_a(mem_fn(f), functor, a);
             return true;
           } else {
             return false;
@@ -480,41 +400,72 @@
 #endif // BOOST_FUNCTION_NUM_ARGS > 0
 
         // Function objects
+ template<typename FunctionObj>
+ void init(FunctionObj /*f*/, function_obj_tag)
+ {
+ typedef typename BOOST_FUNCTION_GET_FUNCTION_OBJ_INVOKER<
+ FunctionObj,
+ R BOOST_FUNCTION_COMMA
+ BOOST_FUNCTION_TEMPLATE_ARGS
+ >::type
+ actual_invoker_type;
+
+ invoker = &actual_invoker_type::invoke;
+ manager = &functor_manager<FunctionObj>::manage;
+ }
+ template<typename Allocator,typename FunctionObj>
+ void init_a(FunctionObj /*f*/, function_obj_tag)
+ {
+ typedef typename BOOST_FUNCTION_GET_FUNCTION_OBJ_INVOKER<
+ FunctionObj,
+ R BOOST_FUNCTION_COMMA
+ BOOST_FUNCTION_TEMPLATE_ARGS
+ >::type
+ actual_invoker_type;
+
+ invoker = &actual_invoker_type::invoke;
+ manager = &functor_manager_a<FunctionObj, Allocator>::manage;
+ }
+
         // Assign to a function object using the small object optimization
         template<typename FunctionObj>
         void
- assign_functor(const FunctionObj& f, function_buffer& functor,
- mpl::true_) const
+ assign_functor(FunctionObj f, function_buffer& functor, mpl::true_)
         {
           new ((void*)&functor.data) FunctionObj(f);
         }
+ template<typename FunctionObj,typename Allocator>
+ void
+ assign_functor_a(FunctionObj f, function_buffer& functor, Allocator, mpl::true_)
+ {
+ assign_functor(f,functor,mpl::true_());
+ }
 
         // Assign to a function object allocated on the heap.
         template<typename FunctionObj>
         void
- assign_functor(const FunctionObj& f, function_buffer& functor,
- mpl::false_) const
+ assign_functor(FunctionObj f, function_buffer& functor, mpl::false_)
         {
-#ifndef BOOST_NO_STD_ALLOCATOR
- typedef typename Allocator::template rebind<FunctionObj>::other
- allocator_type;
- typedef typename allocator_type::pointer pointer_type;
-
- allocator_type allocator;
- pointer_type copy = allocator.allocate(1);
- allocator.construct(copy, f);
-
- // Get back to the original pointer type
- functor.obj_ptr = static_cast<FunctionObj*>(copy);
-# else
           functor.obj_ptr = new FunctionObj(f);
-# endif // BOOST_NO_STD_ALLOCATOR
+ }
+ template<typename FunctionObj,typename Allocator>
+ void
+ assign_functor_a(FunctionObj f, function_buffer& functor, Allocator a, mpl::false_)
+ {
+ typedef functor_wrapper<FunctionObj,Allocator> functor_wrapper_type;
+ typedef typename Allocator::template rebind<functor_wrapper_type>::other
+ wrapper_allocator_type;
+ typedef typename wrapper_allocator_type::pointer wrapper_allocator_pointer_type;
+ wrapper_allocator_type wrapper_allocator(a);
+ wrapper_allocator_pointer_type copy = wrapper_allocator.allocate(1);
+ wrapper_allocator.construct(copy, functor_wrapper_type(f,a));
+ functor_wrapper_type* new_f = static_cast<functor_wrapper_type*>(copy);
+ functor.obj_ptr = new_f;
         }
 
         template<typename FunctionObj>
         bool
- assign_to(const FunctionObj& f, function_buffer& functor,
- function_obj_tag) const
+ assign_to(FunctionObj f, function_buffer& functor, function_obj_tag)
         {
           if (!boost::detail::function::has_empty_target(boost::addressof(f))) {
             assign_functor(f, functor,
@@ -524,12 +475,45 @@
             return false;
           }
         }
+ template<typename FunctionObj,typename Allocator>
+ bool
+ assign_to_a(FunctionObj f, function_buffer& functor, Allocator a, function_obj_tag)
+ {
+ if (!boost::detail::function::has_empty_target(boost::addressof(f))) {
+ assign_functor_a(f, functor, a,
+ mpl::bool_<(function_allows_small_object_optimization<FunctionObj>::value)>());
+ return true;
+ } else {
+ return false;
+ }
+ }
 
         // Reference to a function object
         template<typename FunctionObj>
+ void
+ init(const reference_wrapper<FunctionObj>& /*f*/, function_obj_ref_tag)
+ {
+ typedef typename BOOST_FUNCTION_GET_FUNCTION_REF_INVOKER<
+ FunctionObj,
+ R BOOST_FUNCTION_COMMA
+ BOOST_FUNCTION_TEMPLATE_ARGS
+ >::type
+ actual_invoker_type;
+
+ invoker = &actual_invoker_type::invoke;
+ manager = &reference_manager<FunctionObj>::get;
+ }
+ template<typename Allocator,typename FunctionObj>
+ void
+ init_a(const reference_wrapper<FunctionObj>& f, function_obj_ref_tag)
+ {
+ init(f,function_obj_ref_tag());
+ }
+
+ template<typename FunctionObj>
         bool
         assign_to(const reference_wrapper<FunctionObj>& f,
- function_buffer& functor, function_obj_ref_tag) const
+ function_buffer& functor, function_obj_ref_tag)
         {
           if (!boost::detail::function::has_empty_target(f.get_pointer())) {
             // DPG TBD: We might need to detect constness of
@@ -542,9 +526,15 @@
             return false;
           }
         }
+ template<typename FunctionObj,typename Allocator>
+ bool
+ assign_to_a(const reference_wrapper<FunctionObj>& f,
+ function_buffer& functor, Allocator, function_obj_ref_tag)
+ {
+ return assign_to(f,functor,function_obj_ref_tag());
+ }
 
       public:
- vtable_base base;
         invoker_type invoker;
       };
     } // end namespace function
@@ -552,8 +542,7 @@
 
   template<
     typename R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_PARMS,
- typename Allocator = BOOST_FUNCTION_DEFAULT_ALLOCATOR
+ BOOST_FUNCTION_TEMPLATE_PARMS
>
   class BOOST_FUNCTION_FUNCTION : public function_base
 
@@ -578,7 +567,7 @@
 
   private:
     typedef boost::detail::function::BOOST_FUNCTION_VTABLE<
- R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_ARGS, Allocator>
+ R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_ARGS>
       vtable_type;
 
     struct clear_type {};
@@ -603,7 +592,6 @@
     BOOST_STATIC_CONSTANT(int, arity = BOOST_FUNCTION_NUM_ARGS);
     BOOST_FUNCTION_ARG_TYPES
 
- typedef Allocator allocator_type;
     typedef BOOST_FUNCTION_FUNCTION self_type;
 
     BOOST_FUNCTION_FUNCTION() : function_base() { }
@@ -623,6 +611,19 @@
     {
       this->assign_to(f);
     }
+ template<typename Functor,typename Allocator>
+ BOOST_FUNCTION_FUNCTION(Functor BOOST_FUNCTION_TARGET_FIX(const &) f, Allocator a
+#ifndef BOOST_NO_SFINAE
+ ,typename enable_if_c<
+ (boost::type_traits::ice_not<
+ (is_integral<Functor>::value)>::value),
+ int>::type = 0
+#endif // BOOST_NO_SFINAE
+ ) :
+ function_base()
+ {
+ this->assign_to_a(f,a);
+ }
 
 #ifndef BOOST_NO_SFINAE
     BOOST_FUNCTION_FUNCTION(clear_type*) : function_base() { }
@@ -648,7 +649,7 @@
       if (this->empty())
         boost::throw_exception(bad_function_call());
 
- return reinterpret_cast<const vtable_type*>(vtable)->invoker
+ return static_cast<vtable_type*>(vtable)->invoker
                (this->functor BOOST_FUNCTION_COMMA BOOST_FUNCTION_ARGS);
     }
 #else
@@ -672,18 +673,25 @@
     operator=(Functor BOOST_FUNCTION_TARGET_FIX(const &) f)
     {
       this->clear();
-#ifndef BOOST_NO_EXCEPTIONS
       try {
         this->assign_to(f);
       } catch (...) {
         vtable = 0;
         throw;
       }
-#else
- this->assign_to(f);
-#endif
       return *this;
     }
+ template<typename Functor,typename Allocator>
+ void assign(Functor BOOST_FUNCTION_TARGET_FIX(const &) f, Allocator a)
+ {
+ this->clear();
+ try {
+ this->assign_to_a(f,a);
+ } catch (...) {
+ vtable = 0;
+ throw;
+ }
+ }
 
 #ifndef BOOST_NO_SFINAE
     BOOST_FUNCTION_FUNCTION& operator=(clear_type*)
@@ -707,16 +715,12 @@
         return *this;
 
       this->clear();
-#ifndef BOOST_NO_EXCEPTIONS
       try {
         this->assign_to_own(f);
       } catch (...) {
         vtable = 0;
         throw;
       }
-#else
- this->assign_to_own(f);
-#endif
       return *this;
     }
 
@@ -734,7 +738,7 @@
     void clear()
     {
       if (vtable) {
- reinterpret_cast<const vtable_type*>(vtable)->clear(this->functor);
+ static_cast<vtable_type*>(vtable)->clear(this->functor);
         vtable = 0;
       }
     }
@@ -769,84 +773,64 @@
     }
 
     template<typename Functor>
- void assign_to(const Functor& f)
+ void assign_to(Functor f)
     {
- using detail::function::vtable_base;
-
- typedef typename detail::function::get_function_tag<Functor>::type tag;
- typedef detail::function::BOOST_FUNCTION_GET_INVOKER<tag> get_invoker;
- typedef typename get_invoker::
- template apply<Functor, R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS, Allocator>
- handler_type;
-
- typedef typename handler_type::invoker_type invoker_type;
- typedef typename handler_type::manager_type manager_type;
-
- static const vtable_type stored_vtable =
- { { &manager_type::manage }, &invoker_type::invoke };
-
- if (stored_vtable.assign_to(f, functor)) vtable = &stored_vtable.base;
+ static vtable_type stored_vtable(f);
+ if (stored_vtable.assign_to(f, functor)) vtable = &stored_vtable;
+ else vtable = 0;
+ }
+ template<typename Functor,typename Allocator>
+ void assign_to_a(Functor f,Allocator a)
+ {
+ static vtable_type stored_vtable(f,a);
+ if (stored_vtable.assign_to_a(f, functor, a)) vtable = &stored_vtable;
       else vtable = 0;
     }
   };
 
- template<typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS ,
- typename Allocator>
+ template<typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS>
   inline void swap(BOOST_FUNCTION_FUNCTION<
                      R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS ,
- Allocator
+ BOOST_FUNCTION_TEMPLATE_ARGS
>& f1,
                    BOOST_FUNCTION_FUNCTION<
                      R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS,
- Allocator
+ BOOST_FUNCTION_TEMPLATE_ARGS
>& f2)
   {
     f1.swap(f2);
   }
 
 #if !BOOST_WORKAROUND(BOOST_MSVC, < 1300)
- template<typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS,
- typename Allocator>
+ template<typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS>
   typename BOOST_FUNCTION_FUNCTION<
- R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_ARGS,
- Allocator>::result_type
- BOOST_FUNCTION_FUNCTION<R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_ARGS,
-
- Allocator>
+ R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_ARGS>::result_type
+ BOOST_FUNCTION_FUNCTION<R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_ARGS>
   ::operator()(BOOST_FUNCTION_PARMS) const
   {
     if (this->empty())
       boost::throw_exception(bad_function_call());
 
- return reinterpret_cast<const vtable_type*>(vtable)->invoker
+ return static_cast<vtable_type*>(vtable)->invoker
              (this->functor BOOST_FUNCTION_COMMA BOOST_FUNCTION_ARGS);
   }
 #endif
 
 // Poison comparisons between boost::function objects of the same type.
-template<typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS ,
- typename Allocator>
+template<typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS>
   void operator==(const BOOST_FUNCTION_FUNCTION<
                           R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS ,
- Allocator>&,
+ BOOST_FUNCTION_TEMPLATE_ARGS>&,
                   const BOOST_FUNCTION_FUNCTION<
                           R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS ,
- Allocator>&);
-template<typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS ,
- typename Allocator>
+ BOOST_FUNCTION_TEMPLATE_ARGS>&);
+template<typename R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_PARMS>
   void operator!=(const BOOST_FUNCTION_FUNCTION<
                           R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS ,
- Allocator>&,
+ BOOST_FUNCTION_TEMPLATE_ARGS>&,
                   const BOOST_FUNCTION_FUNCTION<
                           R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_ARGS ,
- Allocator>&);
+ BOOST_FUNCTION_TEMPLATE_ARGS>& );
 
 #if !defined(BOOST_FUNCTION_NO_FUNCTION_TYPE_SYNTAX)
 
@@ -857,20 +841,16 @@
 #endif
 
 template<typename R BOOST_FUNCTION_COMMA
- BOOST_FUNCTION_TEMPLATE_PARMS,
- typename Allocator>
-class function<BOOST_FUNCTION_PARTIAL_SPEC, Allocator>
- : public BOOST_FUNCTION_FUNCTION<R, BOOST_FUNCTION_TEMPLATE_ARGS
- BOOST_FUNCTION_COMMA Allocator>
+ BOOST_FUNCTION_TEMPLATE_PARMS>
+class function<BOOST_FUNCTION_PARTIAL_SPEC>
+ : public BOOST_FUNCTION_FUNCTION<R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_ARGS>
 {
- typedef BOOST_FUNCTION_FUNCTION<R, BOOST_FUNCTION_TEMPLATE_ARGS
- BOOST_FUNCTION_COMMA Allocator> base_type;
+ typedef BOOST_FUNCTION_FUNCTION<R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_ARGS> base_type;
   typedef function self_type;
 
   struct clear_type {};
 
 public:
- typedef typename base_type::allocator_type allocator_type;
 
   function() : base_type() {}
 
@@ -886,6 +866,18 @@
     base_type(f)
   {
   }
+ template<typename Functor,typename Allocator>
+ function(Functor f, Allocator a
+#ifndef BOOST_NO_SFINAE
+ ,typename enable_if_c<
+ (boost::type_traits::ice_not<
+ (is_integral<Functor>::value)>::value),
+ int>::type = 0
+#endif
+ ) :
+ base_type(f,a)
+ {
+ }
 
 #ifndef BOOST_NO_SFINAE
   function(clear_type*) : base_type() {}
@@ -938,8 +930,6 @@
 
 // Cleanup after ourselves...
 #undef BOOST_FUNCTION_VTABLE
-#undef BOOST_FUNCTION_GET_INVOKER
-#undef BOOST_FUNCTION_DEFAULT_ALLOCATOR
 #undef BOOST_FUNCTION_COMMA
 #undef BOOST_FUNCTION_FUNCTION
 #undef BOOST_FUNCTION_FUNCTION_INVOKER
@@ -948,12 +938,10 @@
 #undef BOOST_FUNCTION_VOID_FUNCTION_OBJ_INVOKER
 #undef BOOST_FUNCTION_FUNCTION_REF_INVOKER
 #undef BOOST_FUNCTION_VOID_FUNCTION_REF_INVOKER
-#undef BOOST_FUNCTION_MEMBER_INVOKER
-#undef BOOST_FUNCTION_VOID_MEMBER_INVOKER
 #undef BOOST_FUNCTION_GET_FUNCTION_INVOKER
 #undef BOOST_FUNCTION_GET_FUNCTION_OBJ_INVOKER
 #undef BOOST_FUNCTION_GET_FUNCTION_REF_INVOKER
-#undef BOOST_FUNCTION_GET_MEMBER_INVOKER
+#undef BOOST_FUNCTION_GET_MEM_FUNCTION_INVOKER
 #undef BOOST_FUNCTION_TEMPLATE_PARMS
 #undef BOOST_FUNCTION_TEMPLATE_ARGS
 #undef BOOST_FUNCTION_PARMS

Modified: branches/CMake/release/boost/fusion/adapted/array/detail/category_of_impl.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/array/detail/category_of_impl.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/array/detail/category_of_impl.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,7 +8,7 @@
 #if !defined(BOOST_FUSION_CATEGORY_OF_IMPL_27122005_1044)
 #define BOOST_FUSION_CATEGORY_OF_IMPL_27122005_1044
 
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion {
 

Modified: branches/CMake/release/boost/fusion/adapted/array/tag_of.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/array/tag_of.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/array/tag_of.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -25,7 +25,7 @@
     namespace traits
     {
         template<typename T, std::size_t N>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         struct tag_of<boost::array<T,N>, void >
 #else
         struct tag_of<boost::array<T,N> >

Modified: branches/CMake/release/boost/fusion/adapted/boost_tuple/tag_of.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/boost_tuple/tag_of.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/boost_tuple/tag_of.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -33,7 +33,7 @@
             class T0, class T1, class T2, class T3, class T4,
             class T5, class T6, class T7, class T8, class T9
>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         struct tag_of<tuples::tuple<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9>, void >
 #else
         struct tag_of<tuples::tuple<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> >
@@ -43,7 +43,7 @@
         };
 
         template <class Head, class Tail>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         struct tag_of<tuples::cons<Head, Tail>, void >
 #else
         struct tag_of<tuples::cons<Head, Tail> >

Modified: branches/CMake/release/boost/fusion/adapted/std_pair.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/std_pair.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/std_pair.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,7 +11,7 @@
 #include <boost/fusion/support/tag_of_fwd.hpp>
 #include <boost/fusion/adapted/struct.hpp>
 #include <boost/mpl/int.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion
 {
@@ -20,7 +20,7 @@
     namespace traits
     {
         template <typename T1, typename T2>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         struct tag_of<std::pair<T1, T2>, void >
 #else
         struct tag_of<std::pair<T1, T2> >

Modified: branches/CMake/release/boost/fusion/adapted/std_pair/detail/category_of_impl.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/std_pair/detail/category_of_impl.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/std_pair/detail/category_of_impl.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,7 +8,7 @@
 #if !defined(BOOST_FUSION_CATEGORY_OF_IMPL_24122005_1731)
 #define BOOST_FUSION_CATEGORY_OF_IMPL_24122005_1731
 
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion {
 

Modified: branches/CMake/release/boost/fusion/adapted/std_pair/std_pair_iterator.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/std_pair/std_pair_iterator.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/std_pair/std_pair_iterator.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,7 +14,7 @@
 #include <boost/mpl/if.hpp>
 #include <boost/mpl/int.hpp>
 #include <boost/mpl/minus.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion
 {

Modified: branches/CMake/release/boost/fusion/adapted/std_pair/tag_of.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/std_pair/tag_of.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/std_pair/tag_of.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,7 +10,7 @@
 
 #include <boost/fusion/support/tag_of_fwd.hpp>
 
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion {
 

Modified: branches/CMake/release/boost/fusion/adapted/struct/adapt_assoc_struct.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/struct/adapt_assoc_struct.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/struct/adapt_assoc_struct.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -31,7 +31,7 @@
 #include <boost/preprocessor/repetition/enum_params.hpp>
 #include <boost/preprocessor/cat.hpp>
 #include <boost/mpl/int.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion { namespace extension {
     template<typename Struct, typename Key>

Modified: branches/CMake/release/boost/fusion/adapted/struct/adapt_struct.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/struct/adapt_struct.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/struct/adapt_struct.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -27,7 +27,7 @@
 #include <boost/preprocessor/repetition/enum_params.hpp>
 #include <boost/preprocessor/cat.hpp>
 #include <boost/mpl/int.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 #define BOOST_FUSION_ADAPT_STRUCT(name, bseq) \
     BOOST_FUSION_ADAPT_STRUCT_I( \

Modified: branches/CMake/release/boost/fusion/adapted/struct/detail/category_of_impl.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/struct/detail/category_of_impl.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/struct/detail/category_of_impl.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,7 +8,7 @@
 #if !defined(BOOST_FUSION_CATEGORY_OF_IMPL_24122005_1731)
 #define BOOST_FUSION_CATEGORY_OF_IMPL_24122005_1731
 
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion
 {

Modified: branches/CMake/release/boost/fusion/adapted/struct/struct_iterator.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/adapted/struct/struct_iterator.hpp (original)
+++ branches/CMake/release/boost/fusion/adapted/struct/struct_iterator.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -17,7 +17,7 @@
 #include <boost/mpl/if.hpp>
 #include <boost/mpl/int.hpp>
 #include <boost/mpl/minus.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion
 {

Modified: branches/CMake/release/boost/fusion/algorithm/transformation/transform.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/algorithm/transformation/transform.hpp (original)
+++ branches/CMake/release/boost/fusion/algorithm/transformation/transform.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -22,7 +22,7 @@
         };
 
         template <typename Sequence, typename F>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         struct transform<Sequence, F, void_>
 #else
         struct transform<Sequence, F>

Modified: branches/CMake/release/boost/fusion/algorithm/transformation/zip.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/algorithm/transformation/zip.hpp (original)
+++ branches/CMake/release/boost/fusion/algorithm/transformation/zip.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -54,7 +54,7 @@
     namespace result_of
     {
         template< BOOST_PP_ENUM_PARAMS(ZIP_ITERATION, typename T) >
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct zip< BOOST_PP_ENUM_PARAMS(ZIP_ITERATION, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(ZIP_ITERATION), FUSION_MAX_ZIP_SEQUENCES, TEXT, void_) >
         #undef TEXT

Modified: branches/CMake/release/boost/fusion/container/generation/deque_tie.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/container/generation/deque_tie.hpp (original)
+++ branches/CMake/release/boost/fusion/container/generation/deque_tie.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -54,7 +54,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct deque_tie< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_DEQUE_SIZE, TEXT, void_) >
         #undef TEXT

Modified: branches/CMake/release/boost/fusion/container/generation/list_tie.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/container/generation/list_tie.hpp (original)
+++ branches/CMake/release/boost/fusion/container/generation/list_tie.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -54,7 +54,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct list_tie< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_LIST_SIZE, TEXT, void_) >
         #undef TEXT

Modified: branches/CMake/release/boost/fusion/container/generation/make_deque.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/container/generation/make_deque.hpp (original)
+++ branches/CMake/release/boost/fusion/container/generation/make_deque.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -73,7 +73,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct make_deque< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_DEQUE_SIZE, TEXT, void_) >
         #undef TEXT

Modified: branches/CMake/release/boost/fusion/container/generation/make_list.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/container/generation/make_list.hpp (original)
+++ branches/CMake/release/boost/fusion/container/generation/make_list.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -66,7 +66,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct make_list< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_LIST_SIZE, TEXT, void_) >
         #undef TEXT

Modified: branches/CMake/release/boost/fusion/container/generation/make_map.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/container/generation/make_map.hpp (original)
+++ branches/CMake/release/boost/fusion/container/generation/make_map.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -78,7 +78,7 @@
             BOOST_PP_ENUM_PARAMS(N, typename K)
           , BOOST_PP_ENUM_PARAMS(N, typename D)
>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
          #define TEXT(z, n, text) , text
          struct make_map<BOOST_PP_ENUM_PARAMS(N, K), BOOST_PP_ENUM_PARAMS(N, D) BOOST_PP_REPEAT_FROM_TO(N, FUSION_MAX_VECTOR_SIZE, TEXT, void_) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_VECTOR_SIZE, TEXT, void_)>
          #undef TEXT

Modified: branches/CMake/release/boost/fusion/container/generation/make_set.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/container/generation/make_set.hpp (original)
+++ branches/CMake/release/boost/fusion/container/generation/make_set.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -68,7 +68,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct make_set< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_SET_SIZE, TEXT, void_) >
         #undef TEXT

Modified: branches/CMake/release/boost/fusion/container/generation/make_vector.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/container/generation/make_vector.hpp (original)
+++ branches/CMake/release/boost/fusion/container/generation/make_vector.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -66,7 +66,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct make_vector< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_VECTOR_SIZE, TEXT, void_) >
         #undef TEXT

Modified: branches/CMake/release/boost/fusion/container/generation/map_tie.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/container/generation/map_tie.hpp (original)
+++ branches/CMake/release/boost/fusion/container/generation/map_tie.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -81,7 +81,7 @@
             BOOST_PP_ENUM_PARAMS(N, typename K)
           , BOOST_PP_ENUM_PARAMS(N, typename D)
>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
 
         struct map_tie<BOOST_PP_ENUM_PARAMS(N, K), BOOST_PP_ENUM_PARAMS(N, D) BOOST_PP_REPEAT_FROM_TO(N, FUSION_MAX_MAP_SIZE, TEXT, void_) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_MAP_SIZE, TEXT, void_)>

Modified: branches/CMake/release/boost/fusion/container/generation/vector_tie.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/container/generation/vector_tie.hpp (original)
+++ branches/CMake/release/boost/fusion/container/generation/vector_tie.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -53,7 +53,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct vector_tie< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_VECTOR_SIZE, TEXT, void_) >
         #undef TEXT

Modified: branches/CMake/release/boost/fusion/container/list/detail/end_impl.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/container/list/detail/end_impl.hpp (original)
+++ branches/CMake/release/boost/fusion/container/list/detail/end_impl.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -39,7 +39,7 @@
                 type;
     
                 static type
- call(Sequence& t)
+ call(Sequence&)
                 {
                     return type();
                 }

Modified: branches/CMake/release/boost/fusion/functional/invocation/invoke.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/functional/invocation/invoke.hpp (original)
+++ branches/CMake/release/boost/fusion/functional/invocation/invoke.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 /*=============================================================================
- Copyright (c) 2005-2006 Joao Abecasis
+ Copyright (c) 2005-2006 João Abecasis
     Copyright (c) 2006-2007 Tobias Schwinger
   
     Use modification and distribution are subject to the Boost Software

Modified: branches/CMake/release/boost/fusion/functional/invocation/invoke_function_object.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/functional/invocation/invoke_function_object.hpp (original)
+++ branches/CMake/release/boost/fusion/functional/invocation/invoke_function_object.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 /*=============================================================================
- Copyright (c) 2005-2006 Joao Abecasis
+ Copyright (c) 2005-2006 João Abecasis
     Copyright (c) 2006-2007 Tobias Schwinger
   
     Use modification and distribution are subject to the Boost Software

Modified: branches/CMake/release/boost/fusion/functional/invocation/invoke_procedure.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/functional/invocation/invoke_procedure.hpp (original)
+++ branches/CMake/release/boost/fusion/functional/invocation/invoke_procedure.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 /*=============================================================================
- Copyright (c) 2005-2006 Joao Abecasis
+ Copyright (c) 2005-2006 João Abecasis
     Copyright (c) 2006-2007 Tobias Schwinger
   
     Use modification and distribution are subject to the Boost Software

Modified: branches/CMake/release/boost/fusion/support/tag_of.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/support/tag_of.hpp (original)
+++ branches/CMake/release/boost/fusion/support/tag_of.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,7 +16,7 @@
 #include <boost/mpl/assert.hpp>
 #include <boost/mpl/bool.hpp>
 #include <boost/mpl/if.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost
 {

Modified: branches/CMake/release/boost/fusion/view/transform_view/transform_view.hpp
==============================================================================
--- branches/CMake/release/boost/fusion/view/transform_view/transform_view.hpp (original)
+++ branches/CMake/release/boost/fusion/view/transform_view/transform_view.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -73,7 +73,7 @@
 
     // Unary Version
     template <typename Sequence, typename F>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
     struct transform_view<Sequence, F, void_> : sequence_base<transform_view<Sequence, F, void_> >
 #else
     struct transform_view<Sequence, F> : sequence_base<transform_view<Sequence, F> >

Modified: branches/CMake/release/boost/gil/algorithm.hpp
==============================================================================
--- branches/CMake/release/boost/gil/algorithm.hpp (original)
+++ branches/CMake/release/boost/gil/algorithm.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,9 +16,11 @@
 
 #include <cassert>
 #include <cstddef>
+#include <cstring>
 #include <algorithm>
 #include <iterator>
 #include <memory>
+#include <typeinfo>
 #include "gil_config.hpp"
 #include "gil_concept.hpp"
 #include "color_base_algorithm.hpp"
@@ -31,7 +33,7 @@
 /// \brief Some basic STL-style algorithms when applied to image views
 /// \author Lubomir Bourdev and Hailin Jin \n
 /// Adobe Systems Incorporated
-/// \date 2005-2007 \n Last updated on May 6, 2007
+/// \date 2005-2008 \n Last updated on March 12, 2008
 ///
 ////////////////////////////////////////////////////////////////////////////////////////
 

Modified: branches/CMake/release/boost/gil/bit_aligned_pixel_reference.hpp
==============================================================================
--- branches/CMake/release/boost/gil/bit_aligned_pixel_reference.hpp (original)
+++ branches/CMake/release/boost/gil/bit_aligned_pixel_reference.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
     Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
     http://www.boost.org/LICENSE_1_0.txt).
 
- See http://opensource.adobe.com/gil for most recent version including documentation.
+ See http://stlab.adobe.com/gil for most recent version including documentation.
 */
 
 /*************************************************************************************************/
@@ -121,7 +121,7 @@
           bool IsMutable>
 struct bit_aligned_pixel_reference {
     BOOST_STATIC_CONSTANT(int, bit_size = (mpl::accumulate<ChannelBitSizes, mpl::int_<0>, mpl::plus<mpl::_1, mpl::_2> >::type::value));
- typedef bit_range<bit_size,IsMutable> bit_range_t;
+ typedef boost::gil::bit_range<bit_size,IsMutable> bit_range_t;
     typedef BitField bitfield_t;
     typedef typename mpl::if_c<IsMutable,unsigned char*,const unsigned char*>::type data_ptr_t;
 
@@ -283,19 +283,19 @@
 // Having three overloads allows us to swap between different (but compatible) models of PixelConcept
 
 template <typename B, typename C, typename L, typename R> inline
-void swap(boost::gil::bit_aligned_pixel_reference<B,C,L,true> x, R& y) {
+void swap(const boost::gil::bit_aligned_pixel_reference<B,C,L,true> x, R& y) {
     boost::gil::swap_proxy<typename boost::gil::bit_aligned_pixel_reference<B,C,L,true>::value_type>(x,y);
 }
 
 
 template <typename B, typename C, typename L> inline
-void swap(typename boost::gil::bit_aligned_pixel_reference<B,C,L,true>::value_type& x, boost::gil::bit_aligned_pixel_reference<B,C,L,true> y) {
+void swap(typename boost::gil::bit_aligned_pixel_reference<B,C,L,true>::value_type& x, const boost::gil::bit_aligned_pixel_reference<B,C,L,true> y) {
     boost::gil::swap_proxy<typename boost::gil::bit_aligned_pixel_reference<B,C,L,true>::value_type>(x,y);
 }
 
 
 template <typename B, typename C, typename L> inline
-void swap(boost::gil::bit_aligned_pixel_reference<B,C,L,true> x, boost::gil::bit_aligned_pixel_reference<B,C,L,true> y) {
+void swap(const boost::gil::bit_aligned_pixel_reference<B,C,L,true> x, const boost::gil::bit_aligned_pixel_reference<B,C,L,true> y) {
     boost::gil::swap_proxy<typename boost::gil::bit_aligned_pixel_reference<B,C,L,true>::value_type>(x,y);
 }
 } // namespace std

Modified: branches/CMake/release/boost/gil/channel.hpp
==============================================================================
--- branches/CMake/release/boost/gil/channel.hpp (original)
+++ branches/CMake/release/boost/gil/channel.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
     Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
     http://www.boost.org/LICENSE_1_0.txt).
 
- See http://opensource.adobe.com/gil for most recent version including documentation.
+ See http://stlab.adobe.com/gil for most recent version including documentation.
 */
 
 /*************************************************************************************************/
@@ -264,7 +264,7 @@
 
 template <>
 struct static_copy_bytes<0> {
- void operator()(const unsigned char* from, unsigned char* to) const {}
+ void operator()(const unsigned char* , unsigned char*) const {}
 };
 
 template <typename Derived, typename BitField, int NumBits, bool Mutable>
@@ -425,7 +425,7 @@
 /// \ingroup PackedChannelReferenceModel
 /// \brief swap for packed_channel_reference
 template <typename BF, int FB, int NB, bool M, typename R> inline
-void swap(boost::gil::packed_channel_reference<BF,FB,NB,M> x, R& y) {
+void swap(const boost::gil::packed_channel_reference<BF,FB,NB,M> x, R& y) {
     boost::gil::swap_proxy<typename boost::gil::packed_channel_reference<BF,FB,NB,M>::value_type>(x,y);
 }
 
@@ -433,7 +433,7 @@
 /// \ingroup PackedChannelReferenceModel
 /// \brief swap for packed_channel_reference
 template <typename BF, int FB, int NB, bool M> inline
-void swap(typename boost::gil::packed_channel_reference<BF,FB,NB,M>::value_type& x, boost::gil::packed_channel_reference<BF,FB,NB,M> y) {
+void swap(typename boost::gil::packed_channel_reference<BF,FB,NB,M>::value_type& x, const boost::gil::packed_channel_reference<BF,FB,NB,M> y) {
     boost::gil::swap_proxy<typename boost::gil::packed_channel_reference<BF,FB,NB,M>::value_type>(x,y);
 }
 
@@ -441,7 +441,7 @@
 /// \ingroup PackedChannelReferenceModel
 /// \brief swap for packed_channel_reference
 template <typename BF, int FB, int NB, bool M> inline
-void swap(boost::gil::packed_channel_reference<BF,FB,NB,M> x, boost::gil::packed_channel_reference<BF,FB,NB,M> y) {
+void swap(const boost::gil::packed_channel_reference<BF,FB,NB,M> x, const boost::gil::packed_channel_reference<BF,FB,NB,M> y) {
     boost::gil::swap_proxy<typename boost::gil::packed_channel_reference<BF,FB,NB,M>::value_type>(x,y);
 }
 } // namespace std
@@ -545,7 +545,7 @@
 /// \ingroup PackedChannelDynamicReferenceModel
 /// \brief swap for packed_dynamic_channel_reference
 template <typename BF, int NB, bool M, typename R> inline
-void swap(boost::gil::packed_dynamic_channel_reference<BF,NB,M> x, R& y) {
+void swap(const boost::gil::packed_dynamic_channel_reference<BF,NB,M> x, R& y) {
     boost::gil::swap_proxy<typename boost::gil::packed_dynamic_channel_reference<BF,NB,M>::value_type>(x,y);
 }
 
@@ -553,7 +553,7 @@
 /// \ingroup PackedChannelDynamicReferenceModel
 /// \brief swap for packed_dynamic_channel_reference
 template <typename BF, int NB, bool M> inline
-void swap(typename boost::gil::packed_dynamic_channel_reference<BF,NB,M>::value_type& x, boost::gil::packed_dynamic_channel_reference<BF,NB,M> y) {
+void swap(typename boost::gil::packed_dynamic_channel_reference<BF,NB,M>::value_type& x, const boost::gil::packed_dynamic_channel_reference<BF,NB,M> y) {
     boost::gil::swap_proxy<typename boost::gil::packed_dynamic_channel_reference<BF,NB,M>::value_type>(x,y);
 }
 
@@ -561,7 +561,7 @@
 /// \ingroup PackedChannelDynamicReferenceModel
 /// \brief swap for packed_dynamic_channel_reference
 template <typename BF, int NB, bool M> inline
-void swap(boost::gil::packed_dynamic_channel_reference<BF,NB,M> x, boost::gil::packed_dynamic_channel_reference<BF,NB,M> y) {
+void swap(const boost::gil::packed_dynamic_channel_reference<BF,NB,M> x, const boost::gil::packed_dynamic_channel_reference<BF,NB,M> y) {
     boost::gil::swap_proxy<typename boost::gil::packed_dynamic_channel_reference<BF,NB,M>::value_type>(x,y);
 }
 } // namespace std

Modified: branches/CMake/release/boost/gil/color_base.hpp
==============================================================================
--- branches/CMake/release/boost/gil/color_base.hpp (original)
+++ branches/CMake/release/boost/gil/color_base.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
     Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
     http://www.boost.org/LICENSE_1_0.txt).
 
- See http://opensource.adobe.com/gil for most recent version including documentation.
+ See http://stlab.adobe.com/gil for most recent version including documentation.
 */
 
 /*************************************************************************************************/
@@ -129,7 +129,7 @@
           _v1(*memunit_advanced(semantic_at_c<1>(ptr),diff)) {}
 
     // Support for planar_pixel_reference operator[]
- Element at_c_dynamic(size_t i) const {
+ Element at_c_dynamic(std::size_t i) const {
         if (i==0) return _v0;
         return _v1;
     }
@@ -182,7 +182,7 @@
           _v2(*memunit_advanced(semantic_at_c<2>(ptr),diff)) {}
 
     // Support for planar_pixel_reference operator[]
- Element at_c_dynamic(size_t i) const {
+ Element at_c_dynamic(std::size_t i) const {
         switch (i) {
             case 0: return _v0;
             case 1: return _v1;
@@ -245,7 +245,7 @@
           _v3(*memunit_advanced(semantic_at_c<3>(ptr),diff)) {}
 
     // Support for planar_pixel_reference operator[]
- Element at_c_dynamic(size_t i) const {
+ Element at_c_dynamic(std::size_t i) const {
         switch (i) {
             case 0: return _v0;
             case 1: return _v1;
@@ -316,7 +316,7 @@
           _v4(*memunit_advanced(semantic_at_c<4>(ptr),diff)) {}
 
     // Support for planar_pixel_reference operator[]
- Element at_c_dynamic(size_t i) const {
+ Element at_c_dynamic(std::size_t i) const {
         switch (i) {
             case 0: return _v0;
             case 1: return _v1;

Modified: branches/CMake/release/boost/gil/device_n.hpp
==============================================================================
--- branches/CMake/release/boost/gil/device_n.hpp (original)
+++ branches/CMake/release/boost/gil/device_n.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
     Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
     http://www.boost.org/LICENSE_1_0.txt).
 
- See http://opensource.adobe.com/gil for most recent version including documentation.
+ See http://stlab.adobe.com/gil for most recent version including documentation.
 */
 /*************************************************************************************************/
 
@@ -64,7 +64,8 @@
 template <typename IC>
 inline typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<2> > >::view_t
 planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, std::ptrdiff_t rowsize_in_bytes) {
- return typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<2> > >::view_t(width, height, planar_pixel_iterator<IC,devicen_t<2> >(c0,c1), rowsize_in_bytes);
+ typedef typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<2> > >::view_t view_t;
+ return view_t(width, height, typename view_t::locator(typename view_t::x_iterator(c0,c1), rowsize_in_bytes));
 }
 
 /// \ingroup ImageViewConstructors
@@ -72,7 +73,8 @@
 template <typename IC>
 inline typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<3> > >::view_t
 planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, IC c2, std::ptrdiff_t rowsize_in_bytes) {
- return typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<3> > >::view_t(width, height, planar_pixel_iterator<IC,devicen_t<3> >(c0,c1,c2), rowsize_in_bytes);
+ typedef typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<3> > >::view_t view_t;
+ return view_t(width, height, typename view_t::locator(typename view_t::x_iterator(c0,c1,c2), rowsize_in_bytes));
 }
 
 /// \ingroup ImageViewConstructors
@@ -80,7 +82,8 @@
 template <typename IC>
 inline typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<4> > >::view_t
 planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, IC c2, IC c3, std::ptrdiff_t rowsize_in_bytes) {
- return typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<4> > >::view_t(width, height, planar_pixel_iterator<IC,devicen_t<4> >(c0,c1,c2,c3), rowsize_in_bytes);
+ typedef typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<4> > >::view_t view_t;
+ return view_t(width, height, typename view_t::locator(typename view_t::x_iterator(c0,c1,c2,c3), rowsize_in_bytes));
 }
 
 /// \ingroup ImageViewConstructors
@@ -88,7 +91,8 @@
 template <typename IC>
 inline typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<5> > >::view_t
 planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, IC c2, IC c3, IC c4, std::ptrdiff_t rowsize_in_bytes) {
- return typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<5> > >::view_t(width, height, planar_pixel_iterator<IC,devicen_t<5> >(c0,c1,c2,c3,c4), rowsize_in_bytes);
+ typedef typename type_from_x_iterator<planar_pixel_iterator<IC,devicen_t<5> > >::view_t view_t;
+ return view_t(width, height, typename view_t::locator(typename view_t::x_iterator(c0,c1,c2,c3,c4), rowsize_in_bytes));
 }
 
 } } // namespace boost::gil

Modified: branches/CMake/release/boost/gil/extension/io/png_io_private.hpp
==============================================================================
--- branches/CMake/release/boost/gil/extension/io/png_io_private.hpp (original)
+++ branches/CMake/release/boost/gil/extension/io/png_io_private.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
     Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
     http://www.boost.org/LICENSE_1_0.txt).
 
- See http://opensource.adobe.com/gil for most recent version including documentation.
+ See http://stlab.adobe.com/gil for most recent version including documentation.
 */
 /*************************************************************************************************/
 
@@ -28,7 +28,7 @@
 
 namespace detail {
 
-static const size_t PNG_BYTES_TO_CHECK = 4;
+static const std::size_t PNG_BYTES_TO_CHECK = 4;
 
 // lbourdev: These can be greatly simplified, for example:
 template <typename Cs> struct png_color_type {BOOST_STATIC_CONSTANT(int,color_type=0);};

Modified: branches/CMake/release/boost/gil/gil_concept.hpp
==============================================================================
--- branches/CMake/release/boost/gil/gil_concept.hpp (original)
+++ branches/CMake/release/boost/gil/gil_concept.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -702,8 +702,8 @@
         typedef typename kth_element_type<ColorBase,num_elements-1>::type TN;
 
         BOOST_STATIC_ASSERT((is_same<T0,TN>::value)); // better than nothing
- typedef typename kth_element_const_reference_type<ColorBase,0>::type CR0;
- CR0 e0=dynamic_at_c(cb,0);
+ typedef typename kth_element_const_reference_type<ColorBase,0>::type CRef0;
+ CRef0 e0=dynamic_at_c(cb,0);
     }
     ColorBase cb;
 };

Modified: branches/CMake/release/boost/gil/planar_pixel_reference.hpp
==============================================================================
--- branches/CMake/release/boost/gil/planar_pixel_reference.hpp (original)
+++ branches/CMake/release/boost/gil/planar_pixel_reference.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
     Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
     http://www.boost.org/LICENSE_1_0.txt).
 
- See http://opensource.adobe.com/gil for most recent version including documentation.
+ See http://stlab.adobe.com/gil for most recent version including documentation.
 */
 
 /*************************************************************************************************/
@@ -162,7 +162,7 @@
 /// \brief swap for planar_pixel_reference
 /// \ingroup PixelModelPlanarRef
 template <typename CR, typename CS, typename R> inline
-void swap(boost::gil::planar_pixel_reference<CR,CS> x, R& y) {
+void swap(const boost::gil::planar_pixel_reference<CR,CS> x, R& y) {
     boost::gil::swap_proxy<typename boost::gil::planar_pixel_reference<CR,CS>::value_type>(x,y);
 }
 
@@ -170,7 +170,7 @@
 /// \brief swap for planar_pixel_reference
 /// \ingroup PixelModelPlanarRef
 template <typename CR, typename CS> inline
-void swap(typename boost::gil::planar_pixel_reference<CR,CS>::value_type& x, boost::gil::planar_pixel_reference<CR,CS> y) {
+void swap(typename boost::gil::planar_pixel_reference<CR,CS>::value_type& x, const boost::gil::planar_pixel_reference<CR,CS> y) {
     boost::gil::swap_proxy<typename boost::gil::planar_pixel_reference<CR,CS>::value_type>(x,y);
 }
 
@@ -178,7 +178,7 @@
 /// \brief swap for planar_pixel_reference
 /// \ingroup PixelModelPlanarRef
 template <typename CR, typename CS> inline
-void swap(boost::gil::planar_pixel_reference<CR,CS> x, boost::gil::planar_pixel_reference<CR,CS> y) {
+void swap(const boost::gil::planar_pixel_reference<CR,CS> x, const boost::gil::planar_pixel_reference<CR,CS> y) {
     boost::gil::swap_proxy<typename boost::gil::planar_pixel_reference<CR,CS>::value_type>(x,y);
 }
 } // namespace std

Modified: branches/CMake/release/boost/graph/detail/read_graphviz_spirit.hpp
==============================================================================
--- branches/CMake/release/boost/graph/detail/read_graphviz_spirit.hpp (original)
+++ branches/CMake/release/boost/graph/detail/read_graphviz_spirit.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -53,6 +53,7 @@
 #include <utility>
 #include <map>
 #include <boost/graph/graphviz.hpp>
+#include <boost/throw_exception.hpp>
 
 namespace phoenix {
 // Workaround: std::map::operator[] uses a different return type than all
@@ -292,12 +293,12 @@
 
     void check_undirected() {
       if(self.graph_.is_directed())
- throw boost::undirected_graph_error();
+ boost::throw_exception(boost::undirected_graph_error());
     }
 
     void check_directed() {
       if(!self.graph_.is_directed())
- throw boost::directed_graph_error();
+ boost::throw_exception(boost::directed_graph_error());
     }
     
     void memoize_node() {

Modified: branches/CMake/release/boost/intrusive_ptr.hpp
==============================================================================
--- branches/CMake/release/boost/intrusive_ptr.hpp (original)
+++ branches/CMake/release/boost/intrusive_ptr.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -22,9 +22,17 @@
 
 #include <boost/assert.hpp>
 #include <boost/detail/workaround.hpp>
+#include <boost/detail/sp_convertible.hpp>
 
-#include <functional> // for std::less
+#include <boost/config/no_tr1/functional.hpp> // for std::less
+
+#if !defined(BOOST_NO_IOSTREAM)
+#if !defined(BOOST_NO_IOSFWD)
 #include <iosfwd> // for std::basic_ostream
+#else
+#include <ostream>
+#endif
+#endif
 
 
 namespace boost
@@ -66,9 +74,19 @@
 
 #if !defined(BOOST_NO_MEMBER_TEMPLATES) || defined(BOOST_MSVC6_MEMBER_TEMPLATES)
 
- template<class U> intrusive_ptr(intrusive_ptr<U> const & rhs): p_(rhs.get())
+ template<class U>
+#if !defined( BOOST_SP_NO_SP_CONVERTIBLE )
+
+ intrusive_ptr( intrusive_ptr<U> const & rhs, typename detail::sp_enable_if_convertible<U,T>::type = detail::sp_empty() )
+
+#else
+
+ intrusive_ptr( intrusive_ptr<U> const & rhs )
+
+#endif
+ : p_( rhs.get() )
     {
- if(p_ != 0) intrusive_ptr_add_ref(p_);
+ if( p_ != 0 ) intrusive_ptr_add_ref( p_ );
     }
 
 #endif
@@ -105,6 +123,11 @@
         return *this;
     }
 
+ void reset()
+ {
+ this_type().swap( *this );
+ }
+
     void reset( T * rhs )
     {
         this_type( rhs ).swap( *this );
@@ -246,7 +269,9 @@
 
 // operator<<
 
-#if defined(__GNUC__) && (__GNUC__ < 3)
+#if !defined(BOOST_NO_IOSTREAM)
+
+#if defined(BOOST_NO_TEMPLATED_IOSTREAMS) || ( defined(__GNUC__) && (__GNUC__ < 3) )
 
 template<class Y> std::ostream & operator<< (std::ostream & os, intrusive_ptr<Y> const & p)
 {
@@ -275,6 +300,8 @@
 
 #endif // __GNUC__ < 3
 
+#endif // !defined(BOOST_NO_IOSTREAM)
+
 } // namespace boost
 
 #ifdef BOOST_MSVC

Modified: branches/CMake/release/boost/iterator/detail/config_def.hpp
==============================================================================
--- branches/CMake/release/boost/iterator/detail/config_def.hpp (original)
+++ branches/CMake/release/boost/iterator/detail/config_def.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -49,7 +49,9 @@
 #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \
     || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x531)) \
     || (BOOST_WORKAROUND(BOOST_INTEL_CXX_VERSION, <= 700) && defined(_MSC_VER)) \
- || BOOST_WORKAROUND(__DECCXX_VER, BOOST_TESTED_AT(60590042))
+ || BOOST_WORKAROUND(__DECCXX_VER, BOOST_TESTED_AT(60590042)) \
+ || BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x590))
+
 # define BOOST_NO_LVALUE_RETURN_DETECTION
 
 # if 0 // test code

Modified: branches/CMake/release/boost/math/bindings/rr.hpp
==============================================================================
--- branches/CMake/release/boost/math/bindings/rr.hpp (original)
+++ branches/CMake/release/boost/math/bindings/rr.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -79,11 +79,11 @@
       assign_large_int(c);
    }
 #ifdef BOOST_HAS_LONG_LONG
- RR(unsigned long long c)
+ RR(boost::ulong_long_type c)
    {
       assign_large_int(c);
    }
- RR(long long c)
+ RR(boost::long_long_type c)
    {
       assign_large_int(c);
    }
@@ -115,8 +115,8 @@
    RR& operator=(long c) { assign_large_int(c); return *this; }
    RR& operator=(unsigned long c) { assign_large_int(c); return *this; }
 #ifdef BOOST_HAS_LONG_LONG
- RR& operator=(long long c) { assign_large_int(c); return *this; }
- RR& operator=(unsigned long long c) { assign_large_int(c); return *this; }
+ RR& operator=(boost::long_long_type c) { assign_large_int(c); return *this; }
+ RR& operator=(boost::ulong_long_type c) { assign_large_int(c); return *this; }
 #endif
    RR& operator=(float c) { m_value = c; return *this; }
    RR& operator=(double c) { m_value = c; return *this; }
@@ -697,6 +697,18 @@
       return x - factor * y;
    }
 
+ template <class Policy>
+ inline int iround(RR const& x, const Policy& pol)
+ {
+ return tools::real_cast<int>(round(x, pol));
+ }
+
+ template <class Policy>
+ inline int itrunc(RR const& x, const Policy& pol)
+ {
+ return tools::real_cast<int>(trunc(x, pol));
+ }
+
 } // namespace ntl
 
 } // namespace math

Modified: branches/CMake/release/boost/math/common_factor_rt.hpp
==============================================================================
--- branches/CMake/release/boost/math/common_factor_rt.hpp (original)
+++ branches/CMake/release/boost/math/common_factor_rt.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -303,7 +303,7 @@
     BOOST_PRIVATE_GCD_UF( unsigned long );
 
 #ifdef BOOST_HAS_LONG_LONG
- BOOST_PRIVATE_GCD_UF( unsigned long long );
+ BOOST_PRIVATE_GCD_UF( boost::ulong_long_type );
 #elif defined(BOOST_HAS_MS_INT64)
     BOOST_PRIVATE_GCD_UF( unsigned __int64 );
 #endif
@@ -325,7 +325,7 @@
     BOOST_PRIVATE_GCD_SF( char, unsigned char ); // should work even if unsigned
 
 #ifdef BOOST_HAS_LONG_LONG
- BOOST_PRIVATE_GCD_SF( long long, unsigned long long );
+ BOOST_PRIVATE_GCD_SF( boost::long_long_type, boost::ulong_long_type );
 #elif defined(BOOST_HAS_MS_INT64)
     BOOST_PRIVATE_GCD_SF( __int64, unsigned __int64 );
 #endif

Modified: branches/CMake/release/boost/math/concepts/real_concept.hpp
==============================================================================
--- branches/CMake/release/boost/math/concepts/real_concept.hpp (original)
+++ branches/CMake/release/boost/math/concepts/real_concept.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -22,9 +22,14 @@
 
 #include <boost/config.hpp>
 #include <boost/limits.hpp>
-#include <boost/math/tools/real_cast.hpp>
+#include <boost/math/special_functions/round.hpp>
+#include <boost/math/special_functions/trunc.hpp>
+#include <boost/math/special_functions/modf.hpp>
 #include <boost/math/tools/precision.hpp>
 #include <boost/math/policies/policy.hpp>
+#if defined(__SGI_STL_PORT)
+# include <boost/math/tools/real_cast.hpp>
+#endif
 #include <ostream>
 #include <istream>
 #include <cmath>
@@ -38,6 +43,12 @@
 namespace concepts
 {
 
+#ifdef BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS
+ typedef double real_concept_base_type;
+#else
+ typedef long double real_concept_base_type;
+#endif
+
 class real_concept
 {
 public:
@@ -55,12 +66,15 @@
    real_concept(int c) : m_value(c){}
    real_concept(unsigned long c) : m_value(c){}
    real_concept(long c) : m_value(c){}
-#if defined(BOOST_HAS_LONG_LONG) || defined(__DECCXX) || defined(__SUNPRO_CC)
- real_concept(unsigned long long c) : m_value(static_cast<long double>(c)){}
- real_concept(long long c) : m_value(static_cast<long double>(c)){}
+#if defined(__DECCXX) || defined(__SUNPRO_CC)
+ real_concept(unsigned long long c) : m_value(static_cast<real_concept_base_type>(c)){}
+ real_concept(long long c) : m_value(static_cast<real_concept_base_type>(c)){}
+#elif defined(BOOST_HAS_LONG_LONG)
+ real_concept(boost::ulong_long_type c) : m_value(static_cast<real_concept_base_type>(c)){}
+ real_concept(boost::long_long_type c) : m_value(static_cast<real_concept_base_type>(c)){}
 #elif defined(BOOST_HAS_MS_INT64)
- real_concept(unsigned __int64 c) : m_value(static_cast<long double>(c)){}
- real_concept(__int64 c) : m_value(static_cast<long double>(c)){}
+ real_concept(unsigned __int64 c) : m_value(static_cast<real_concept_base_type>(c)){}
+ real_concept(__int64 c) : m_value(static_cast<real_concept_base_type>(c)){}
 #endif
    real_concept(float c) : m_value(c){}
    real_concept(double c) : m_value(c){}
@@ -80,15 +94,15 @@
    real_concept& operator=(long c) { m_value = c; return *this; }
    real_concept& operator=(unsigned long c) { m_value = c; return *this; }
 #ifdef BOOST_HAS_LONG_LONG
- real_concept& operator=(long long c) { m_value = static_cast<long double>(c); return *this; }
- real_concept& operator=(unsigned long long c) { m_value = static_cast<long double>(c); return *this; }
+ real_concept& operator=(boost::long_long_type c) { m_value = static_cast<real_concept_base_type>(c); return *this; }
+ real_concept& operator=(boost::ulong_long_type c) { m_value = static_cast<real_concept_base_type>(c); return *this; }
 #endif
    real_concept& operator=(float c) { m_value = c; return *this; }
    real_concept& operator=(double c) { m_value = c; return *this; }
    real_concept& operator=(long double c) { m_value = c; return *this; }
 
    // Access:
- long double value()const{ return m_value; }
+ real_concept_base_type value()const{ return m_value; }
 
    // Member arithmetic:
    real_concept& operator+=(const real_concept& other)
@@ -103,9 +117,13 @@
    { return -m_value; }
    real_concept const& operator+()const
    { return *this; }
+ real_concept& operator++()
+ { ++m_value; return *this; }
+ real_concept& operator--()
+ { --m_value; return *this; }
 
 private:
- long double m_value;
+ real_concept_base_type m_value;
 };
 
 // Non-member arithmetic:
@@ -148,40 +166,6 @@
 inline bool operator >= (const real_concept& a, const real_concept& b)
 { return a.value() >= b.value(); }
 
-#if 0
-// Non-member mixed compare:
-template <class T>
-inline bool operator == (const T& a, const real_concept& b)
-{
- return a == b.value();
-}
-template <class T>
-inline bool operator != (const T& a, const real_concept& b)
-{
- return a != b.value();
-}
-template <class T>
-inline bool operator < (const T& a, const real_concept& b)
-{
- return a < b.value();
-}
-template <class T>
-inline bool operator > (const T& a, const real_concept& b)
-{
- return a > b.value();
-}
-template <class T>
-inline bool operator <= (const T& a, const real_concept& b)
-{
- return a <= b.value();
-}
-template <class T>
-inline bool operator >= (const T& a, const real_concept& b)
-{
- return a >= b.value();
-}
-#endif // Non-member mixed compare:
-
 // Non-member functions:
 inline real_concept acos(real_concept a)
 { return std::acos(a.value()); }
@@ -196,6 +180,8 @@
 inline real_concept ceil(real_concept a)
 { return std::ceil(a.value()); }
 #ifndef BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS
+// I've seen std::fmod(long double) crash on some platforms
+// so use fmodl instead:
 #ifdef _WIN32_WCE
 //
 // Ugly workaround for macro fmodl:
@@ -221,8 +207,8 @@
 { return std::floor(a.value()); }
 inline real_concept modf(real_concept a, real_concept* ipart)
 {
- long double ip;
- long double result = std::modf(a.value(), &ip);
+ real_concept_base_type ip;
+ real_concept_base_type result = std::modf(a.value(), &ip);
    *ipart = ip;
    return result;
 }
@@ -243,7 +229,7 @@
 { return std::pow(a.value(), b); }
 #else
 inline real_concept pow(real_concept a, int b)
-{ return std::pow(a.value(), static_cast<long double>(b)); }
+{ return std::pow(a.value(), static_cast<real_concept_base_type>(b)); }
 #endif
 inline real_concept sin(real_concept a)
 { return std::sin(a.value()); }
@@ -254,6 +240,47 @@
 inline real_concept tanh(real_concept a)
 { return std::tanh(a.value()); }
 
+//
+// Conversion and truncation routines:
+//
+template <class Policy>
+inline int iround(const concepts::real_concept& v, const Policy& pol)
+{ return boost::math::iround(v.value(), pol); }
+inline int iround(const concepts::real_concept& v)
+{ return boost::math::iround(v.value(), policies::policy<>()); }
+template <class Policy>
+inline long lround(const concepts::real_concept& v, const Policy& pol)
+{ return boost::math::lround(v.value(), pol); }
+inline long lround(const concepts::real_concept& v)
+{ return boost::math::lround(v.value(), policies::policy<>()); }
+
+#ifdef BOOST_HAS_LONG_LONG
+template <class Policy>
+inline boost::long_long_type llround(const concepts::real_concept& v, const Policy& pol)
+{ return boost::math::llround(v.value(), pol); }
+inline boost::long_long_type llround(const concepts::real_concept& v)
+{ return boost::math::llround(v.value(), policies::policy<>()); }
+#endif
+
+template <class Policy>
+inline int itrunc(const concepts::real_concept& v, const Policy& pol)
+{ return boost::math::itrunc(v.value(), pol); }
+inline int itrunc(const concepts::real_concept& v)
+{ return boost::math::itrunc(v.value(), policies::policy<>()); }
+template <class Policy>
+inline long ltrunc(const concepts::real_concept& v, const Policy& pol)
+{ return boost::math::ltrunc(v.value(), pol); }
+inline long ltrunc(const concepts::real_concept& v)
+{ return boost::math::ltrunc(v.value(), policies::policy<>()); }
+
+#ifdef BOOST_HAS_LONG_LONG
+template <class Policy>
+inline boost::long_long_type lltrunc(const concepts::real_concept& v, const Policy& pol)
+{ return boost::math::lltrunc(v.value(), pol); }
+inline boost::long_long_type lltrunc(const concepts::real_concept& v)
+{ return boost::math::lltrunc(v.value(), policies::policy<>()); }
+#endif
+
 // Streaming:
 template <class charT, class traits>
 inline std::basic_ostream<charT, traits>& operator<<(std::basic_ostream<charT, traits>& os, const real_concept& a)
@@ -272,15 +299,15 @@
    is >> v;
    a = v;
    return is;
-#elif defined(__SGI_STL_PORT)
+#elif defined(__SGI_STL_PORT) || defined(_RWSTD_VER) || defined(__LIBCOMO__)
    std::string s;
- long double d;
+ real_concept_base_type d;
    is >> s;
    std::sscanf(s.c_str(), "%Lf", &d);
    a = d;
    return is;
 #else
- long double v;
+ real_concept_base_type v;
    is >> v;
    a = v;
    return is;
@@ -291,6 +318,63 @@
 
 namespace tools
 {
+
+template <>
+inline concepts::real_concept max_value<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
+{
+ return max_value<concepts::real_concept_base_type>();
+}
+
+template <>
+inline concepts::real_concept min_value<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
+{
+ return min_value<concepts::real_concept_base_type>();
+}
+
+template <>
+inline concepts::real_concept log_max_value<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
+{
+ return log_max_value<concepts::real_concept_base_type>();
+}
+
+template <>
+inline concepts::real_concept log_min_value<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
+{
+ return log_min_value<concepts::real_concept_base_type>();
+}
+
+template <>
+inline concepts::real_concept epsilon<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
+{
+#ifdef __SUNPRO_CC
+ return std::numeric_limits<concepts::real_concept_base_type>::epsilon();
+#else
+ return tools::epsilon<concepts::real_concept_base_type>();
+#endif
+}
+
+template <>
+inline int digits<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
+{
+ // Assume number of significand bits is same as real_concept_base_type,
+ // unless std::numeric_limits<T>::is_specialized to provide digits.
+ return tools::digits<concepts::real_concept_base_type>();
+ // Note that if numeric_limits real concept is NOT specialized to provide digits10
+ // (or max_digits10) then the default precision of 6 decimal digits will be used
+ // by Boost test (giving misleading error messages like
+ // "difference between {9.79796} and {9.79796} exceeds 5.42101e-19%"
+ // and by Boost lexical cast and serialization causing loss of accuracy.
+}
+
+} // namespace tools
+
+#if defined(__SGI_STL_PORT)
+//
+// We shouldn't really need these type casts any more, but there are some
+// STLport iostream bugs we work around by using them....
+//
+namespace tools
+{
 // real_cast converts from T to integer and narrower floating-point types.
 
 // Convert from T to integer types.
@@ -331,54 +415,19 @@
    return r.value();
 }
 
-template <>
-inline concepts::real_concept max_value<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
-{
- return max_value<long double>();
-}
-
-template <>
-inline concepts::real_concept min_value<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
-{
- return min_value<long double>();
-}
-
-template <>
-inline concepts::real_concept log_max_value<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
-{
- return log_max_value<long double>();
-}
-
-template <>
-inline concepts::real_concept log_min_value<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
-{
- return log_min_value<long double>();
-}
+} // STLPort
 
-template <>
-inline concepts::real_concept epsilon<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
-{
-#ifdef __SUNPRO_CC
- return std::numeric_limits<long double>::epsilon();
-#else
- return tools::epsilon<long double>();
 #endif
-}
 
-template <>
-inline int digits<concepts::real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::real_concept))
-{
- // Assume number of significand bits is same as long double,
- // unless std::numeric_limits<T>::is_specialized to provide digits.
- return tools::digits<long double>();
- // Note that if numeric_limits real concept is NOT specialized to provide digits10
- // (or max_digits10) then the default precision of 6 decimal digits will be used
- // by Boost test (giving misleading error messages like
- // "difference between {9.79796} and {9.79796} exceeds 5.42101e-19%"
- // and by Boost lexical cast and serialization causing loss of accuracy.
-}
+#if BOOST_WORKAROUND(BOOST_MSVC, <= 1310)
+//
+// For some strange reason ADL sometimes fails to find the
+// correct overloads, unless we bring these declarations into scope:
+//
+using concepts::itrunc;
+using concepts::iround;
 
-} // namespace tools
+#endif
 
 } // namespace math
 } // namespace boost

Modified: branches/CMake/release/boost/math/concepts/std_real_concept.hpp
==============================================================================
--- branches/CMake/release/boost/math/concepts/std_real_concept.hpp (original)
+++ branches/CMake/release/boost/math/concepts/std_real_concept.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -18,9 +18,9 @@
 
 #include <boost/config.hpp>
 #include <boost/limits.hpp>
-#include <boost/math/tools/real_cast.hpp>
 #include <boost/math/tools/precision.hpp>
 #include <boost/math/policies/policy.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 
 #include <ostream>
 #include <istream>
@@ -35,6 +35,12 @@
 namespace concepts
 {
 
+#ifdef BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS
+ typedef double std_real_concept_base_type;
+#else
+ typedef long double std_real_concept_base_type;
+#endif
+
 class std_real_concept
 {
 public:
@@ -52,9 +58,12 @@
    std_real_concept(int c) : m_value(c){}
    std_real_concept(unsigned long c) : m_value(c){}
    std_real_concept(long c) : m_value(c){}
-#if defined(BOOST_HAS_LONG_LONG) || defined(__DECCXX) || defined(__SUNPRO_CC)
- std_real_concept(unsigned long long c) : m_value(static_cast<long double>(c)){}
- std_real_concept(long long c) : m_value(static_cast<long double>(c)){}
+#if defined(__DECCXX) || defined(__SUNPRO_CC)
+ std_real_concept(unsigned long long c) : m_value(static_cast<std_real_concept_base_type>(c)){}
+ std_real_concept(long long c) : m_value(static_cast<std_real_concept_base_type>(c)){}
+#elif defined(BOOST_HAS_LONG_LONG)
+ std_real_concept(boost::ulong_long_type c) : m_value(static_cast<std_real_concept_base_type>(c)){}
+ std_real_concept(boost::long_long_type c) : m_value(static_cast<std_real_concept_base_type>(c)){}
 #endif
    std_real_concept(float c) : m_value(c){}
    std_real_concept(double c) : m_value(c){}
@@ -73,16 +82,19 @@
    std_real_concept& operator=(unsigned int c) { m_value = c; return *this; }
    std_real_concept& operator=(long c) { m_value = c; return *this; }
    std_real_concept& operator=(unsigned long c) { m_value = c; return *this; }
-#if defined(BOOST_HAS_LONG_LONG) || defined(__DECCXX) || defined(__SUNPRO_CC)
- std_real_concept& operator=(long long c) { m_value = static_cast<long double>(c); return *this; }
- std_real_concept& operator=(unsigned long long c) { m_value = static_cast<long double>(c); return *this; }
+#if defined(__DECCXX) || defined(__SUNPRO_CC)
+ std_real_concept& operator=(unsigned long long c) { m_value = static_cast<std_real_concept_base_type>(c); return *this; }
+ std_real_concept& operator=(long long c) { m_value = static_cast<std_real_concept_base_type>(c); return *this; }
+#elif defined(BOOST_HAS_LONG_LONG)
+ std_real_concept& operator=(boost::long_long_type c) { m_value = static_cast<std_real_concept_base_type>(c); return *this; }
+ std_real_concept& operator=(boost::ulong_long_type c) { m_value = static_cast<std_real_concept_base_type>(c); return *this; }
 #endif
    std_real_concept& operator=(float c) { m_value = c; return *this; }
    std_real_concept& operator=(double c) { m_value = c; return *this; }
    std_real_concept& operator=(long double c) { m_value = c; return *this; }
 
    // Access:
- long double value()const{ return m_value; }
+ std_real_concept_base_type value()const{ return m_value; }
 
    // Member arithmetic:
    std_real_concept& operator+=(const std_real_concept& other)
@@ -99,7 +111,7 @@
    { return *this; }
 
 private:
- long double m_value;
+ std_real_concept_base_type m_value;
 };
 
 // Non-member arithmetic:
@@ -142,40 +154,6 @@
 inline bool operator >= (const std_real_concept& a, const std_real_concept& b)
 { return a.value() >= b.value(); }
 
-#if 0
-// Non-member mixed compare:
-template <class T>
-inline bool operator == (const T& a, const std_real_concept& b)
-{
- return a == b.value();
-}
-template <class T>
-inline bool operator != (const T& a, const std_real_concept& b)
-{
- return a != b.value();
-}
-template <class T>
-inline bool operator < (const T& a, const std_real_concept& b)
-{
- return a < b.value();
-}
-template <class T>
-inline bool operator > (const T& a, const std_real_concept& b)
-{
- return a > b.value();
-}
-template <class T>
-inline bool operator <= (const T& a, const std_real_concept& b)
-{
- return a <= b.value();
-}
-template <class T>
-inline bool operator >= (const T& a, const std_real_concept& b)
-{
- return a >= b.value();
-}
-#endif // Non-member mixed compare:
-
 } // namespace concepts
 } // namespace math
 } // namespace boost
@@ -214,8 +192,8 @@
 { return std::floor(a.value()); }
 inline boost::math::concepts::std_real_concept modf(boost::math::concepts::std_real_concept a, boost::math::concepts::std_real_concept* ipart)
 {
- long double ip;
- long double result = std::modf(a.value(), &ip);
+ boost::math::concepts::std_real_concept_base_type ip;
+ boost::math::concepts::std_real_concept_base_type result = std::modf(a.value(), &ip);
    *ipart = ip;
    return result;
 }
@@ -251,103 +229,145 @@
 
 namespace boost{ namespace math{ namespace concepts{
 
-// Streaming:
-template <class charT, class traits>
-inline std::basic_ostream<charT, traits>& operator<<(std::basic_ostream<charT, traits>& os, const std_real_concept& a)
+//
+// Conversion and truncation routines:
+//
+template <class Policy>
+inline int iround(const concepts::std_real_concept& v, const Policy& pol)
 {
- return os << a.value();
+ return boost::math::iround(v.value(), pol);
 }
-template <class charT, class traits>
-inline std::basic_istream<charT, traits>& operator>>(std::basic_istream<charT, traits>& is, std_real_concept& a)
+inline int iround(const concepts::std_real_concept& v)
 {
- long double v;
- is >> v;
- a = v;
- return is;
+ return boost::math::iround(v.value(), policies::policy<>());
 }
 
-} // namespace concepts
-
-namespace tools
+template <class Policy>
+inline long lround(const concepts::std_real_concept& v, const Policy& pol)
+{
+ return boost::math::lround(v.value(), pol);
+}
+inline long lround(const concepts::std_real_concept& v)
 {
-// real_cast converts from T to integer and narrower floating-point types.
+ return boost::math::lround(v.value(), policies::policy<>());
+}
 
-// Convert from T to integer types.
+#ifdef BOOST_HAS_LONG_LONG
 
-template <>
-inline unsigned int real_cast<unsigned int, concepts::std_real_concept>(concepts::std_real_concept r)
+template <class Policy>
+inline boost::long_long_type llround(const concepts::std_real_concept& v, const Policy& pol)
+{
+ return boost::math::llround(v.value(), pol);
+}
+inline boost::long_long_type llround(const concepts::std_real_concept& v)
 {
- return static_cast<unsigned int>(r.value());
+ return boost::math::llround(v.value(), policies::policy<>());
 }
 
-template <>
-inline int real_cast<int, concepts::std_real_concept>(concepts::std_real_concept r)
+#endif
+
+template <class Policy>
+inline int itrunc(const concepts::std_real_concept& v, const Policy& pol)
+{
+ return boost::math::itrunc(v.value(), pol);
+}
+inline int itrunc(const concepts::std_real_concept& v)
 {
- return static_cast<int>(r.value());
+ return boost::math::itrunc(v.value(), policies::policy<>());
 }
 
-template <>
-inline long real_cast<long, concepts::std_real_concept>(concepts::std_real_concept r)
+template <class Policy>
+inline long ltrunc(const concepts::std_real_concept& v, const Policy& pol)
+{
+ return boost::math::ltrunc(v.value(), pol);
+}
+inline long ltrunc(const concepts::std_real_concept& v)
 {
- return static_cast<long>(r.value());
+ return boost::math::ltrunc(v.value(), policies::policy<>());
 }
 
-// Converts from T to narrower floating-point types, float, double & long double.
+#ifdef BOOST_HAS_LONG_LONG
 
-template <>
-inline float real_cast<float, concepts::std_real_concept>(concepts::std_real_concept r)
+template <class Policy>
+inline boost::long_long_type lltrunc(const concepts::std_real_concept& v, const Policy& pol)
 {
- return static_cast<float>(r.value());
+ return boost::math::lltrunc(v.value(), pol);
 }
-template <>
-inline double real_cast<double, concepts::std_real_concept>(concepts::std_real_concept r)
+inline boost::long_long_type lltrunc(const concepts::std_real_concept& v)
 {
- return static_cast<double>(r.value());
+ return boost::math::lltrunc(v.value(), policies::policy<>());
 }
-template <>
-inline long double real_cast<long double, concepts::std_real_concept>(concepts::std_real_concept r)
+
+#endif
+
+// Streaming:
+template <class charT, class traits>
+inline std::basic_ostream<charT, traits>& operator<<(std::basic_ostream<charT, traits>& os, const std_real_concept& a)
 {
- return r.value();
+ return os << a.value();
+}
+template <class charT, class traits>
+inline std::basic_istream<charT, traits>& operator>>(std::basic_istream<charT, traits>& is, std_real_concept& a)
+{
+ std_real_concept_base_type v;
+ is >> v;
+ a = v;
+ return is;
 }
 
+} // namespace concepts
+
+namespace tools
+{
+
 template <>
 inline concepts::std_real_concept max_value<concepts::std_real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::std_real_concept))
 {
- return max_value<long double>();
+ return max_value<concepts::std_real_concept_base_type>();
 }
 
 template <>
 inline concepts::std_real_concept min_value<concepts::std_real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::std_real_concept))
 {
- return min_value<long double>();
+ return min_value<concepts::std_real_concept_base_type>();
 }
 
 template <>
 inline concepts::std_real_concept log_max_value<concepts::std_real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::std_real_concept))
 {
- return log_max_value<long double>();
+ return log_max_value<concepts::std_real_concept_base_type>();
 }
 
 template <>
 inline concepts::std_real_concept log_min_value<concepts::std_real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::std_real_concept))
 {
- return log_min_value<long double>();
+ return log_min_value<concepts::std_real_concept_base_type>();
 }
 
 template <>
-inline concepts::std_real_concept epsilon<concepts::std_real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::std_real_concept))
+inline concepts::std_real_concept epsilon(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::std_real_concept))
 {
- return tools::epsilon<long double>();
+ return tools::epsilon<concepts::std_real_concept_base_type>();
 }
 
 template <>
 inline int digits<concepts::std_real_concept>(BOOST_MATH_EXPLICIT_TEMPLATE_TYPE_SPEC(concepts::std_real_concept))
-{ // Assume number of significand bits is same as long double,
+{ // Assume number of significand bits is same as std_real_concept_base_type,
   // unless std::numeric_limits<T>::is_specialized to provide digits.
- return digits<long double>();
+ return digits<concepts::std_real_concept_base_type>();
 }
 
 } // namespace tools
+
+#if BOOST_WORKAROUND(BOOST_MSVC, <= 1310)
+using concepts::itrunc;
+using concepts::ltrunc;
+using concepts::lltrunc;
+using concepts::iround;
+using concepts::lround;
+using concepts::llround;
+#endif
+
 } // namespace math
 } // namespace boost
 

Modified: branches/CMake/release/boost/math/distributions.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions.hpp (original)
+++ branches/CMake/release/boost/math/distributions.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -24,6 +24,10 @@
 #include <boost/math/distributions/gamma.hpp>
 #include <boost/math/distributions/lognormal.hpp>
 #include <boost/math/distributions/negative_binomial.hpp>
+#include <boost/math/distributions/non_central_chi_squared.hpp>
+#include <boost/math/distributions/non_central_beta.hpp>
+#include <boost/math/distributions/non_central_f.hpp>
+#include <boost/math/distributions/non_central_t.hpp>
 #include <boost/math/distributions/normal.hpp>
 #include <boost/math/distributions/pareto.hpp>
 #include <boost/math/distributions/poisson.hpp>
@@ -32,11 +36,8 @@
 #include <boost/math/distributions/triangular.hpp>
 #include <boost/math/distributions/uniform.hpp>
 #include <boost/math/distributions/weibull.hpp>
-// find location and shape for appropriate distributions,
-// normal, cauchy, lognormal, symmetric triangular
-// Disabled for now, these are still work in progress.
-//#include <boost/math/distributions/find_scale.hpp>
-//#include <boost/math/distributions/find_location.hpp>
+#include <boost/math/distributions/find_scale.hpp>
+#include <boost/math/distributions/find_location.hpp>
 
 #endif // BOOST_MATH_DISTRIBUTIONS_HPP
 

Modified: branches/CMake/release/boost/math/distributions/chi_squared.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/chi_squared.hpp (original)
+++ branches/CMake/release/boost/math/distributions/chi_squared.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // Copyright John Maddock 2006, 2007.
-// Copyright Paul A. Bristow 2007.
+// Copyright Paul A. Bristow 2008.
 
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0.
@@ -202,10 +202,22 @@
 {
    RealType df = dist.degrees_of_freedom();
    static const char* function = "boost::math::mode(const chi_squared_distribution<%1%>&)";
- if(df <= 2)
+ // Most sources only define mode for df >= 2,
+ // but for 0 <= df <= 2, the pdf maximum actually occurs at random variate = 0;
+ // So one could extend the definition of mode thus:
+ //if(df < 0)
+ //{
+ // return policies::raise_domain_error<RealType>(
+ // function,
+ // "Chi-Squared distribution only has a mode for degrees of freedom >= 0, but got degrees of freedom = %1%.",
+ // df, Policy());
+ //}
+ //return (df <= 2) ? 0 : df - 2;
+
+ if(df < 2)
       return policies::raise_domain_error<RealType>(
          function,
- "The Chi-Squared distribution only has a mode for degrees of freedom >= 2, but got degrees of freedom = %1%.",
+ "Chi-Squared distribution only has a mode for degrees of freedom >= 2, but got degrees of freedom = %1%.",
          df, Policy());
    return df - 2;
 }
@@ -306,7 +318,7 @@
    boost::uintmax_t max_iter = policies::get_max_root_iterations<Policy>();
    std::pair<RealType, RealType> r = tools::bracket_and_solve_root(f, hint, RealType(2), false, tol, max_iter, Policy());
    RealType result = r.first + (r.second - r.first) / 2;
- if(max_iter == policies::get_max_root_iterations<Policy>())
+ if(max_iter >= policies::get_max_root_iterations<Policy>())
    {
       policies::raise_evaluation_error<RealType>(function, "Unable to locate solution in a reasonable time:"
          " either there is no answer to how many degrees of freedom are required"

Modified: branches/CMake/release/boost/math/distributions/detail/common_error_handling.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/detail/common_error_handling.hpp (original)
+++ branches/CMake/release/boost/math/distributions/detail/common_error_handling.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -96,6 +96,60 @@
    // leaving this test to catch any NaNs. see Normal and cauchy for example.
 }
 
+template <class RealType, class Policy>
+inline bool check_positive_x(
+ const char* function,
+ RealType x,
+ RealType* result,
+ const Policy& pol)
+{
+ if(!(boost::math::isfinite)(x) || (x < 0))
+ {
+ *result = policies::raise_domain_error<RealType>(
+ function,
+ "Random variate x is %1%, but must be finite and >= 0!", x, pol);
+ return false;
+ }
+ return true;
+ // Note that this test catches both infinity and NaN.
+ // Some special cases permit x to be infinite, so these must be tested 1st,
+ // leaving this test to catch any NaNs. see Normal and cauchy for example.
+}
+
+template <class RealType, class Policy>
+inline bool check_non_centrality(
+ const char* function,
+ RealType ncp,
+ RealType* result,
+ const Policy& pol)
+{
+ if((ncp < 0) || !(boost::math::isfinite)(ncp))
+ { // Assume scale == 0 is NOT valid for any distribution.
+ *result = policies::raise_domain_error<RealType>(
+ function,
+ "Non centrality parameter is %1%, but must be > 0 !", ncp, pol);
+ return false;
+ }
+ return true;
+}
+
+template <class RealType, class Policy>
+inline bool check_finite(
+ const char* function,
+ RealType x,
+ RealType* result,
+ const Policy& pol)
+{
+ if(!(boost::math::isfinite)(x))
+ { // Assume scale == 0 is NOT valid for any distribution.
+ *result = policies::raise_domain_error<RealType>(
+ function,
+ "Parameter is %1%, but must be finite !", x, pol);
+ return false;
+ }
+ return true;
+}
+
 } // namespace detail
 } // namespace math
 } // namespace boost

Modified: branches/CMake/release/boost/math/distributions/exponential.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/exponential.hpp (original)
+++ branches/CMake/release/boost/math/distributions/exponential.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -89,7 +89,9 @@
 { // Range of supported values for random variable x.
    // This is range where cdf rises from 0 to 1, and outside it, the pdf is zero.
    using boost::math::tools::max_value;
- return std::pair<RealType, RealType>(0, max_value<RealType>());
+ using boost::math::tools::min_value;
+ return std::pair<RealType, RealType>(min_value<RealType>(), max_value<RealType>());
+ // min_value<RealType>() to avoid a discontinuity at x = 0.
 }
 
 template <class RealType, class Policy>

Modified: branches/CMake/release/boost/math/distributions/fwd.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/fwd.hpp (original)
+++ branches/CMake/release/boost/math/distributions/fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -45,6 +45,18 @@
 class negative_binomial_distribution;
 
 template <class RealType, class Policy>
+class non_central_chi_squared_distribution;
+
+template <class RealType, class Policy>
+class non_central_beta_distribution;
+
+template <class RealType, class Policy>
+class non_central_f_distribution;
+
+template <class RealType, class Policy>
+class non_central_t_distribution;
+
+template <class RealType, class Policy>
 class normal_distribution;
 
 template <class RealType, class Policy>
@@ -90,5 +102,9 @@
    typedef boost::math::triangular_distribution<Type, Policy> triangular;\
    typedef boost::math::uniform_distribution<Type, Policy> uniform;\
    typedef boost::math::weibull_distribution<Type, Policy> weibull;\
+ typedef boost::math::non_central_chi_squared_distribution<Type, Policy> non_central_chi_squared;\
+ typedef boost::math::non_central_beta_distribution<Type, Policy> non_central_beta;\
+ typedef boost::math::non_central_f_distribution<Type, Policy> non_central_f;\
+ typedef boost::math::non_central_t_distribution<Type, Policy> non_central_t;\
 
 #endif // BOOST_MATH_DISTRIBUTIONS_FWD_HPP

Modified: branches/CMake/release/boost/math/distributions/gamma.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/gamma.hpp (original)
+++ branches/CMake/release/boost/math/distributions/gamma.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -111,7 +111,8 @@
 { // Range of supported values for random variable x.
    // This is range where cdf rises from 0 to 1, and outside it, the pdf is zero.
    using boost::math::tools::max_value;
- return std::pair<RealType, RealType>(0, max_value<RealType>());
+ using boost::math::tools::min_value;
+ return std::pair<RealType, RealType>(min_value<RealType>(), max_value<RealType>());
 }
 
 template <class RealType, class Policy>

Modified: branches/CMake/release/boost/math/distributions/normal.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/normal.hpp (original)
+++ branches/CMake/release/boost/math/distributions/normal.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -100,7 +100,7 @@
    {
      return 0; // pdf + and - infinity is zero.
    }
- // Theis produces MSVC 4127 warnings, so the above used instead.
+ // Below produces MSVC 4127 warnings, so the above used instead.
    //if(std::numeric_limits<RealType>::has_infinity && abs(x) == std::numeric_limits<RealType>::infinity())
    //{ // pdf + and - infinity is zero.
    // return 0;

Modified: branches/CMake/release/boost/math/distributions/poisson.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/poisson.hpp (original)
+++ branches/CMake/release/boost/math/distributions/poisson.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,7 +13,7 @@
 // events, occurrences, failures or arrivals occurring in a fixed time,
 // assuming these events occur with a known average or mean rate (lambda)
 // and are independent of the time since the last event.
-// The distribution was discovered by Siméon-Denis Poisson (1781–1840).
+// The distribution was discovered by Simeon-Denis Poisson (1781-1840).
 
 // Parameter lambda is the mean number of events in the given time interval.
 // The random variate k is the number of events, occurrences or arrivals.
@@ -38,6 +38,7 @@
 
 #include <boost/math/distributions/fwd.hpp>
 #include <boost/math/special_functions/gamma.hpp> // for incomplete gamma. gamma_q
+#include <boost/math/special_functions/trunc.hpp> // for incomplete gamma. gamma_q
 #include <boost/math/distributions/complement.hpp> // complements
 #include <boost/math/distributions/detail/common_error_handling.hpp> // error checks
 #include <boost/math/special_functions/fpclassify.hpp> // isnan.

Modified: branches/CMake/release/boost/math/distributions/students_t.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/students_t.hpp (original)
+++ branches/CMake/release/boost/math/distributions/students_t.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -277,7 +277,7 @@
    boost::uintmax_t max_iter = policies::get_max_root_iterations<Policy>();
    std::pair<RealType, RealType> r = tools::bracket_and_solve_root(f, hint, RealType(2), false, tol, max_iter, Policy());
    RealType result = r.first + (r.second - r.first) / 2;
- if(max_iter == policies::get_max_root_iterations<Policy>())
+ if(max_iter >= policies::get_max_root_iterations<Policy>())
    {
       policies::raise_evaluation_error<RealType>(function, "Unable to locate solution in a reasonable time:"
          " either there is no answer to how many degrees of freedom are required"

Modified: branches/CMake/release/boost/math/distributions/triangular.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/triangular.hpp (original)
+++ branches/CMake/release/boost/math/distributions/triangular.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -106,12 +106,21 @@
       RealType upper,
       RealType* result, const Policy& pol)
     {
- if(check_triangular_lower(function, lower, result, pol)
- && check_triangular_mode(function, mode, result, pol)
- && check_triangular_upper(function, upper, result, pol)
- && (lower < upper) // lower == upper NOT useful.
- )
- {
+ if ((check_triangular_lower(function, lower, result, pol) == false)
+ || (check_triangular_mode(function, mode, result, pol) == false)
+ || (check_triangular_upper(function, upper, result, pol) == false))
+ { // Some parameter not finite.
+ return false;
+ }
+ else if (lower >= upper) // lower == upper NOT useful.
+ { // lower >= upper.
+ *result = policies::raise_domain_error<RealType>(
+ function,
+ "lower parameter is %1%, but must be less than upper!", lower, pol);
+ return false;
+ }
+ else
+ { // Check lower <= mode <= upper.
         if (mode < lower)
         {
           *result = policies::raise_domain_error<RealType>(
@@ -119,21 +128,14 @@
             "mode parameter is %1%, but must be >= than lower!", lower, pol);
           return false;
         }
- if (mode > upper )
+ if (mode > upper)
         {
           *result = policies::raise_domain_error<RealType>(
             function,
             "mode parameter is %1%, but must be <= than upper!", upper, pol);
           return false;
         }
- return true;
- }
- else
- { // upper and lower have each been checked before, so must be lower >= upper.
- *result = policies::raise_domain_error<RealType>(
- function,
- "lower parameter is %1%, but must be less than upper!", lower, pol);
- return false;
+ return true; // All OK.
       }
     } // bool check_triangular
   } // namespace detail

Modified: branches/CMake/release/boost/math/distributions/uniform.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/uniform.hpp (original)
+++ branches/CMake/release/boost/math/distributions/uniform.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -89,19 +89,22 @@
       RealType upper,
       RealType* result, const Policy& pol)
     {
- if(check_uniform_lower(function, lower, result, pol)
- && check_uniform_upper(function, upper, result, pol)
- && (lower < upper)) // If lower == upper then 1 / (upper-lower) = 1/0 = +infinity!
+ if((check_uniform_lower(function, lower, result, pol) == false)
+ || (check_uniform_upper(function, upper, result, pol) == false))
       {
- return true;
+ return false;
       }
- else
+ else if (lower >= upper) // If lower == upper then 1 / (upper-lower) = 1/0 = +infinity!
       { // upper and lower have been checked before, so must be lower >= upper.
         *result = policies::raise_domain_error<RealType>(
           function,
           "lower parameter is %1%, but must be less than upper!", lower, pol);
         return false;
       }
+ else
+ { // All OK,
+ return true;
+ }
     } // bool check_uniform(
 
   } // namespace detail
@@ -141,7 +144,8 @@
   inline const std::pair<RealType, RealType> range(const uniform_distribution<RealType, Policy>& /* dist */)
   { // Range of permissible values for random variable x.
      using boost::math::tools::max_value;
- return std::pair<RealType, RealType>(-max_value<RealType>(), max_value<RealType>()); // - to + infinity
+ return std::pair<RealType, RealType>(-max_value<RealType>(), max_value<RealType>()); // - to + 'infinity'.
+ // Note RealType infinity is NOT permitted, only max_value.
   }
 
   template <class RealType, class Policy>

Modified: branches/CMake/release/boost/math/distributions/weibull.hpp
==============================================================================
--- branches/CMake/release/boost/math/distributions/weibull.hpp (original)
+++ branches/CMake/release/boost/math/distributions/weibull.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -111,7 +111,9 @@
 { // Range of supported values for random variable x.
    // This is range where cdf rises from 0 to 1, and outside it, the pdf is zero.
    using boost::math::tools::max_value;
- return std::pair<RealType, RealType>(0, max_value<RealType>());
+ using boost::math::tools::min_value;
+ return std::pair<RealType, RealType>(min_value<RealType>(), max_value<RealType>());
+ // A discontinuity at x == 0, so only support down to min_value.
 }
 
 template <class RealType, class Policy>
@@ -131,8 +133,9 @@
       return result;
 
    if(x == 0)
+ { // Special case, but x == min, pdf = 1 for shape = 1,
       return 0;
-
+ }
    result = exp(-pow(x / scale, shape));
    result *= pow(x / scale, shape) * shape / x;
 
@@ -283,6 +286,8 @@
    {
       return result;
    }
+ if(shape <= 1)
+ return 0;
    result = scale * pow((shape - 1) / shape, 1 / shape);
    return result;
 }

Modified: branches/CMake/release/boost/math/policies/error_handling.hpp
==============================================================================
--- branches/CMake/release/boost/math/policies/error_handling.hpp (original)
+++ branches/CMake/release/boost/math/policies/error_handling.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -37,6 +37,12 @@
    evaluation_error(const std::string& s) : std::runtime_error(s){}
 };
 
+class rounding_error : public std::runtime_error
+{
+public:
+ rounding_error(const std::string& s) : std::runtime_error(s){}
+};
+
 namespace policies{
 //
 // Forward declarations of user error handlers,
@@ -54,6 +60,10 @@
 T user_denorm_error(const char* function, const char* message, const T& val);
 template <class T>
 T user_evaluation_error(const char* function, const char* message, const T& val);
+template <class T>
+T user_rounding_error(const char* function, const char* message, const T& val);
+template <class T>
+T user_indeterminate_result_error(const char* function, const char* message, const T& val);
 
 namespace detail
 {
@@ -371,6 +381,104 @@
    return user_evaluation_error(function, message, val);
 }
 
+template <class T>
+inline T raise_rounding_error(
+ const char* function,
+ const char* message,
+ const T& val,
+ const ::boost::math::policies::rounding_error< ::boost::math::policies::throw_on_error>&)
+{
+ raise_error<boost::math::rounding_error, T>(function, message, val);
+ // we never get here:
+ return T(0);
+}
+
+template <class T>
+inline T raise_rounding_error(
+ const char* ,
+ const char* ,
+ const T& val,
+ const ::boost::math::policies::rounding_error< ::boost::math::policies::ignore_error>&)
+{
+ // This may or may not do the right thing, but the user asked for the error
+ // to be ignored so here we go anyway:
+ return val;
+}
+
+template <class T>
+inline T raise_rounding_error(
+ const char* ,
+ const char* ,
+ const T& val,
+ const ::boost::math::policies::rounding_error< ::boost::math::policies::errno_on_error>&)
+{
+ errno = ERANGE;
+ // This may or may not do the right thing, but the user asked for the error
+ // to be silent so here we go anyway:
+ return val;
+}
+
+template <class T>
+inline T raise_rounding_error(
+ const char* function,
+ const char* message,
+ const T& val,
+ const ::boost::math::policies::rounding_error< ::boost::math::policies::user_error>&)
+{
+ return user_rounding_error(function, message, val);
+}
+
+template <class T, class R>
+inline T raise_indeterminate_result_error(
+ const char* function,
+ const char* message,
+ const T& val,
+ const R& ,
+ const ::boost::math::policies::indeterminate_result_error< ::boost::math::policies::throw_on_error>&)
+{
+ raise_error<std::domain_error, T>(function, message, val);
+ // we never get here:
+ return std::numeric_limits<T>::quiet_NaN();
+}
+
+template <class T, class R>
+inline T raise_indeterminate_result_error(
+ const char* ,
+ const char* ,
+ const T& ,
+ const R& result,
+ const ::boost::math::policies::indeterminate_result_error< ::boost::math::policies::ignore_error>&)
+{
+ // This may or may not do the right thing, but the user asked for the error
+ // to be ignored so here we go anyway:
+ return result;
+}
+
+template <class T, class R>
+inline T raise_indeterminate_result_error(
+ const char* ,
+ const char* ,
+ const T& ,
+ const R& result,
+ const ::boost::math::policies::indeterminate_result_error< ::boost::math::policies::errno_on_error>&)
+{
+ errno = EDOM;
+ // This may or may not do the right thing, but the user asked for the error
+ // to be silent so here we go anyway:
+ return result;
+}
+
+template <class T, class R>
+inline T raise_indeterminate_result_error(
+ const char* function,
+ const char* message,
+ const T& val,
+ const R& ,
+ const ::boost::math::policies::indeterminate_result_error< ::boost::math::policies::user_error>&)
+{
+ return user_indeterminate_result_error(function, message, val);
+}
+
 } // namespace detail
 
 template <class T, class Policy>
@@ -428,6 +536,24 @@
       val, policy_type());
 }
 
+template <class T, class Policy>
+inline T raise_rounding_error(const char* function, const char* message, const T& val, const Policy&)
+{
+ typedef typename Policy::rounding_error_type policy_type;
+ return detail::raise_rounding_error(
+ function, message ? message : "Value %1% can not be represented in the target integer type.",
+ val, policy_type());
+}
+
+template <class T, class R, class Policy>
+inline T raise_indeterminate_result_error(const char* function, const char* message, const T& val, const R& result, const Policy&)
+{
+ typedef typename Policy::indeterminate_result_error_type policy_type;
+ return detail::raise_indeterminate_result_error(
+ function, message ? message : "Indeterminate result with value %1%",
+ val, result, policy_type());
+}
+
 //
 // checked_narrowing_cast:
 //

Modified: branches/CMake/release/boost/math/policies/policy.hpp
==============================================================================
--- branches/CMake/release/boost/math/policies/policy.hpp (original)
+++ branches/CMake/release/boost/math/policies/policy.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -54,12 +54,18 @@
 #ifndef BOOST_MATH_EVALUATION_ERROR_POLICY
 #define BOOST_MATH_EVALUATION_ERROR_POLICY throw_on_error
 #endif
+#ifndef BOOST_MATH_ROUNDING_ERROR_POLICY
+#define BOOST_MATH_ROUNDING_ERROR_POLICY throw_on_error
+#endif
 #ifndef BOOST_MATH_UNDERFLOW_ERROR_POLICY
 #define BOOST_MATH_UNDERFLOW_ERROR_POLICY ignore_error
 #endif
 #ifndef BOOST_MATH_DENORM_ERROR_POLICY
 #define BOOST_MATH_DENORM_ERROR_POLICY ignore_error
 #endif
+#ifndef BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY
+#define BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY ignore_error
+#endif
 #ifndef BOOST_MATH_DIGITS10_POLICY
 #define BOOST_MATH_DIGITS10_POLICY 0
 #endif
@@ -178,6 +184,8 @@
 BOOST_MATH_META_INT(error_policy_type, underflow_error, BOOST_MATH_UNDERFLOW_ERROR_POLICY)
 BOOST_MATH_META_INT(error_policy_type, denorm_error, BOOST_MATH_DENORM_ERROR_POLICY)
 BOOST_MATH_META_INT(error_policy_type, evaluation_error, BOOST_MATH_EVALUATION_ERROR_POLICY)
+BOOST_MATH_META_INT(error_policy_type, rounding_error, BOOST_MATH_ROUNDING_ERROR_POLICY)
+BOOST_MATH_META_INT(error_policy_type, indeterminate_result_error, BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY)
 
 //
 // Policy types for internal promotion:
@@ -398,6 +406,8 @@
    typedef typename detail::find_arg<arg_list, is_underflow_error<mpl::_1>, underflow_error<> >::type underflow_error_type;
    typedef typename detail::find_arg<arg_list, is_denorm_error<mpl::_1>, denorm_error<> >::type denorm_error_type;
    typedef typename detail::find_arg<arg_list, is_evaluation_error<mpl::_1>, evaluation_error<> >::type evaluation_error_type;
+ typedef typename detail::find_arg<arg_list, is_rounding_error<mpl::_1>, rounding_error<> >::type rounding_error_type;
+ typedef typename detail::find_arg<arg_list, is_indeterminate_result_error<mpl::_1>, indeterminate_result_error<> >::type indeterminate_result_error_type;
 private:
    //
    // Now work out the precision:
@@ -440,6 +450,8 @@
    typedef underflow_error<> underflow_error_type;
    typedef denorm_error<> denorm_error_type;
    typedef evaluation_error<> evaluation_error_type;
+ typedef rounding_error<> rounding_error_type;
+ typedef indeterminate_result_error<> indeterminate_result_error_type;
 #if BOOST_MATH_DIGITS10_POLICY == 0
    typedef digits2<> precision_type;
 #else
@@ -463,6 +475,8 @@
    typedef underflow_error<> underflow_error_type;
    typedef denorm_error<> denorm_error_type;
    typedef evaluation_error<> evaluation_error_type;
+ typedef rounding_error<> rounding_error_type;
+ typedef indeterminate_result_error<> indeterminate_result_error_type;
 #if BOOST_MATH_DIGITS10_POLICY == 0
    typedef digits2<> precision_type;
 #else
@@ -500,6 +514,8 @@
    typedef typename detail::find_arg<arg_list, is_underflow_error<mpl::_1>, typename Policy::underflow_error_type >::type underflow_error_type;
    typedef typename detail::find_arg<arg_list, is_denorm_error<mpl::_1>, typename Policy::denorm_error_type >::type denorm_error_type;
    typedef typename detail::find_arg<arg_list, is_evaluation_error<mpl::_1>, typename Policy::evaluation_error_type >::type evaluation_error_type;
+ typedef typename detail::find_arg<arg_list, is_rounding_error<mpl::_1>, typename Policy::rounding_error_type >::type rounding_error_type;
+ typedef typename detail::find_arg<arg_list, is_indeterminate_result_error<mpl::_1>, typename Policy::indeterminate_result_error_type >::type indeterminate_result_error_type;
    //
    // Now work out the precision:
    //
@@ -534,6 +550,8 @@
       underflow_error_type,
       denorm_error_type,
       evaluation_error_type,
+ rounding_error_type,
+ indeterminate_result_error_type,
       precision_type,
       promote_float_type,
       promote_double_type,
@@ -658,6 +676,13 @@
    return result_type();
 }
 
+template <class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9, class A10, class A11>
+inline typename normalise<policy<>, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11>::type make_policy(const A1&, const A2&, const A3&, const A4&, const A5&, const A6&, const A7&, const A8&, const A9&, const A10&, const A11&)
+{
+ typedef typename normalise<policy<>, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11>::type result_type;
+ return result_type();
+}
+
 //
 // Traits class to handle internal promotion:
 //
@@ -841,3 +866,4 @@
 #endif // BOOST_MATH_POLICY_HPP
 
 
+

Modified: branches/CMake/release/boost/math/special_functions.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions.hpp (original)
+++ branches/CMake/release/boost/math/special_functions.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -29,6 +29,7 @@
 #include <boost/math/special_functions/ellint_rf.hpp>
 #include <boost/math/special_functions/ellint_rj.hpp>
 #include <boost/math/special_functions/erf.hpp>
+#include <boost/math/special_functions/expint.hpp>
 #include <boost/math/special_functions/expm1.hpp>
 #include <boost/math/special_functions/factorials.hpp>
 #include <boost/math/special_functions/fpclassify.hpp>
@@ -47,5 +48,11 @@
 #include <boost/math/special_functions/sinhc.hpp>
 #include <boost/math/special_functions/spherical_harmonic.hpp>
 #include <boost/math/special_functions/sqrt1pm1.hpp>
+#include <boost/math/special_functions/zeta.hpp>
+#include <boost/math/special_functions/modf.hpp>
+#include <boost/math/special_functions/round.hpp>
+#include <boost/math/special_functions/trunc.hpp>
+#include <boost/math/special_functions/pow.hpp>
+#include <boost/math/special_functions/next.hpp>
 
 #endif // BOOST_MATH_SPECIAL_FUNCTIONS_HPP

Modified: branches/CMake/release/boost/math/special_functions/acosh.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/acosh.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/acosh.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,6 +10,9 @@
 #ifndef BOOST_ACOSH_HPP
 #define BOOST_ACOSH_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
 
 #include <cmath>
 #include <boost/config.hpp>
@@ -110,3 +113,4 @@
 
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/asinh.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/asinh.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/asinh.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,6 +10,10 @@
 #ifndef BOOST_ASINH_HPP
 #define BOOST_ASINH_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 
 #include <cmath>
 #include <boost/config.hpp>
@@ -110,3 +114,4 @@
 }
 
 #endif /* BOOST_ASINH_HPP */
+

Modified: branches/CMake/release/boost/math/special_functions/atanh.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/atanh.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/atanh.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,6 +10,10 @@
 #ifndef BOOST_ATANH_HPP
 #define BOOST_ATANH_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 
 #include <cmath>
 #include <boost/config.hpp>
@@ -120,3 +124,4 @@
 #endif /* BOOST_ATANH_HPP */
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/bessel.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/bessel.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/bessel.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,6 +10,10 @@
 #ifndef BOOST_MATH_BESSEL_HPP
 #define BOOST_MATH_BESSEL_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/detail/bessel_jy.hpp>
 #include <boost/math/special_functions/detail/bessel_jn.hpp>
 #include <boost/math/special_functions/detail/bessel_yn.hpp>
@@ -20,6 +24,8 @@
 #include <boost/math/special_functions/sin_pi.hpp>
 #include <boost/math/special_functions/cos_pi.hpp>
 #include <boost/math/special_functions/sinc.hpp>
+#include <boost/math/special_functions/trunc.hpp>
+#include <boost/math/special_functions/round.hpp>
 #include <boost/math/tools/rational.hpp>
 #include <boost/math/tools/promotion.hpp>
 
@@ -123,7 +129,7 @@
       if(floor(v) == v)
       {
          T r = cyl_bessel_j_imp(v, -x, t, pol);
- if(tools::real_cast<int>(v) & 1)
+ if(iround(v, pol) & 1)
             r = -r;
          return r;
       }
@@ -159,7 +165,7 @@
       if(fabs(x) > asymptotic_bessel_j_limit<T>(v, tag_type()))
          return asymptotic_bessel_j_large_x_2(v, x);
       else
- return bessel_jn(tools::real_cast<int>(v), x, pol);
+ return bessel_jn(iround(v, pol), x, pol);
    }
    return cyl_bessel_j_imp(v, x, bessel_no_int_tag(), pol);
 }
@@ -222,7 +228,7 @@
       if(floor(v) == v)
       {
          T r = cyl_bessel_i_imp(v, -x, pol);
- if(tools::real_cast<int>(v) & 1)
+ if(iround(v, pol) & 1)
             r = -r;
          return r;
       }
@@ -286,7 +292,7 @@
    BOOST_MATH_STD_USING
    if((floor(v) == v))
    {
- return bessel_kn(tools::real_cast<int>(v), x, pol);
+ return bessel_kn(itrunc(v), x, pol);
    }
    return cyl_bessel_k_imp(v, x, bessel_no_int_tag(), pol);
 }
@@ -331,12 +337,12 @@
       if((fabs(x) > asymptotic_bessel_y_limit<T>(tag_type())) && (fabs(x) > 5 * abs(v)))
       {
          T r = asymptotic_bessel_y_large_x_2(static_cast<T>(abs(v)), x);
- if((v < 0) && (tools::real_cast<int>(v) & 1))
+ if((v < 0) && (itrunc(v, pol) & 1))
             r = -r;
          return r;
       }
       else
- return bessel_yn(tools::real_cast<int>(v), x, pol);
+ return bessel_yn(itrunc(v, pol), x, pol);
    }
    return cyl_neumann_imp<T>(v, x, bessel_no_int_tag(), pol);
 }
@@ -354,7 +360,7 @@
       return r;
    }
    else
- return bessel_yn(tools::real_cast<int>(v), x, pol);
+ return bessel_yn(v, x, pol);
 }
 
 template <class T, class Policy>
@@ -482,3 +488,4 @@
 } // namespace boost
 
 #endif // BOOST_MATH_BESSEL_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/beta.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/beta.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/beta.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SPECIAL_BETA_HPP
 #define BOOST_MATH_SPECIAL_BETA_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/math_fwd.hpp>
 #include <boost/math/tools/config.hpp>
 #include <boost/math/special_functions/gamma.hpp>
@@ -13,6 +17,7 @@
 #include <boost/math/special_functions/erf.hpp>
 #include <boost/math/special_functions/log1p.hpp>
 #include <boost/math/special_functions/expm1.hpp>
+#include <boost/math/special_functions/trunc.hpp>
 #include <boost/math/tools/roots.hpp>
 #include <boost/static_assert.hpp>
 #include <cmath>
@@ -817,7 +822,7 @@
    BOOST_MATH_STD_USING // ADL of std names
    T result = pow(x, n);
    T term = result;
- for(unsigned i = tools::real_cast<unsigned>(n - 1); i > k; --i)
+ for(unsigned i = itrunc(n - 1); i > k; --i)
    {
       term *= ((i + 1) * y) / ((n - i) * x) ;
       result += term;
@@ -1055,7 +1060,7 @@
          else if(a > 15)
          {
             // sidestep so we can use the series representation:
- int n = static_cast<int>(boost::math::tools::real_cast<long double>(floor(b)));
+ int n = itrunc(floor(b), pol);
             if(n == b)
                --n;
             T bbar = b - n;
@@ -1077,7 +1082,7 @@
             // the formula here for the non-normalised case is tricky to figure
             // out (for me!!), and requires two pochhammer calculations rather
             // than one, so leave it for now....
- int n = static_cast<int>(boost::math::tools::real_cast<long double>(floor(b)));
+ int n = itrunc(floor(b), pol);
             T bbar = b - n;
             if(bbar <= 0)
             {
@@ -1348,3 +1353,4 @@
 
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/binomial.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/binomial.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/binomial.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SF_BINOMIAL_HPP
 #define BOOST_MATH_SF_BINOMIAL_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/factorials.hpp>
 #include <boost/math/special_functions/beta.hpp>
 #include <boost/math/policies/error_handling.hpp>
@@ -73,3 +77,4 @@
 #endif // BOOST_MATH_SF_BINOMIAL_HPP
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/cbrt.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/cbrt.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/cbrt.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SF_CBRT_HPP
 #define BOOST_MATH_SF_CBRT_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/roots.hpp>
 #include <boost/math/special_functions/math_fwd.hpp>
 
@@ -70,3 +74,4 @@
 
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/cos_pi.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/cos_pi.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/cos_pi.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,16 +6,20 @@
 #ifndef BOOST_MATH_COS_PI_HPP
 #define BOOST_MATH_COS_PI_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <cmath>
 #include <boost/math/tools/config.hpp>
-#include <boost/math/tools/real_cast.hpp>
+#include <boost/math/special_functions/trunc.hpp>
 #include <boost/math/tools/promotion.hpp>
 #include <boost/math/constants/constants.hpp>
 
 namespace boost{ namespace math{ namespace detail{
 
-template <class T>
-T cos_pi_imp(T x)
+template <class T, class Policy>
+T cos_pi_imp(T x, const Policy& pol)
 {
    BOOST_MATH_STD_USING // ADL of std names
    // cos of pi*x:
@@ -28,7 +32,7 @@
    }
 
    T rem = floor(x);
- if(tools::real_cast<int>(rem) & 1)
+ if(itrunc(rem, pol) & 1)
       invert = !invert;
    rem = x - rem;
    if(rem > 0.5f)
@@ -43,22 +47,22 @@
    return invert ? -rem : rem;
 }
 
-}
+} // namespace detail
 
 template <class T, class Policy>
-inline typename tools::promote_args<T>::type cos_pi(T x, const Policy&)
+inline typename tools::promote_args<T>::type cos_pi(T x, const Policy& pol)
 {
    typedef typename tools::promote_args<T>::type result_type;
- return boost::math::detail::cos_pi_imp<result_type>(x);
+ return boost::math::detail::cos_pi_imp<result_type>(x, pol);
 }
 
 template <class T>
 inline typename tools::promote_args<T>::type cos_pi(T x)
 {
- typedef typename tools::promote_args<T>::type result_type;
- return boost::math::detail::cos_pi_imp<result_type>(x);
+ return boost::math::cos_pi(x, policies::policy<>());
 }
 
 } // namespace math
 } // namespace boost
 #endif
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_i0.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_i0.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_i0.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_I0_HPP
 #define BOOST_MATH_BESSEL_I0_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/rational.hpp>
 #include <boost/assert.hpp>
 
@@ -94,3 +98,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_I0_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_i1.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_i1.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_i1.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_I1_HPP
 #define BOOST_MATH_BESSEL_I1_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/rational.hpp>
 #include <boost/assert.hpp>
 
@@ -97,3 +101,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_I1_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_ik.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_ik.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_ik.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,11 @@
 #ifndef BOOST_MATH_BESSEL_IK_HPP
 #define BOOST_MATH_BESSEL_IK_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
+#include <boost/math/special_functions/round.hpp>
 #include <boost/math/special_functions/gamma.hpp>
 #include <boost/math/special_functions/sin_pi.hpp>
 #include <boost/math/constants/constants.hpp>
@@ -230,7 +235,7 @@
         v = -v; // v is non-negative from here
         kind |= need_k;
     }
- n = tools::real_cast<unsigned>(v + 0.5f);
+ n = iround(v, pol);
     u = v - n; // -1/2 <= u < 1/2
     BOOST_MATH_INSTRUMENT_VARIABLE(n);
     BOOST_MATH_INSTRUMENT_VARIABLE(u);
@@ -329,3 +334,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_IK_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_j0.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_j0.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_j0.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_J0_HPP
 #define BOOST_MATH_BESSEL_J0_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/constants/constants.hpp>
 #include <boost/math/tools/rational.hpp>
 #include <boost/assert.hpp>
@@ -145,3 +149,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_J0_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_j1.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_j1.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_j1.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_J1_HPP
 #define BOOST_MATH_BESSEL_J1_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/constants/constants.hpp>
 #include <boost/math/tools/rational.hpp>
 #include <boost/assert.hpp>
@@ -150,3 +154,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_J1_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_jn.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_jn.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_jn.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_JN_HPP
 #define BOOST_MATH_BESSEL_JN_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/detail/bessel_j0.hpp>
 #include <boost/math/special_functions/detail/bessel_j1.hpp>
 #include <boost/math/special_functions/detail/bessel_jy.hpp>
@@ -84,3 +88,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_JN_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_jy.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_jy.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_jy.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_JY_HPP
 #define BOOST_MATH_BESSEL_JY_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/config.hpp>
 #include <boost/math/special_functions/gamma.hpp>
 #include <boost/math/special_functions/sign.hpp>
@@ -221,7 +225,7 @@
         v = -v; // v is non-negative from here
         kind = need_j|need_y; // need both for reflection formula
     }
- n = real_cast<unsigned>(v + 0.5L);
+ n = iround(v, pol);
     u = v - n; // -1/2 <= u < 1/2
 
     if (x == 0)
@@ -359,3 +363,4 @@
 }} // namespaces
 
 #endif // BOOST_MATH_BESSEL_JY_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_jy_asym.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_jy_asym.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_jy_asym.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,6 +12,10 @@
 #ifndef BOOST_MATH_SF_DETAIL_BESSEL_JY_ASYM_HPP
 #define BOOST_MATH_SF_DETAIL_BESSEL_JY_ASYM_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/factorials.hpp>
 
 namespace boost{ namespace math{ namespace detail{
@@ -295,3 +299,4 @@
 }}} // namespaces
 
 #endif
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_k0.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_k0.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_k0.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_K0_HPP
 #define BOOST_MATH_BESSEL_K0_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/rational.hpp>
 #include <boost/math/policies/error_handling.hpp>
 #include <boost/assert.hpp>
@@ -114,3 +118,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_K0_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_k1.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_k1.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_k1.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_K1_HPP
 #define BOOST_MATH_BESSEL_K1_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/rational.hpp>
 #include <boost/math/policies/error_handling.hpp>
 #include <boost/assert.hpp>
@@ -110,3 +114,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_K1_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_kn.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_kn.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_kn.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_KN_HPP
 #define BOOST_MATH_BESSEL_KN_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/detail/bessel_k0.hpp>
 #include <boost/math/special_functions/detail/bessel_k1.hpp>
 #include <boost/math/policies/error_handling.hpp>
@@ -67,3 +71,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_KN_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_y0.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_y0.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_y0.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_Y0_HPP
 #define BOOST_MATH_BESSEL_Y0_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/detail/bessel_j0.hpp>
 #include <boost/math/constants/constants.hpp>
 #include <boost/math/tools/rational.hpp>
@@ -175,3 +179,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_Y0_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_y1.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_y1.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_y1.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_Y1_HPP
 #define BOOST_MATH_BESSEL_Y1_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/detail/bessel_j1.hpp>
 #include <boost/math/constants/constants.hpp>
 #include <boost/math/tools/rational.hpp>
@@ -148,3 +152,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_Y1_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/bessel_yn.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/bessel_yn.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/bessel_yn.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_BESSEL_YN_HPP
 #define BOOST_MATH_BESSEL_YN_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/detail/bessel_y0.hpp>
 #include <boost/math/special_functions/detail/bessel_y1.hpp>
 #include <boost/math/policies/error_handling.hpp>
@@ -77,3 +81,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_BESSEL_YN_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/erf_inv.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/erf_inv.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/erf_inv.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SF_ERF_INV_HPP
 #define BOOST_MATH_SF_ERF_INV_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 namespace boost{ namespace math{
 
 namespace detail{
@@ -462,3 +466,4 @@
 } // namespace boost
 
 #endif // BOOST_MATH_SF_ERF_INV_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/detail/gamma_inva.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/gamma_inva.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/gamma_inva.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,10 @@
 #ifndef BOOST_MATH_SP_DETAIL_GAMMA_INVA
 #define BOOST_MATH_SP_DETAIL_GAMMA_INVA
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/toms748_solve.hpp>
 #include <boost/cstdint.hpp>
 
@@ -226,3 +230,4 @@
 #endif // BOOST_MATH_SP_DETAIL_GAMMA_INVA
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/detail/ibeta_inv_ab.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/ibeta_inv_ab.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/ibeta_inv_ab.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,10 @@
 #ifndef BOOST_MATH_SP_DETAIL_BETA_INV_AB
 #define BOOST_MATH_SP_DETAIL_BETA_INV_AB
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/toms748_solve.hpp>
 #include <boost/cstdint.hpp>
 
@@ -317,3 +321,4 @@
 #endif // BOOST_MATH_SP_DETAIL_BETA_INV_AB
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/detail/ibeta_inverse.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/ibeta_inverse.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/ibeta_inverse.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,6 +7,10 @@
 #ifndef BOOST_MATH_SPECIAL_FUNCTIONS_IBETA_INVERSE_HPP
 #define BOOST_MATH_SPECIAL_FUNCTIONS_IBETA_INVERSE_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/beta.hpp>
 #include <boost/math/special_functions/erf.hpp>
 #include <boost/math/tools/roots.hpp>
@@ -932,3 +936,4 @@
 
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/detail/igamma_inverse.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/igamma_inverse.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/igamma_inverse.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,11 +6,15 @@
 #ifndef BOOST_MATH_SPECIAL_FUNCTIONS_IGAMMA_INVERSE_HPP
 #define BOOST_MATH_SPECIAL_FUNCTIONS_IGAMMA_INVERSE_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
+#include <boost/tr1/tuple.hpp>
 #include <boost/math/special_functions/gamma.hpp>
 #include <boost/math/special_functions/sign.hpp>
 #include <boost/math/tools/roots.hpp>
 #include <boost/math/policies/error_handling.hpp>
-#include <boost/tr1/tuple.hpp>
 
 namespace boost{ namespace math{
 
@@ -464,3 +468,4 @@
 #endif // BOOST_MATH_SPECIAL_FUNCTIONS_IGAMMA_INVERSE_HPP
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/detail/igamma_large.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/igamma_large.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/igamma_large.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -45,6 +45,10 @@
 #ifndef BOOST_MATH_DETAIL_IGAMMA_LARGE
 #define BOOST_MATH_DETAIL_IGAMMA_LARGE
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 namespace boost{ namespace math{ namespace detail{
 
 // This version will never be called (at runtime), it's a stub used
@@ -762,3 +766,4 @@
 
 
 #endif // BOOST_MATH_DETAIL_IGAMMA_LARGE
+

Modified: branches/CMake/release/boost/math/special_functions/detail/lgamma_small.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/lgamma_small.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/lgamma_small.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SPECIAL_FUNCTIONS_DETAIL_LGAMMA_SMALL
 #define BOOST_MATH_SPECIAL_FUNCTIONS_DETAIL_LGAMMA_SMALL
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 namespace boost{ namespace math{ namespace detail{
 
 //
@@ -505,3 +509,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_SPECIAL_FUNCTIONS_DETAIL_LGAMMA_SMALL
+

Modified: branches/CMake/release/boost/math/special_functions/detail/simple_complex.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/simple_complex.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/simple_complex.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SF_DETAIL_SIMPLE_COMPLEX_HPP
 #define BOOST_MATH_SF_DETAIL_SIMPLE_COMPLEX_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 namespace boost{ namespace math{ namespace detail{ namespace sc{
 
 template <class T>
@@ -165,3 +169,4 @@
 
 #endif
 
+

Modified: branches/CMake/release/boost/math/special_functions/detail/t_distribution_inv.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/t_distribution_inv.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/t_distribution_inv.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,14 +7,20 @@
 #ifndef BOOST_MATH_SF_DETAIL_INV_T_HPP
 #define BOOST_MATH_SF_DETAIL_INV_T_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/cbrt.hpp>
+#include <boost/math/special_functions/round.hpp>
+#include <boost/math/special_functions/trunc.hpp>
 
 namespace boost{ namespace math{ namespace detail{
 
 //
 // The main method used is due to Hill:
 //
-// G. W. Hill, Algorithm 396, Student’s t-Quantiles,
+// G. W. Hill, Algorithm 396, Student's t-Quantiles,
 // Communications of the ACM, 13(10): 619-620, Oct., 1970.
 //
 template <class T, class Policy>
@@ -61,9 +67,9 @@
 //
 // Tail and body series are due to Shaw:
 //
-// www.mth.kcl.ac.uk/˜shaww/web_page/papers/Tdistribution06.pdf
+// www.mth.kcl.ac.uk/~shaww/web_page/papers/Tdistribution06.pdf
 //
-// Shaw, W.T., 2006, "Sampling Student’s T distribution – use of
+// Shaw, W.T., 2006, "Sampling Student's T distribution - use of
 // the inverse cumulative distribution function."
 // Journal of Computational Finance, Vol 9 Issue 4, pp 37-73, Summer 2006
 //
@@ -200,7 +206,7 @@
       //
       T tolerance = ldexp(1.0f, (2 * policies::digits<T, Policy>()) / 3);
 
- switch(boost::math::tools::real_cast<int>(df))
+ switch(itrunc(df, Policy()))
       {
       case 1:
          {
@@ -364,7 +370,7 @@
          // where we use Shaw's tail series.
          // The crossover point is roughly exponential in -df:
          //
- T crossover = ldexp(1.0f, tools::real_cast<int>(df / -0.654f));
+ T crossover = ldexp(1.0f, iround(df / -0.654f, pol));
          if(u > crossover)
          {
             result = boost::math::detail::inverse_students_t_hill(df, u, pol);
@@ -507,3 +513,4 @@
 #endif // BOOST_MATH_SF_DETAIL_INV_T_HPP
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/detail/unchecked_factorial.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/detail/unchecked_factorial.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/detail/unchecked_factorial.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SP_UC_FACTORIALS_HPP
 #define BOOST_MATH_SP_UC_FACTORIALS_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/array.hpp>
 #ifdef BOOST_MSVC
 #pragma warning(push) // Temporary until lexical cast fixed.
@@ -395,3 +399,4 @@
 } // namespace boost
 
 #endif // BOOST_MATH_SP_UC_FACTORIALS_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/digamma.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/digamma.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/digamma.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SF_DIGAMMA_HPP
 #define BOOST_MATH_SF_DIGAMMA_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/rational.hpp>
 #include <boost/math/tools/promotion.hpp>
 #include <boost/math/policies/error_handling.hpp>
@@ -443,3 +447,4 @@
 } // namespace math
 } // namespace boost
 #endif
+

Modified: branches/CMake/release/boost/math/special_functions/ellint_1.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/ellint_1.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/ellint_1.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,6 +14,10 @@
 #ifndef BOOST_MATH_ELLINT_1_HPP
 #define BOOST_MATH_ELLINT_1_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/ellint_rf.hpp>
 #include <boost/math/constants/constants.hpp>
 #include <boost/math/policies/error_handling.hpp>
@@ -180,3 +184,4 @@
 }} // namespaces
 
 #endif // BOOST_MATH_ELLINT_1_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/ellint_2.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/ellint_2.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/ellint_2.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,6 +14,10 @@
 #ifndef BOOST_MATH_ELLINT_2_HPP
 #define BOOST_MATH_ELLINT_2_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/ellint_rf.hpp>
 #include <boost/math/special_functions/ellint_rd.hpp>
 #include <boost/math/constants/constants.hpp>
@@ -161,3 +165,4 @@
 }} // namespaces
 
 #endif // BOOST_MATH_ELLINT_2_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/ellint_3.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/ellint_3.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/ellint_3.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,6 +14,10 @@
 #ifndef BOOST_MATH_ELLINT_3_HPP
 #define BOOST_MATH_ELLINT_3_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/ellint_rf.hpp>
 #include <boost/math/special_functions/ellint_rj.hpp>
 #include <boost/math/special_functions/ellint_1.hpp>
@@ -28,9 +32,6 @@
 
 namespace boost { namespace math {
    
-template <class T1, class T2, class T3, class Policy>
-typename tools::promote_args<T1, T2, T3>::type ellint_3(T1 k, T2 v, T3 phi, const Policy& pol);
-
 namespace detail{
 
 template <typename T, typename Policy>
@@ -310,7 +311,7 @@
 }
 
 template <class T1, class T2, class T3>
-inline typename tools::promote_args<T1, T2, T3>::type ellint_3(T1 k, T2 v, T3 phi)
+typename detail::ellint_3_result<T1, T2, T3>::type ellint_3(T1 k, T2 v, T3 phi)
 {
    typedef typename policies::is_policy<T3>::type tag_type;
    return detail::ellint_3(k, v, phi, tag_type());
@@ -325,3 +326,4 @@
 }} // namespaces
 
 #endif // BOOST_MATH_ELLINT_3_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/ellint_rc.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/ellint_rc.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/ellint_rc.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,10 @@
 #ifndef BOOST_MATH_ELLINT_RC_HPP
 #define BOOST_MATH_ELLINT_RC_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/policies/error_handling.hpp>
 #include <boost/math/tools/config.hpp>
 #include <boost/math/special_functions/math_fwd.hpp>
@@ -108,3 +112,4 @@
 }} // namespaces
 
 #endif // BOOST_MATH_ELLINT_RC_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/ellint_rd.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/ellint_rd.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/ellint_rd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,6 +11,10 @@
 #ifndef BOOST_MATH_ELLINT_RD_HPP
 #define BOOST_MATH_ELLINT_RD_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/math_fwd.hpp>
 #include <boost/math/tools/config.hpp>
 #include <boost/math/policies/error_handling.hpp>
@@ -123,3 +127,4 @@
 }} // namespaces
 
 #endif // BOOST_MATH_ELLINT_RD_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/ellint_rf.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/ellint_rf.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/ellint_rf.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,6 +12,10 @@
 #ifndef BOOST_MATH_ELLINT_RF_HPP
 #define BOOST_MATH_ELLINT_RF_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/math_fwd.hpp>
 #include <boost/math/tools/config.hpp>
 
@@ -125,3 +129,4 @@
 }} // namespaces
 
 #endif // BOOST_MATH_ELLINT_RF_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/ellint_rj.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/ellint_rj.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/ellint_rj.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,10 @@
 #ifndef BOOST_MATH_ELLINT_RJ_HPP
 #define BOOST_MATH_ELLINT_RJ_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/math_fwd.hpp>
 #include <boost/math/tools/config.hpp>
 #include <boost/math/policies/error_handling.hpp>
@@ -172,3 +176,4 @@
 }} // namespaces
 
 #endif // BOOST_MATH_ELLINT_RJ_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/erf.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/erf.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/erf.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SPECIAL_ERF_HPP
 #define BOOST_MATH_SPECIAL_ERF_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/math_fwd.hpp>
 #include <boost/math/tools/config.hpp>
 #include <boost/math/special_functions/gamma.hpp>
@@ -203,9 +207,27 @@
       }
       else
       {
- static const T n[7] = { 0.00337916709551257778174L, -0.000147024115786688745475L, -0.37463022236812520164L, 0.0163061594494816999803L, -0.0534354147807331748737L, 0.00161898096813581982844L, -0.0059528010489182840404L };
- static const T d[7] = { 1, -0.0435089806536379531594L, 0.442761965043509204727L, -0.017375974533016704678L, 0.0772756490303260060769L, -0.00210552465858669941879L, 0.00544772980263244037286L };
- result = static_cast<T>(z * 1.125f + z * tools::evaluate_polynomial(n, z) / tools::evaluate_polynomial(d, z));
+ // Maximum Deviation Found: 1.561e-17
+ // Expected Error Term: 1.561e-17
+ // Maximum Relative Change in Control Points: 1.155e-04
+ // Max Error found at double precision = 2.961182e-17
+
+ static const T Y = 1.044948577880859375f;
+ static const T P[] = {
+ 0.0834305892146531832907L,
+ -0.338165134459360935041L,
+ -0.0509990735146777432841L,
+ -0.00772758345802133288487L,
+ -0.000322780120964605683831L,
+ };
+ static const T Q[] = {
+ 1L,
+ 0.455004033050794024546L,
+ 0.0875222600142252549554L,
+ 0.00858571925074406212772L,
+ 0.000370900071787748000569L,
+ };
+ result = z * (Y + tools::evaluate_polynomial(P, z * z) / tools::evaluate_polynomial(Q, z * z));
       }
    }
    else if((z < 14) || ((z < 28) && invert))
@@ -214,90 +236,113 @@
       // We'll be calculating erfc:
       //
       invert = !invert;
- T r, b;
- if(z < 0.75)
- {
- // Worst case absolute error found: 8.554649561e-018
- static const T n[5] = { -0.0361790390718262468222L, 0.301888464724047222196L, 0.201731143672633894981L, 0.0659353268087389983319L, 0.00721876720062364930761L };
- static const T d[6] = { 1, 1.58814245739127341535L, 0.99354580430196422336L, 0.291753007176902027213L, 0.033994791234913855515L, -0.000104234653166533504303L };
- static const float f0 = 0.3440242112F;
- r = tools::evaluate_polynomial(n, z - 0.5) / tools::evaluate_polynomial(d, z - 0.5);
- b = f0;
- }
- else if(z < 1.25)
- {
- // Worst case absolute error found: 6.50251514e-018
- static const T n[6] = { -0.039787689261113685983L, 0.160309168830518003303L, 0.163049978514596540313L, 0.0710685660158400750009L, 0.01497188097404877543L, 0.00130080628375002584279L };
- static const T d[6] = { 1, 1.77564880074171280407L, 1.31438791181040008779L, 0.509359151038517059748L, 0.103958527905812829559L, 0.00901292460643094469406L };
- static const float f0 = 0.419990927F;
- r = tools::evaluate_polynomial(n, z - 0.75) / tools::evaluate_polynomial(d, z - 0.75);
- b = f0;
- }
- else if(z < 2.25)
- {
- // Worst case absolute error found: 1.132743504e-017
- static const T n[6] = { -0.0300838560557949724172L, 0.0592886319615167248092L, 0.0622294724048409148736L, 0.0248575228109427909578L, 0.00463781847004901844581L, 0.000347305179334822548368L };
- static const T d[7] = { 1, 1.57915060645728571344L, 1.03342495188878679417L, 0.35158678814344218974L, 0.062469256580984456783L, 0.00466640448020624599948L, 0.290106403940303572448e-6L };
- static const float f0 = 0.4898625016F;
- r = tools::evaluate_polynomial(n, z - 1.25) / tools::evaluate_polynomial(d, z - 1.25);
- b = f0;
- }
- else if(z < 3.5)
- {
- // Worst case absolute error found: 3.446364609e-018
- static const T n[6] = { -0.0117907570137227857015L, 0.0162667227692515660221L, 0.0175329212378413544794L, 0.00620897681269247137578L, 0.000986614895094589251706L, 0.601354618401624353425e-4L };
- static const T d[6] = { 1, 1.33374851361555383557L, 0.73227756904205983415L, 0.207410266363727673685L, 0.0304034048466731110163L, 0.00185296959991832048613L };
- static const float f0 = 0.5317370892F;
- r = tools::evaluate_polynomial(n, z - 2.25) / tools::evaluate_polynomial(d, z - 2.25);
- b = f0;
- }
- else if(z < 5.5)
+ if(z < 1.5f)
       {
- // Worst case absolute error found: 1.579588208e-018
- static const T n[6] = { -0.00588219091116732271979L, 0.00434428684527812140098L, 0.00466899990542371512895L, 0.00139937567253199794533L, 0.000179205902444982389766L, 0.845033527560949509345e-5L };
- static const T d[6] = { 1, 1.07389345953392962127L, 0.470965611895885060643L, 0.105594730223366124873L, 0.0121252833787344059719L, 0.000571755036133730341579L };
- static const float f0 = 0.5494099855F;
- r = tools::evaluate_polynomial(n, z - 3.5) / tools::evaluate_polynomial(d, z - 3.5);
- b = f0;
- }
- else if(z < 9)
- {
- // Worst case absolute error found: 1.410768708e-017
- static const T n[5] = { -0.00273864253749621265032L, 0.0013089921066773026803L, 0.000775841526778089659703L, 0.000110909476102006410909L, 0.472577590124068298534e-5L };
- static const T d[6] = { 1, 0.650694792327863647878L, 0.161126734432670927888L, 0.0180081468446110640846L, 0.000767341359508884026192L, -0.287636719206664167616e-9L };
- static const float f0 = 0.5580308437F;
- r = tools::evaluate_polynomial(n, z - 5.5) / tools::evaluate_polynomial(d, z - 5.5);
- b = f0;
- }
- else if(z < 14)
- {
- // Worst case absolute error found: 1.458310511e-018
- static const T n[5] = { -0.000995856413171151859346L, 0.000320252910249376187643L, 0.000129085624923151780987L, 0.121577881306587454509e-4L, 0.33293110334156470348e-6L };
- static const T d[5] = { 1, 0.428034987547594828954L, 0.0692297359775940896439L, 0.00501515176145997560701L, 0.00013733589151338416322L };
- static const float f0 = 0.5617653728F;
- r = tools::evaluate_polynomial(n, z - 9) / tools::evaluate_polynomial(d, z - 9);
- b = f0;
- }
- else if(z < 21)
- {
- // Worst case absolute error found: 1.08182873e-019
- static const T n[5] = { -0.000395463268432048215535L, 0.91155953112698182321e-4L, 0.237451641259281193813e-4L, 0.145759953022524466816e-5L, 0.259395907606548998142e-7L };
- static const T d[5] = { 1, 0.281604524251560309285L, 0.0298468482900092392397L, 0.00141114575715338885136L, 0.251128951158576064819e-4L };
- static const float f0 = 0.5631566644F;
- r = tools::evaluate_polynomial(n, z - 14) / tools::evaluate_polynomial(d, z - 14);
- b = f0;
+ // Maximum Deviation Found: 3.702e-17
+ // Expected Error Term: 3.702e-17
+ // Maximum Relative Change in Control Points: 2.845e-04
+ // Max Error found at double precision = 4.841816e-17
+ static const T Y = 0.405935764312744140625f;
+ static const T P[] = {
+ -0.098090592216281240205L,
+ 0.178114665841120341155L,
+ 0.191003695796775433986L,
+ 0.0888900368967884466578L,
+ 0.0195049001251218801359L,
+ 0.00180424538297014223957L,
+ };
+ static const T Q[] = {
+ 1L,
+ 1.84759070983002217845L,
+ 1.42628004845511324508L,
+ 0.578052804889902404909L,
+ 0.12385097467900864233L,
+ 0.0113385233577001411017L,
+ 0.337511472483094676155e-5L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 0.5) / tools::evaluate_polynomial(Q, z - 0.5);
+ result *= exp(-z * z) / z;
+ }
+ else if(z < 2.5f)
+ {
+ // Max Error found at double precision = 6.599585e-18
+ // Maximum Deviation Found: 3.909e-18
+ // Expected Error Term: 3.909e-18
+ // Maximum Relative Change in Control Points: 9.886e-05
+ static const T Y = 0.50672817230224609375f;
+ static const T P[] = {
+ -0.0243500476207698441272L,
+ 0.0386540375035707201728L,
+ 0.04394818964209516296L,
+ 0.0175679436311802092299L,
+ 0.00323962406290842133584L,
+ 0.000235839115596880717416L,
+ };
+ static const T Q[] = {
+ 1L,
+ 1.53991494948552447182L,
+ 0.982403709157920235114L,
+ 0.325732924782444448493L,
+ 0.0563921837420478160373L,
+ 0.00410369723978904575884L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 1.5) / tools::evaluate_polynomial(Q, z - 1.5);
+ result *= exp(-z * z) / z;
+ }
+ else if(z < 4.5f)
+ {
+ // Maximum Deviation Found: 1.512e-17
+ // Expected Error Term: 1.512e-17
+ // Maximum Relative Change in Control Points: 2.222e-04
+ // Max Error found at double precision = 2.062515e-17
+ static const T Y = 0.5405750274658203125f;
+ static const T P[] = {
+ 0.00295276716530971662634L,
+ 0.0137384425896355332126L,
+ 0.00840807615555585383007L,
+ 0.00212825620914618649141L,
+ 0.000250269961544794627958L,
+ 0.113212406648847561139e-4L,
+ };
+ static const T Q[] = {
+ 1L,
+ 1.04217814166938418171L,
+ 0.442597659481563127003L,
+ 0.0958492726301061423444L,
+ 0.0105982906484876531489L,
+ 0.000479411269521714493907L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 3.5) / tools::evaluate_polynomial(Q, z - 3.5);
+ result *= exp(-z * z) / z;
       }
       else
       {
- // Worst case absolute error found: 7.010370259e-018
- static const T n[4] = { -0.000139182098873874523526L, 0.395254617101737287826e-4L, 0.376801239136290345387e-5L, 0.629017242098850415839e-7L };
- static const T d[4] = { 1, 0.15077096006891495258L, 0.00756136203065884121997L, 0.000126226197336507576933L };
- static const float f0 = 0.5636912584F;
- r = tools::evaluate_polynomial(n, z - 21) / tools::evaluate_polynomial(d, z - 21);
- b = f0;
+ // Max Error found at double precision = 2.997958e-17
+ // Maximum Deviation Found: 2.860e-17
+ // Expected Error Term: 2.859e-17
+ // Maximum Relative Change in Control Points: 1.357e-05
+ static const T Y = 0.5579090118408203125f;
+ static const T P[] = {
+ 0.00628057170626964891937L,
+ 0.0175389834052493308818L,
+ -0.212652252872804219852L,
+ -0.687717681153649930619L,
+ -2.5518551727311523996L,
+ -3.22729451764143718517L,
+ -2.8175401114513378771L,
+ };
+ static const T Q[] = {
+ 1L,
+ 2.79257750980575282228L,
+ 11.0567237927800161565L,
+ 15.930646027911794143L,
+ 22.9367376522880577224L,
+ 13.5064170191802889145L,
+ 5.48409182238641741584L,
+ };
+ result = Y + tools::evaluate_polynomial(P, 1 / z) / tools::evaluate_polynomial(Q, 1 / z);
+ result *= exp(-z * z) / z;
       }
- T g = exp(-z * z) / z;
- result = g * b + g * r;
    }
    else
    {
@@ -356,10 +401,28 @@
       }
       else
       {
- // Worst case absolute error found: 6.688618532e-21
- static const T n[8] = { 0.00337916709551257388990745L, -0.00073695653048167948530905L, -0.374732337392919607868241L, 0.0817442448733587196071743L, -0.0421089319936548595203468L, 0.0070165709512095756344528L, -0.00495091255982435110337458L, 0.000871646599037922480317225L };
- static const T d[8] = { 1L, -0.218088218087924645390535L, 0.412542972725442099083918L, -0.0841891147873106755410271L, 0.0655338856400241519690695L, -0.0120019604454941768171266L, 0.00408165558926174048329689L, -0.000615900721557769691924509L };
- result = z * 1.125 + z * tools::evaluate_polynomial(n, z) / tools::evaluate_polynomial(d, z);
+ // Max Error found at long double precision = 1.623299e-20
+ // Maximum Deviation Found: 4.326e-22
+ // Expected Error Term: -4.326e-22
+ // Maximum Relative Change in Control Points: 1.474e-04
+ static const T Y = 1.044948577880859375f;
+ static const T P[] = {
+ 0.0834305892146531988966L,
+ -0.338097283075565413695L,
+ -0.0509602734406067204596L,
+ -0.00904906346158537794396L,
+ -0.000489468651464798669181L,
+ -0.200305626366151877759e-4L,
+ };
+ static const T Q[] = {
+ 1L,
+ 0.455817300515875172439L,
+ 0.0916537354356241792007L,
+ 0.0102722652675910031202L,
+ 0.000650511752687851548735L,
+ 0.189532519105655496778e-4L,
+ };
+ result = z * (Y + tools::evaluate_polynomial(P, z * z) / tools::evaluate_polynomial(Q, z * z));
       }
    }
    else if((z < 110) || ((z < 110) && invert)) // TODO FIXME!!!
@@ -368,134 +431,128 @@
       // We'll be calculating erfc:
       //
       invert = !invert;
- T r, b;
- if(z < 0.75)
+ if(z < 1.5)
       {
- // Worst case absolute error found: 5.582813374e-21
- static const T n[6] = { -0.0361790390718262471360258L, 0.292251883444882683221149L, 0.281447041797604512774415L, 0.125610208862766947294894L, 0.0274135028268930549240776L, 0.00250839672168065762786937L };
- static const T d[6] = { 1L, 1.8545005897903486499845L, 1.43575803037831418074962L, 0.582827658753036572454135L, 0.124810476932949746447682L, 0.0113724176546353285778481L };
- static const float f0 = 0.3440242112F;
- r = tools::evaluate_polynomial(n, z - 0.5) / tools::evaluate_polynomial(d, z - 0.5);
- b = f0;
- }
- else if(z < 1.25)
- {
- // Worst case absolute error found: 4.01854729e-21
- static const T n[7] = { -0.0397876892611136856954425L, 0.153165212467878293257683L, 0.191260295600936245503129L, 0.10276327061989304213645L, 0.029637090615738836726027L, 0.0046093486780275489468812L, 0.000307607820348680180548455L };
- static const T d[7] = { 1L, 1.95520072987627704987886L, 1.64762317199384860109595L, 0.768238607022126250082483L, 0.209793185936509782784315L, 0.0319569316899913392596356L, 0.00213363160895785378615014L };
- static const float f0 = 0.419990927F;
- r = tools::evaluate_polynomial(n, z - 0.75) / tools::evaluate_polynomial(d, z - 0.75);
- b = f0;
+ // Max Error found at long double precision = 3.239590e-20
+ // Maximum Deviation Found: 2.241e-20
+ // Expected Error Term: -2.241e-20
+ // Maximum Relative Change in Control Points: 5.110e-03
+ static const T Y = 0.405935764312744140625f;
+ static const T P[] = {
+ -0.0980905922162812031672L,
+ 0.159989089922969141329L,
+ 0.222359821619935712378L,
+ 0.127303921703577362312L,
+ 0.0384057530342762400273L,
+ 0.00628431160851156719325L,
+ 0.000441266654514391746428L,
+ 0.266689068336295642561e-7L,
+ };
+ static const T Q[] = {
+ 1L,
+ 2.03237474985469469291L,
+ 1.78355454954969405222L,
+ 0.867940326293760578231L,
+ 0.248025606990021698392L,
+ 0.0396649631833002269861L,
+ 0.00279220237309449026796L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 0.5f) / tools::evaluate_polynomial(Q, z - 0.5f);
+ result *= exp(-z * z) / z;
+ }
+ else if(z < 2.5)
+ {
+ // Max Error found at long double precision = 3.686211e-21
+ // Maximum Deviation Found: 1.495e-21
+ // Expected Error Term: -1.494e-21
+ // Maximum Relative Change in Control Points: 1.793e-04
+ static const T Y = 0.50672817230224609375f;
+ static const T P[] = {
+ -0.024350047620769840217L,
+ 0.0343522687935671451309L,
+ 0.0505420824305544949541L,
+ 0.0257479325917757388209L,
+ 0.00669349844190354356118L,
+ 0.00090807914416099524444L,
+ 0.515917266698050027934e-4L,
+ };
+ static const T Q[] = {
+ 1L,
+ 1.71657861671930336344L,
+ 1.26409634824280366218L,
+ 0.512371437838969015941L,
+ 0.120902623051120950935L,
+ 0.0158027197831887485261L,
+ 0.000897871370778031611439L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 1.5f) / tools::evaluate_polynomial(Q, z - 1.5f);
+ result *= exp(-z * z) / z;
+ }
+ else if(z < 4.5)
+ {
+ // Maximum Deviation Found: 1.107e-20
+ // Expected Error Term: -1.106e-20
+ // Maximum Relative Change in Control Points: 1.709e-04
+ // Max Error found at long double precision = 1.446908e-20
+ static const T Y = 0.5405750274658203125f;
+ static const T P[] = {
+ 0.0029527671653097284033L,
+ 0.0141853245895495604051L,
+ 0.0104959584626432293901L,
+ 0.00343963795976100077626L,
+ 0.00059065441194877637899L,
+ 0.523435380636174008685e-4L,
+ 0.189896043050331257262e-5L,
+ };
+ static const T Q[] = {
+ 1L,
+ 1.19352160185285642574L,
+ 0.603256964363454392857L,
+ 0.165411142458540585835L,
+ 0.0259729870946203166468L,
+ 0.00221657568292893699158L,
+ 0.804149464190309799804e-4L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 3.5f) / tools::evaluate_polynomial(Q, z - 3.5f);
+ result *= exp(-z * z) / z;
       }
- else if(z < 2.25)
- {
- // Worst case absolute error found: 2.866005373e-21
- static const T n[7] = { -0.0300838560557949717328341L, 0.0538578829844454508530552L, 0.0726211541651914182692959L, 0.0367628469888049348429018L, 0.00964629015572527529605267L, 0.00133453480075291076745275L, 0.778087599782504251917881e-4L };
- static const T d[8] = { 1L, 1.75967098147167528287343L, 1.32883571437961120556307L, 0.552528596508757581287907L, 0.133793056941332861912279L, 0.0179509645176280768640766L, 0.00104712440019937356634038L, -0.106640381820357337177643e-7L };
- static const float f0 = 0.4898625016F;
- r = tools::evaluate_polynomial(n, z - 1.25) / tools::evaluate_polynomial(d, z - 1.25);
- b = f0;
- }
- else if(z < 3.5)
+ else
       {
- // Worst case absolute error found: 1.045355789e-21
- static const T n[7] = { -0.0117907570137227847827732L, 0.014262132090538809896674L, 0.0202234435902960820020765L, 0.00930668299990432009042239L, 0.00213357802422065994322516L, 0.00025022987386460102395382L, 0.120534912219588189822126e-4L };
- static const T d[7] = { 1L, 1.50376225203620482047419L, 0.965397786204462896346934L, 0.339265230476796681555511L, 0.0689740649541569716897427L, 0.00771060262491768307365526L, 0.000371421101531069302990367L };
- static const float f0 = 0.5317370892F;
- r = tools::evaluate_polynomial(n, z - 2.25) / tools::evaluate_polynomial(d, z - 2.25);
- b = f0;
- }
- else if(z < 5.25)
- {
- // Worst case absolute error found: 8.300028706e-22
- static const T n[7] = { -0.00546954795538729307482955L, 0.00404190278731707110245394L, 0.0054963369553161170521356L, 0.00212616472603945399437862L, 0.000394984014495083900689956L, 0.365565477064442377259271e-4L, 0.135485897109932323253786e-5L };
- static const T d[8] = { 1L, 1.21019697773630784832251L, 0.620914668221143886601045L, 0.173038430661142762569515L, 0.0276550813773432047594539L, 0.00240625974424309709745382L, 0.891811817251336577241006e-4L, -0.465528836283382684461025e-11L };
- static const float f0 = 0.5489973426F;
- r = tools::evaluate_polynomial(n, z - 3.5) / tools::evaluate_polynomial(d, z - 3.5);
- b = f0;
- }
- else if(z < 8)
- {
- // Worst case absolute error found: 1.700157534e-21
- static const T n[6] = { -0.00270722535905778347999196L, 0.0013187563425029400461378L, 0.00119925933261002333923989L, 0.00027849619811344664248235L, 0.267822988218331849989363e-4L, 0.923043672315028197865066e-6L };
- static const T d[7] = { 1L, 0.814632808543141591118279L, 0.268901665856299542168425L, 0.0449877216103041118694989L, 0.00381759663320248459168994L, 0.000131571897888596914350697L, 0.404815359675764138445257e-11L };
- static const float f0 = 0.5571740866F;
- r = tools::evaluate_polynomial(n, z - 5.25) / tools::evaluate_polynomial(d, z - 5.25);
- b = f0;
+ // Max Error found at long double precision = 7.961166e-21
+ // Maximum Deviation Found: 6.677e-21
+ // Expected Error Term: 6.676e-21
+ // Maximum Relative Change in Control Points: 2.319e-05
+ static const T Y = 0.55825519561767578125f;
+ static const T P[] = {
+ 0.00593438793008050214106L,
+ 0.0280666231009089713937L,
+ -0.141597835204583050043L,
+ -0.978088201154300548842L,
+ -5.47351527796012049443L,
+ -13.8677304660245326627L,
+ -27.1274948720539821722L,
+ -29.2545152747009461519L,
+ -16.8865774499799676937L,
+ };
+ static const T Q[] = {
+ 1L,
+ 4.72948911186645394541L,
+ 23.6750543147695749212L,
+ 60.0021517335693186785L,
+ 131.766251645149522868L,
+ 178.167924971283482513L,
+ 182.499390505915222699L,
+ 104.365251479578577989L,
+ 30.8365511891224291717L,
+ };
+ result = Y + tools::evaluate_polynomial(P, 1 / z) / tools::evaluate_polynomial(Q, 1 / z);
+ result *= exp(-z * z) / z;
       }
- else if(z < 11.5)
- {
- //Worst case absolute error found: 3.002278011e-22
- static const T n[6] = { -0.00109946720691742196814323L, 0.000406425442750422675169153L, 0.000274499489416900707787024L, 0.465293770646659383436343e-4L, 0.320955425395767463401993e-5L, 0.778286018145020892261936e-7L };
- static const T d[6] = { 1L, 0.588173710611846046373373L, 0.139363331289409746077541L, 0.0166329340417083678763028L, 0.00100023921310234908642639L, 0.24254837521587225125068e-4L };
- static const float f0 = 0.5609807968F;
- r = tools::evaluate_polynomial(n, z - 8) / tools::evaluate_polynomial(d, z - 8);
- b = f0;
- }
- else if(z < 17)
- {
- //Worst case absolute error found: 6.741114695e-21
- static const T n[5] = { -0.00056907993601094962855594L, 0.000169498540373762264416984L, 0.518472354581100890120501e-4L, 0.382819312231928859704678e-5L, 0.824989931281894431781794e-7L };
- static const T d[6] = { 1L, 0.339637250051139347430323L, 0.043472647870310663055044L, 0.00248549335224637114641629L, 0.535633305337152900549536e-4L, -0.117490944405459578783846e-12L };
- static const float f0 = 0.5626493692F;
- r = tools::evaluate_polynomial(n, z - 11.5) / tools::evaluate_polynomial(d, z - 11.5);
- b = f0;
- }
- else if(z < 24)
- {
- // Worst case absolute error found: 7.802346984e-22
- static const T n[5] = { -0.000241313599483991337479091L, 0.574224975202501512365975e-4L, 0.115998962927383778460557e-4L, 0.581762134402593739370875e-6L, 0.853971555085673614607418e-8L };
- static const T d[5] = { 1L, 0.233044138299687841018015L, 0.0204186940546440312625597L, 0.000797185647564398289151125L, 0.117019281670172327758019e-4L };
- static const float f0 = 0.5634598136F;
- r = tools::evaluate_polynomial(n, z - 17) / tools::evaluate_polynomial(d, z - 17);
- b = f0;
- }
- else if(z < 38)
- {
- // Worst case absolute error found: 2.414228989e-22
- static const T n[5] = { -0.000146674699277760365803642L, 0.162666552112280519955647e-4L, 0.269116248509165239294897e-5L, 0.979584479468091935086972e-7L, 0.101994647625723465722285e-8L };
- static const T d[5] = { 1L, 0.165907812944847226546036L, 0.0103361716191505884359634L, 0.000286593026373868366935721L, 0.298401570840900340874568e-5L };
- static const float f0 = 0.5638477802F;
- r = tools::evaluate_polynomial(n, z - 24) / tools::evaluate_polynomial(d, z - 24);
- b = f0;
- }
- else if(z < 60)
- {
- // Worst case absolute error found: 5.896543869e-24
- static const T n[5] = { -0.583905797629771786720406e-4L, 0.412510325105496173512992e-5L, 0.431790922420250949096906e-6L, 0.993365155590013193345569e-8L, 0.653480510020104699270084e-10L };
- static const T d[5] = { 1L, 0.105077086072039915406159L, 0.00414278428675475620830226L, 0.726338754644523769144108e-4L, 0.477818471047398785369849e-6L };
- static const float f0 = 0.5640528202F;
- r = tools::evaluate_polynomial(n, z - 38) / tools::evaluate_polynomial(d, z - 38);
- b = f0;
- }
- else if(z < 85)
- {
- // Worst case absolute error found: 3.080612264e-21
- static const T n[4] = { -0.196457797609229579459841e-4L, 0.157243887666800692441195e-5L, 0.543902511192700878690335e-7L, 0.317472492369117710852685e-9L };
- static const T d[5] = { 1L, 0.052803989240957632204885L, 0.000926876069151753290378112L, 0.541011723226630257077328e-5L, 0.535093845803642394908747e-15L };
- static const float f0 = 0.5641309023F;
- r = tools::evaluate_polynomial(n, z - 60) / tools::evaluate_polynomial(d, z - 60);
- b = f0;
- }
- else
- {
- // Worst case absolute error found: 8.094633491e-22
- static const T n[4] = { -0.789224703978722689089794e-5L, 0.622088451660986955124162e-6L, 0.145728445676882396797184e-7L, 0.603715505542715364529243e-10L };
- static const T d[4] = { 1L, 0.0375328846356293715248719L, 0.000467919535974625308126054L, 0.193847039275845656900547e-5L };
- static const float f0 = 0.5641584396F;
- r = tools::evaluate_polynomial(n, z - 85) / tools::evaluate_polynomial(d, z - 85);
- b = f0;
- }
- T g = exp(-z * z) / z;
- result = g * b + g * r;
- BOOST_MATH_INSTRUMENT_CODE("r = " << r);
- BOOST_MATH_INSTRUMENT_CODE("b = " << b);
- BOOST_MATH_INSTRUMENT_CODE("g = " << g);
    }
    else
    {
       //
- // Any value of z larger than 28 will underflow to zero:
+ // Any value of z larger than 110 will underflow to zero:
       //
       result = 0;
       invert = !invert;
@@ -549,184 +606,352 @@
       }
       else
       {
- // Worst case absolute error found: 1.928180863e-35
- static const T n[13] = { 0.0033791670955125738961589031215451706772L, -0.000356604747854533671135323429762519216044L, -0.374476838669183581687167228866769133591L, 0.0395338132469809122364498388174446488042L, -0.070405473508786506375820161461872523315L, 0.00575264725772369303419496752516485264994L, -0.0122324470706306942925087773122510971344L, 0.000982833333252586078523570049842642796291L, -0.000937806155615159592441487275938040285833L, 0.485407838108763091860415874932955355755e-4L, -0.50171236926234625577876479444632561922e-4L, 0.19406068817888598455243350289053451571e-5L, -0.119351103792049576459000102632508734863e-5L };
- static const T d[13] = { 1L, -0.105530368216503232473476334993759958083L, 0.488152943026846232046726653294817930988L, -0.0470361716364117780901924633553851211874L, 0.107663671943702835026199580597519084906L, -0.00919493879447389180633447493128337242362L, 0.0138231121717229362691899919242806829805L, -0.000994048559663865788847688218108232247441L, 0.00109769834527023265969224251892094019735L, -0.600458401801636062015615549258555311545e-4L, 0.51530723974502946291624848874654212384e-4L, -0.164121264470361558910636548509486296153e-5L, 0.112643498977070218963888579607359294396e-5L };
-
- result = z * 1.125 + z * tools::evaluate_rational(n, d, z);
+ // Max Error found at long double precision = 2.342380e-35
+ // Maximum Deviation Found: 6.124e-36
+ // Expected Error Term: -6.124e-36
+ // Maximum Relative Change in Control Points: 3.492e-10
+ static const T Y = 1.0841522216796875f;
+ static const T P[] = {
+ 0.0442269454158250738961589031215451778L,
+ -0.35549265736002144875335323556961233L,
+ -0.0582179564566667896225454670863270393L,
+ -0.0112694696904802304229950538453123925L,
+ -0.000805730648981801146251825329609079099L,
+ -0.566304966591936566229702842075966273e-4L,
+ -0.169655010425186987820201021510002265e-5L,
+ -0.344448249920445916714548295433198544e-7L,
+ };
+ static const T Q[] = {
+ 1L,
+ 0.466542092785657604666906909196052522L,
+ 0.100005087012526447295176964142107611L,
+ 0.0128341535890117646540050072234142603L,
+ 0.00107150448466867929159660677016658186L,
+ 0.586168368028999183607733369248338474e-4L,
+ 0.196230608502104324965623171516808796e-5L,
+ 0.313388521582925207734229967907890146e-7L,
+ };
+ result = z * (Y + tools::evaluate_polynomial(P, z * z) / tools::evaluate_polynomial(Q, z * z));
       }
    }
- else if((z < 9) || ((z < 110) && invert)) // TODO FIXME!!
+ else if((z < 9) || ((z < 110) && invert))
    {
       //
       // We'll be calculating erfc:
       //
       invert = !invert;
- T r, b;
- if(z < 0.75)
+ if(z < 1)
+ {
+ // Max Error found at long double precision = 3.246278e-35
+ // Maximum Deviation Found: 1.388e-35
+ // Expected Error Term: 1.387e-35
+ // Maximum Relative Change in Control Points: 6.127e-05
+ static const T Y = 0.371877193450927734375f;
+ static const T P[] = {
+ -0.0640320213544647969396032886581290455L,
+ 0.200769874440155895637857443946706731L,
+ 0.378447199873537170666487408805779826L,
+ 0.30521399466465939450398642044975127L,
+ 0.146890026406815277906781824723458196L,
+ 0.0464837937749539978247589252732769567L,
+ 0.00987895759019540115099100165904822903L,
+ 0.00137507575429025512038051025154301132L,
+ 0.0001144764551085935580772512359680516L,
+ 0.436544865032836914773944382339900079e-5L,
+ };
+ static const T Q[] = {
+ 1L,
+ 2.47651182872457465043733800302427977L,
+ 2.78706486002517996428836400245547955L,
+ 1.87295924621659627926365005293130693L,
+ 0.829375825174365625428280908787261065L,
+ 0.251334771307848291593780143950311514L,
+ 0.0522110268876176186719436765734722473L,
+ 0.00718332151250963182233267040106902368L,
+ 0.000595279058621482041084986219276392459L,
+ 0.226988669466501655990637599399326874e-4L,
+ 0.270666232259029102353426738909226413e-10L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 0.5f) / tools::evaluate_polynomial(Q, z - 0.5f);
+ result *= exp(-z * z) / z;
+ }
+ else if(z < 1.5)
+ {
+ // Max Error found at long double precision = 2.215785e-35
+ // Maximum Deviation Found: 1.539e-35
+ // Expected Error Term: 1.538e-35
+ // Maximum Relative Change in Control Points: 6.104e-05
+ static const T Y = 0.45658016204833984375f;
+ static const T P[] = {
+ -0.0289965858925328393392496555094848345L,
+ 0.0868181194868601184627743162571779226L,
+ 0.169373435121178901746317404936356745L,
+ 0.13350446515949251201104889028133486L,
+ 0.0617447837290183627136837688446313313L,
+ 0.0185618495228251406703152962489700468L,
+ 0.00371949406491883508764162050169531013L,
+ 0.000485121708792921297742105775823900772L,
+ 0.376494706741453489892108068231400061e-4L,
+ 0.133166058052466262415271732172490045e-5L,
+ };
+ static const T Q[] = {
+ 1L,
+ 2.32970330146503867261275580968135126L,
+ 2.46325715420422771961250513514928746L,
+ 1.55307882560757679068505047390857842L,
+ 0.644274289865972449441174485441409076L,
+ 0.182609091063258208068606847453955649L,
+ 0.0354171651271241474946129665801606795L,
+ 0.00454060370165285246451879969534083997L,
+ 0.000349871943711566546821198612518656486L,
+ 0.123749319840299552925421880481085392e-4L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 1.0f) / tools::evaluate_polynomial(Q, z - 1.0f);
+ result *= exp(-z * z) / z;
+ }
+ else if(z < 2.25)
+ {
+ // Maximum Deviation Found: 1.418e-35
+ // Expected Error Term: 1.418e-35
+ // Maximum Relative Change in Control Points: 1.316e-04
+ // Max Error found at long double precision = 1.998462e-35
+ static const T Y = 0.50250148773193359375f;
+ static const T P[] = {
+ -0.0201233630504573402185161184151016606L,
+ 0.0331864357574860196516686996302305002L,
+ 0.0716562720864787193337475444413405461L,
+ 0.0545835322082103985114927569724880658L,
+ 0.0236692635189696678976549720784989593L,
+ 0.00656970902163248872837262539337601845L,
+ 0.00120282643299089441390490459256235021L,
+ 0.000142123229065182650020762792081622986L,
+ 0.991531438367015135346716277792989347e-5L,
+ 0.312857043762117596999398067153076051e-6L,
+ };
+ static const T Q[] = {
+ 1L,
+ 2.13506082409097783827103424943508554L,
+ 2.06399257267556230937723190496806215L,
+ 1.18678481279932541314830499880691109L,
+ 0.447733186643051752513538142316799562L,
+ 0.11505680005657879437196953047542148L,
+ 0.020163993632192726170219663831914034L,
+ 0.00232708971840141388847728782209730585L,
+ 0.000160733201627963528519726484608224112L,
+ 0.507158721790721802724402992033269266e-5L,
+ 0.18647774409821470950544212696270639e-12L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 1.5f) / tools::evaluate_polynomial(Q, z - 1.5f);
+ result *= exp(-z * z) / z;
+ }
+ else if (z < 3)
+ {
+ // Maximum Deviation Found: 3.575e-36
+ // Expected Error Term: 3.575e-36
+ // Maximum Relative Change in Control Points: 7.103e-05
+ // Max Error found at long double precision = 5.794737e-36
+ static const T Y = 0.52896785736083984375f;
+ static const T P[] = {
+ -0.00902152521745813634562524098263360074L,
+ 0.0145207142776691539346923710537580927L,
+ 0.0301681239582193983824211995978678571L,
+ 0.0215548540823305814379020678660434461L,
+ 0.00864683476267958365678294164340749949L,
+ 0.00219693096885585491739823283511049902L,
+ 0.000364961639163319762492184502159894371L,
+ 0.388174251026723752769264051548703059e-4L,
+ 0.241918026931789436000532513553594321e-5L,
+ 0.676586625472423508158937481943649258e-7L,
+ };
+ static const T Q[] = {
+ 1L,
+ 1.93669171363907292305550231764920001L,
+ 1.69468476144051356810672506101377494L,
+ 0.880023580986436640372794392579985511L,
+ 0.299099106711315090710836273697708402L,
+ 0.0690593962363545715997445583603382337L,
+ 0.0108427016361318921960863149875360222L,
+ 0.00111747247208044534520499324234317695L,
+ 0.686843205749767250666787987163701209e-4L,
+ 0.192093541425429248675532015101904262e-5L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 2.25f) / tools::evaluate_polynomial(Q, z - 2.25f);
+ result *= exp(-z * z) / z;
+ }
+ else if(z < 3.5)
+ {
+ // Maximum Deviation Found: 8.126e-37
+ // Expected Error Term: -8.126e-37
+ // Maximum Relative Change in Control Points: 1.363e-04
+ // Max Error found at long double precision = 1.747062e-36
+ static const T Y = 0.54037380218505859375f;
+ static const T P[] = {
+ -0.0033703486408887424921155540591370375L,
+ 0.0104948043110005245215286678898115811L,
+ 0.0148530118504000311502310457390417795L,
+ 0.00816693029245443090102738825536188916L,
+ 0.00249716579989140882491939681805594585L,
+ 0.0004655591010047353023978045800916647L,
+ 0.531129557920045295895085236636025323e-4L,
+ 0.343526765122727069515775194111741049e-5L,
+ 0.971120407556888763695313774578711839e-7L,
+ };
+ static const T Q[] = {
+ 1L,
+ 1.59911256167540354915906501335919317L,
+ 1.136006830764025173864831382946934L,
+ 0.468565867990030871678574840738423023L,
+ 0.122821824954470343413956476900662236L,
+ 0.0209670914950115943338996513330141633L,
+ 0.00227845718243186165620199012883547257L,
+ 0.000144243326443913171313947613547085553L,
+ 0.407763415954267700941230249989140046e-5L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 3.0f) / tools::evaluate_polynomial(Q, z - 3.0f);
+ result *= exp(-z * z) / z;
+ }
+ else if(z < 5.5)
+ {
+ // Maximum Deviation Found: 5.804e-36
+ // Expected Error Term: -5.803e-36
+ // Maximum Relative Change in Control Points: 2.475e-05
+ // Max Error found at long double precision = 1.349545e-35
+ static const T Y = 0.55000019073486328125f;
+ static const T P[] = {
+ 0.00118142849742309772151454518093813615L,
+ 0.0072201822885703318172366893469382745L,
+ 0.0078782276276860110721875733778481505L,
+ 0.00418229166204362376187593976656261146L,
+ 0.00134198400587769200074194304298642705L,
+ 0.000283210387078004063264777611497435572L,
+ 0.405687064094911866569295610914844928e-4L,
+ 0.39348283801568113807887364414008292e-5L,
+ 0.248798540917787001526976889284624449e-6L,
+ 0.929502490223452372919607105387474751e-8L,
+ 0.156161469668275442569286723236274457e-9L,
+ };
+ static const T Q[] = {
+ 1L,
+ 1.52955245103668419479878456656709381L,
+ 1.06263944820093830054635017117417064L,
+ 0.441684612681607364321013134378316463L,
+ 0.121665258426166960049773715928906382L,
+ 0.0232134512374747691424978642874321434L,
+ 0.00310778180686296328582860464875562636L,
+ 0.000288361770756174705123674838640161693L,
+ 0.177529187194133944622193191942300132e-4L,
+ 0.655068544833064069223029299070876623e-6L,
+ 0.11005507545746069573608988651927452e-7L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 4.5f) / tools::evaluate_polynomial(Q, z - 4.5f);
+ result *= exp(-z * z) / z;
+ }
+ else if(z < 7.5)
+ {
+ // Maximum Deviation Found: 1.007e-36
+ // Expected Error Term: 1.007e-36
+ // Maximum Relative Change in Control Points: 1.027e-03
+ // Max Error found at long double precision = 2.646420e-36
+ static const T Y = 0.5574436187744140625f;
+ static const T P[] = {
+ 0.000293236907400849056269309713064107674L,
+ 0.00225110719535060642692275221961480162L,
+ 0.00190984458121502831421717207849429799L,
+ 0.000747757733460111743833929141001680706L,
+ 0.000170663175280949889583158597373928096L,
+ 0.246441188958013822253071608197514058e-4L,
+ 0.229818000860544644974205957895688106e-5L,
+ 0.134886977703388748488480980637704864e-6L,
+ 0.454764611880548962757125070106650958e-8L,
+ 0.673002744115866600294723141176820155e-10L,
+ };
+ static const T Q[] = {
+ 1L,
+ 1.12843690320861239631195353379313367L,
+ 0.569900657061622955362493442186537259L,
+ 0.169094404206844928112348730277514273L,
+ 0.0324887449084220415058158657252147063L,
+ 0.00419252877436825753042680842608219552L,
+ 0.00036344133176118603523976748563178578L,
+ 0.204123895931375107397698245752850347e-4L,
+ 0.674128352521481412232785122943508729e-6L,
+ 0.997637501418963696542159244436245077e-8L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z - 6.5f) / tools::evaluate_polynomial(Q, z - 6.5f);
+ result *= exp(-z * z) / z;
+ }
+ else if(z < 11.5)
       {
- // Worst case absolute error found: 9.46579566e-36
- static const T n[10] = { -0.0361790390718262471349157886581290316118L, 0.268773785250238404882137450640472787307L, 0.46350995084084251624649426251701042395L, 0.368375435727102373204587584306335625665L, 0.177618123820303858190236222513516291818L, 0.0566304173556669007529719743050764079095L, 0.0121631149481817424284077180037019529004L, 0.00171397353209314111395429418066990259845L, 0.000144662387395699594624184141956722488753L, 0.559870522050008635715382724858714587198e-5L };
- static const T d[10] = { 1L, 2.50344259590701770420935329380375393716L, 2.84905597172139276093882199286535521011L, 1.93691730181297099541395314232750876411L, 0.868059574796050528229446630538462280596L, 0.266360035323208212078527036132085926692L, 0.0560555526482963925944703505114360693216L, 0.0078174400311465420803366235814673576269L, 0.000657067309046405057499687417839930873806L, 0.254293850077789079098316521097979388983e-4L };
- static const float f0 = 0.3440242112F;
- r = tools::evaluate_rational(n, d, z - 0.5);
- b = f0;
- }
- else if(z < 1.25)
- {
- // Worst case absolute error found: 1.222145602e-35
- static const T n[10] = { -0.03978768926111368569548863384587917014L, 0.136218360681765349252731304877153919181L, 0.252782160406474440925641829129129001834L, 0.198264231106182362320012632943145619752L, 0.0923045825293507328801206570363391760624L, 0.0281157216148097885766639832985410722743L, 0.00573041663561645197870019701493117161792L, 0.000762341440133027349203518836487137709687L, 0.60471020134417423449877859375492618899e-4L, 0.219005333943510376644902615714724932217e-5L };
- static const T d[11] = { 1L, 2.38113277319993574121349184069891082204L, 2.57380422881476860215664207822277590181L, 1.65937045609044738941173490190122101824L, 0.704055811320312044285417250966993014161L, 0.20414913933328592198279939394283925451L, 0.0405162285360227740710964820549709038107L, 0.00531638867177288975915820230980317499728L, 0.000419364368135139398723983192742319455284L, 0.151874665979234971229096136924566078234e-4L, 0.807869459506748684117962248796937508011e-11L };
- static const float f0 = 0.419990927F;
- r = tools::evaluate_polynomial(n, z - 0.75) / tools::evaluate_polynomial(d, z - 0.75);
- b = f0;
- }
- else if(z < 2)
- {
- // Worst case absolute error found: 5.893842955e-36
- static const T n[11] = { -0.0255063683486569102096736247449691465143L, 0.045782379672906795594927072060091308408L, 0.113248439610400562258072020811195716817L, 0.0996016254422112410086711272219455446695L, 0.0508749250027894453228337309651895478017L, 0.0171081937013828309576540212196644542209L, 0.00395354196550210630440706013523069756354L, 0.000629022203390154585475081628606234279007L, 0.664903286194855400689101617763591823345e-4L, 0.423935693893425355108071655059640137208e-5L, 0.124304036910852727351487636048151737214e-6L };
- static const T d[11] = { 1L, 2.39207679390801118396945702674440915308L, 2.62237869972649377524874287442154430843L, 1.73645189911172997548091140085423843725L, 0.769812706091926741262865732006953282036L, 0.238986814887891859065369830215615790694L, 0.0526759147274379214313767032352419949829L, 0.00814993801398361741777997755108018659382L, 0.00084829993036396244429607826663252633817L, 0.537276435448416921594616417908288527881e-4L, 0.157537193656690184073389824392669625417e-5L };
- static const float f0 = 0.4852850139F;
- r = tools::evaluate_rational(n, d, z - 1.25);
- b = f0;
- }
- else if(z < 2.75)
- {
- // Worst case absolute error found: 4.024770853e-36
- static const T n[10] = { -0.0108897177067473013323228381829144739013L, 0.0202210475357865979950082670101965963435L, 0.0403242149078991892599316678797913295452L, 0.0288492313188655084113941326565482276741L, 0.0116982647742533555237861890442866083526L, 0.00301908913020213436098518520436147263177L, 0.000511140165864993121203730804407968689429L, 0.555507897975436549741754647662158917103e-4L, 0.354571088276496768574495922471690102061e-5L, 0.101789333060641482357520298518780163915e-6L };
- static const T d[11] = { 1L, 1.98184247277299581801610266575921553552L, 1.77518826058984218945272444617044495028L, 0.943934346956188464279312722940302202684L, 0.328630002685235061519039528479761588138L, 0.0777535542351039388345270792222146705189L, 0.0125143974181120800829065248546370953609L, 0.00132270605931460450441108147393979771563L, 0.834118048375722123506409257130329786209e-4L, 0.239456257167492104073765911366304033453e-5L, 0.197067742893785800814802969598122120027e-13L };
- static const float f0 = 0.5216810703F;
- r = tools::evaluate_polynomial(n, z - 2) / tools::evaluate_polynomial(d, z - 2);
- b = f0;
- }
- else if(z < 3.75)
- {
- // Worst case absolute error found: 2.119317982e-36
- static const T n[10] = { -0.00669534469911386821762042893742722704704L, 0.00779239067529714323524154862288379264056L, 0.0167670669587476509267036865033136655094L, 0.0113887916348251443051357686146040093464L, 0.00426976750247047946700539147728477144579L, 0.00100469100574064832665606356894416652764L, 0.000153533145320881108157829902752192859922L, 0.149337551064665413462766906201269176262e-4L, 0.846377837919513024118176704010972579138e-6L, 0.214045773545256889299689737489755489478e-7L };
- static const T d[11] = { 1L, 1.78724215851193637544287795626580411105L, 1.44052576962222794702178612920219772782L, 0.687639905608366315245841860669607532265L, 0.214374367225822611754443822822738563207L, 0.0452948320968245754796139856381504201504L, 0.00649108394178118005887118777181540680812L, 0.000608904720665003139414993591868256489088L, 0.33959064390570911588709483563995284603e-4L, 0.858811916085393051026834431509997486704e-6L, 0.618878592093890510233502654703683447468e-15L };
- static const float f0 = 0.5392661095F;
- r = tools::evaluate_polynomial(n, z - 2.75) / tools::evaluate_polynomial(d, z - 2.75);
- b = f0;
- }
- else if(z < 5)
- {
- // Worst case absolute error found: 3.131502824e-36
- static const T n[10] = { -0.00378088626017041998499190989910098718437L, 0.0029008905292996011997575492874095588328L, 0.00662431938391549599757244232386689480515L, 0.00417809740399798845564363621020984935218L, 0.00142019749135652688012034919213168974543L, 0.000299107980170253223293530710056814995102L, 0.405161538841561396150507786831930770839e-4L, 0.346344371670880861875666253626975779945e-5L, 0.171091054330494778613793054233437928605e-6L, 0.373924433717749484258186454458704819755e-8L };
- static const T d[10] = { 1L, 1.5810750672399887547849540367499389454L, 1.12479852885403050655678225945856872694L, 0.47277272679268851560291322980574597267L, 0.129444913616967588584693095240544707208L, 0.0239544490709674941887988416318107990646L, 0.00299775294496053944060700963645084591246L, 0.00024478412843088575835960648397300177201L, 0.118424712755145205302405346348931402917e-4L, 0.2588206250858483868392167535345681119e-6L };
- static const float f0 = 0.549742341F;
- r = tools::evaluate_rational(n, d, z - 3.75);
- b = f0;
- }
- else if(z < 6.5)
- {
- // Worst case absolute error found: 3.352877573e-35
- static const T n[9] = { -0.00210683958249012010206456754123471415706L, 0.00146329021314062287670019911742786780092L, 0.00242029064025351202243048169807220157512L, 0.0011321990764681390160708960047630195582L, 0.000277123780759366982673218537550876769487L, 0.401236501288775561636453586216146028714e-4L, 0.347799938323835778216424009916867086167e-5L, 0.167678812729975154456097184107934455429e-6L, 0.346722083660429051057284107535869165775e-8L };
- static const T d[10] = { 1L, 1.22334833521124956366395053444841951468L, 0.661433457507589455018784737495591428263L, 0.206503622658778732280997770028712044451L, 0.0407323027711252752353388616742333806362L, 0.00519969889874877079704615143005539754407L, 0.000419679230772141031030427156828631265963L, 0.195896640254171597965013007459411704085e-4L, 0.405070207572551760879797790899826058473e-6L, -0.949400883467250846930389103621356900319e-17L };
- static const float f0 = 0.5556300282F;
- r = tools::evaluate_polynomial(n, z - 5) / tools::evaluate_polynomial(d, z - 5);
- b = f0;
- }
- else if(z < 8)
- {
- // Worst case absolute error found: 2.10254551e-36
- static const T n[9] = { -0.00107224589975857477185569028693588970638L, 0.00081159959093417892787006088639848404179L, 0.00105587689576932891666032146026668833287L, 0.000416243954540394829165805666548948771809L, 0.861189599093384016322579078144012057531e-4L, 0.105064862265647286966467927732505059558e-4L, 0.763674245263385902692134637353517251296e-6L, 0.306964079269190247526141442183490066292e-7L, 0.525762928524110511201313708396204710874e-9L };
- static const T d[9] = { 1L, 1.03391233015873996503551085347368889767L, 0.471295765635712684194436077437130977978L, 0.123736066749315618886080242926593910851L, 0.0204690897886919138685460664198600282119L, 0.00218521816743913946855947853274936296576L, 0.000147057386621380823003258590658747813774L, 0.570514093706434168568509838021466564264e-5L, 0.977166974697066620826028345712327325748e-7L };
- static const float f0 = 0.5588091016F;
- r = tools::evaluate_rational(n, d, z - 6.5);
- b = f0;
- }
- else if(z < 10)
- {
- // Worst case absolute error found: 8.006848023e-37
- static const T n[9] = { -0.000764310289345400483607004463638641680792L, 0.000375959928342415987920641866513058424701L, 0.000477297615927227258961911005347799033473L, 0.000165573027183931250708334564452626717999L, 0.296617493157889183515359094859055088531e-4L, 0.310848843632513098624143817615592253324e-5L, 0.192932185180269434271810693046412848027e-6L, 0.658630702075882625552897504189436319318e-8L, 0.952880249971934343233104137698620618851e-10L };
- static const T d[9] = { 1L, 0.885953297549629585611202995885653291163L, 0.345435500008639080844920938390800739845L, 0.0774289910213823638414558561872084410517L, 0.0109142290775434200609901181618181718948L, 0.000990815749814504617347317658063197107511L, 0.565801964505889288566864514277149126893e-4L, 0.185846832474795168475989869562411740416e-5L, 0.268875677412705938842038805073576012915e-7L };
- static const float f0 = 0.5606456399F;
- r = tools::evaluate_rational(n, d, z - 8);
- b = f0;
- }
- else if(z < 12.5)
- {
- // Worst case absolute error found: 1.920487881e-37
- static const T n[9] = { -0.00049563543942917072170112779531688430711L, 0.000181627479476470045833245371263435213396L, 0.000205326116055098869964168775605689851547L, 0.602131211119027087508128340443602490578e-4L, 0.904046610725767796892834734953040318357e-5L, 0.790026495730279360618915285828083295597e-6L, 0.407154634490633661408148126521656550974e-7L, 0.114947371191075676274146563385045083492e-8L, 0.136959786076422777905476122283384578138e-10L };
- static const T d[9] = { 1L, 0.738936412939629363226408445024616124644L, 0.239911614287295587917806937612822134282L, 0.0447038494121568822243673246874110377585L, 0.00522920850086320874490830611785659031521L, 0.000393238307986133717620560371515858231357L, 0.18566831172454022627187937328433090172e-4L, 0.503267648562793696253090536560738864711e-6L, 0.599643373938283798258195761814169705225e-8L };
- static const float f0 = 0.5619055629F;
- r = tools::evaluate_rational(n, d, z - 10);
- b = f0;
- }
- else if(z < 15.5)
- {
- // Worst case absolute error found: 1.257535398e-36
- static const T n[8] = { -0.000310716603972278501158850534578560332617L, 0.00011678083970731888844953949114132723885L, 0.800190190430061077253903477346761222901e-4L, 0.156297703728913451581100601056534652076e-4L, 0.151432948873760306237990776980248434808e-5L, 0.798843820137664551611401320879346402013e-7L, 0.219398460602279142004550137383605410162e-8L, 0.244774638611231694720102050826438123042e-10L };
- static const T d[9] = { 1L, 0.536396467095662522242258924420035847546L, 0.12368534422025248132153213926057643819L, 0.0158935327926481775020421628983323726346L, 0.00122923842249710594941031294559763761829L, 0.572250268558063378795115723535491980973e-4L, 0.148480028895780193980507551658637328542e-5L, 0.165653602646537759781637790321962585489e-7L, 0.159564067829807076335030582566349996674e-21L };
- static const float f0 = 0.5627119541F;
- r = tools::evaluate_polynomial(n, z - 12.5) / tools::evaluate_polynomial(d, z - 12.5);
- b = f0;
- }
- else if(z < 20)
- {
- // Worst case absolute error found: 8.757869781e-37
- static const T n[8] = { -0.000232165799411403604511899928682939571679L, 0.473280617901953093430938763139716601257e-4L, 0.322197983787538821545512424866901113822e-4L, 0.53341606003892328294004958671866936958e-5L, 0.429392533762301420884052643595872389588e-6L, 0.186707830002841677949013638707964861935e-7L, 0.420531779988891521855765212230340499168e-9L, 0.38311153882270641561622347190918577449e-11L };
- static const T d[9] = { 1L, 0.440698415779467873589164469370853517393L, 0.0834079018864546179293964148377602724235L, 0.00878845776227345123101968908701592510214L, 0.000556792236817609981676018545344816931862L, 0.212109697877283363015270621439889468055e-4L, 0.449886743173619367191275104721917344569e-6L, 0.409854405005280582884236774230760402868e-8L, 0.185071069100878210011727114952196630136e-23L };
- static const float f0 = 0.5632548332F;
- r = tools::evaluate_polynomial(n, z - 15.5) / tools::evaluate_polynomial(d, z - 15.5);
- b = f0;
- }
- else if(z < 26)
- {
- // Worst case absolute error found: 6.571456853e-37
- static const T n[8] = { -0.000143129243915019877016909310584833592972L, 0.203555078616578752774553439209122798188e-4L, 0.116664173863253360297276766667046754002e-4L, 0.153607643549360281089355497044679566329e-5L, 0.976486412462035616905934994399021437658e-7L, 0.33416295362298759817564985788402188186e-8L, 0.590812660432887787644458409396105030781e-10L, 0.421471133628743008309458424282421874073e-12L };
- static const T d[8] = { 1L, 0.346848503043261151874606241871432055165L, 0.0516236057301875770334953837585483539519L, 0.0042740199483843978391191804633398315544L, 0.000212586135154357046245694533825075007902L, 0.635258188334431428038271842518161892901e-5L, 0.105600415847309067601860633252823051505e-6L, 0.753327238218310630683194279382721367469e-9L };
- static const float f0 = 0.5636301041F;
- r = tools::evaluate_polynomial(n, z - 20) / tools::evaluate_polynomial(d, z - 20);
- b = f0;
- }
- else if(z < 34)
- {
- // Worst case absolute error found: 2.529847851e-38
- static const T n[8] = { -0.863162280463127451272161303767299107489e-4L, 0.876391266908317792353253474461536821127e-5L, 0.407624004719762912183133597708988715137e-5L, 0.418371930808379615690956857824418800194e-6L, 0.206376792034344913360458422974245946873e-7L, 0.546878311460852031076829190722479684e-9L, 0.74760305098509923829341087347518769626e-11L, 0.411832046806658129073165530819472782663e-13L };
- static const T d[9] = { 1L, 0.268714425336129161136892060316889824437L, 0.0309686025544536788982104017649851516554L, 0.00198426609900573235086828549632290797514L, 0.763402107420631006526499294753645914808e-4L, 0.176354119917411263184292422389304506735e-5L, 0.226504369338582253171306523992412653547e-7L, 0.124774448034213281307712525982862926228e-9L, 0.541581693417048102342931921476367282462e-28L };
- static const float f0 = 0.5638595223F;
- r = tools::evaluate_polynomial(n, z - 26) / tools::evaluate_polynomial(d, z - 26);
- b = f0;
- }
- else if(z < 46)
- {
- // Worst case absolute error found: 4.880939969e-36
- static const T n[7] = { -0.552701065525823960321509114250962372959e-4L, 0.459798238451342341380837226471283129117e-5L, 0.117462487430397988459985818542278619172e-5L, 0.704965053290383355071079647747711714696e-7L, 0.191250482739845326510859812663255140286e-8L, 0.245913419605775857221974833985059356312e-10L, 0.120466123381598216554945834019040289508e-12L };
- static const T d[8] = { 1L, 0.175852634004021068883919193145643406305L, 0.0128923775281953424344037205817061020944L, 0.000504385604406829419856756492198778141939L, 0.111061123996047697713589874603922096536e-4L, 0.130499191758882778721577274330215931713e-6L, 0.639279131688964342759306361922751772829e-9L, -0.10503012469906917938721140272475203112e-26L };
- static const float f0 = 0.564001143F;
- r = tools::evaluate_polynomial(n, z - 34) / tools::evaluate_polynomial(d, z - 34);
- b = f0;
- }
- else if(z < 62)
- {
- // Worst case absolute error found: 8.634961697e-37
- static const T n[7] = { -0.299551937061912926289705712581858190494e-4L, 0.188783643501597286680709990049243153264e-5L, 0.353403900815908094401075506391935032602e-6L, 0.156779149815977342177830075875441013335e-7L, 0.31456307256618424444443489905810774564e-9L, 0.29912544832845265905351204765862702307e-11L, 0.108360038290329929702659864116372774364e-13L };
- static const T d[7] = { 1L, 0.13020345740128026085404079010013007005L, 0.00706598549835633149505923515407700416484L, 0.000204578844720147762058725212299415091588L, 0.333280847765611305843836201217690887394e-5L, 0.289666303356425428524772241712503072453e-7L, 0.104933404691983708511908027657434756019e-9L };
- static const float f0 = 0.564086318F;
- r = tools::evaluate_polynomial(n, z - 46) / tools::evaluate_polynomial(d, z - 46);
- b = f0;
- }
- else if(z < 80)
- {
- // Worst case absolute error found: 6.10700166e-39
- static const T n[7] = { -0.146162619512779884168960178459825270831e-4L, 0.952303834226435420147786300516273108344e-6L, 0.114559890033396819882468040960469980168e-6L, 0.368994353517438072494331750992706039868e-8L, 0.545158660461829568567388818070830588533e-10L, 0.383569328729331398089160922704933035281e-12L, 0.103104113324271568678309317039606225294e-14L };
- static const T d[7] = { 1L, 0.0966822058944670599111360985490948186413L, 0.00389546596914826027568119425228340291579L, 0.837237328321088890541798035513749762375e-4L, 0.101236677684940943809478588316884539423e-5L, 0.652985528810044575089151077574382356898e-8L, 0.175523663960756825512727785416137345625e-10L };
- static const float f0 = 0.5641308427F;
- r = tools::evaluate_polynomial(n, z - 62) / tools::evaluate_polynomial(d, z - 62);
- b = f0;
- }
- else
- {
- // Worst case absolute error found: 3.409761622e-39
- static const T n[7] = { -0.103600733768855845278685109220598569282e-4L, 0.324846376725138276091774803419773168357e-6L, 0.376580042454826796817160322889753111347e-7L, 0.971125540805193703472871419997820785081e-9L, 0.112499588573918670534994853431614458564e-10L, 0.6161310085325929027114924903443564594e-13L, 0.128358125353302055468778305481781957985e-15L };
- static const T d[7] = { 1L, 0.0749579802028981336679035635535776767532L, 0.00234137768051079846068630120744888560113L, 0.390095348825177571970348898222511084593e-4L, 0.365628111271063883320224395719085602867e-6L, 0.182790705425846241876560215158605843026e-8L, 0.380806548535012144489621218246876843627e-11L };
- static const float f0 = 0.5641558766F;
- r = tools::evaluate_polynomial(n, z - 80) / tools::evaluate_polynomial(d, z - 80);
- b = f0;
+ // Maximum Deviation Found: 8.380e-36
+ // Expected Error Term: 8.380e-36
+ // Maximum Relative Change in Control Points: 2.632e-06
+ // Max Error found at long double precision = 9.849522e-36
+ static const T Y = 0.56083202362060546875f;
+ static const T P[] = {
+ 0.000282420728751494363613829834891390121L,
+ 0.00175387065018002823433704079355125161L,
+ 0.0021344978564889819420775336322920375L,
+ 0.00124151356560137532655039683963075661L,
+ 0.000423600733566948018555157026862139644L,
+ 0.914030340865175237133613697319509698e-4L,
+ 0.126999927156823363353809747017945494e-4L,
+ 0.110610959842869849776179749369376402e-5L,
+ 0.55075079477173482096725348704634529e-7L,
+ 0.119735694018906705225870691331543806e-8L,
+ };
+ static const T Q[] = {
+ 1L,
+ 1.69889613396167354566098060039549882L,
+ 1.28824647372749624464956031163282674L,
+ 0.572297795434934493541628008224078717L,
+ 0.164157697425571712377043857240773164L,
+ 0.0315311145224594430281219516531649562L,
+ 0.00405588922155632380812945849777127458L,
+ 0.000336929033691445666232029762868642417L,
+ 0.164033049810404773469413526427932109e-4L,
+ 0.356615210500531410114914617294694857e-6L,
+ };
+ result = Y + tools::evaluate_polynomial(P, z / 2 - 4.75f) / tools::evaluate_polynomial(Q, z / 2 - 4.75f);
+ result *= exp(-z * z) / z;
+ }
+ else
+ {
+ // Maximum Deviation Found: 1.132e-35
+ // Expected Error Term: -1.132e-35
+ // Maximum Relative Change in Control Points: 4.674e-04
+ // Max Error found at long double precision = 1.162590e-35
+ static const T Y = 0.5632686614990234375f;
+ static const T P[] = {
+ 0.000920922048732849448079451574171836943L,
+ 0.00321439044532288750501700028748922439L,
+ -0.250455263029390118657884864261823431L,
+ -0.906807635364090342031792404764598142L,
+ -8.92233572835991735876688745989985565L,
+ -21.7797433494422564811782116907878495L,
+ -91.1451915251976354349734589601171659L,
+ -144.1279109655993927069052125017673L,
+ -313.845076581796338665519022313775589L,
+ -273.11378811923343424081101235736475L,
+ -271.651566205951067025696102600443452L,
+ -60.0530577077238079968843307523245547L,
+ };
+ static const T Q[] = {
+ 1L,
+ 3.49040448075464744191022350947892036L,
+ 34.3563592467165971295915749548313227L,
+ 84.4993232033879023178285731843850461L,
+ 376.005865281206894120659401340373818L,
+ 629.95369438888946233003926191755125L,
+ 1568.35771983533158591604513304269098L,
+ 1646.02452040831961063640827116581021L,
+ 2299.96860633240298708910425594484895L,
+ 1222.73204392037452750381340219906374L,
+ 799.359797306084372350264298361110448L,
+ 72.7415265778588087243442792401576737L,
+ };
+ result = Y + tools::evaluate_polynomial(P, 1 / z) / tools::evaluate_polynomial(Q, 1 / z);
+ result *= exp(-z * z) / z;
       }
- T g = exp(-z * z) / z;
- result = g * b + g * r;
    }
    else
    {
@@ -856,3 +1081,4 @@
 
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/expm1.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/expm1.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/expm1.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_EXPM1_INCLUDED
 #define BOOST_MATH_EXPM1_INCLUDED
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <cmath>
 #include <math.h> // platform's ::expm1
 #include <boost/limits.hpp>
@@ -267,3 +271,4 @@
 #endif // BOOST_MATH_HYPOT_INCLUDED
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/factorials.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/factorials.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/factorials.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SP_FACTORIALS_HPP
 #define BOOST_MATH_SP_FACTORIALS_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/gamma.hpp>
 #include <boost/math/special_functions/math_fwd.hpp>
 #include <boost/math/special_functions/detail/unchecked_factorial.hpp>
@@ -159,7 +163,7 @@
       // handle it, split the product up into three parts:
       //
       T xp1 = x + 1;
- unsigned n2 = tools::real_cast<unsigned>(floor(xp1));
+ unsigned n2 = itrunc(floor(xp1), pol);
       if(n2 == xp1)
          return 0;
       T result = boost::math::tgamma_delta_ratio(xp1, -static_cast<T>(n2), pol);
@@ -222,3 +226,4 @@
 } // namespace boost
 
 #endif // BOOST_MATH_SP_FACTORIALS_HPP
+

Modified: branches/CMake/release/boost/math/special_functions/fpclassify.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/fpclassify.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/fpclassify.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_FPCLASSIFY_HPP
 #define BOOST_MATH_FPCLASSIFY_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <math.h>
 #include <cmath>
 #include <boost/limits.hpp>
@@ -34,8 +38,15 @@
 #define BOOST_HAS_FPCLASSIFY
 
 #ifndef fpclassify
-# if (defined(__GLIBCPP__) || defined(__GLIBCXX__)) && defined(_GLIBCXX_USE_C99_MATH) && !(defined(_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC) && (_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC != 0))
-# define BOOST_FPCLASSIFY_PREFIX ::std::
+# if (defined(__GLIBCPP__) || defined(__GLIBCXX__)) \
+ && defined(_GLIBCXX_USE_C99_MATH) \
+ && !(defined(_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC) \
+ && (_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC != 0))
+# ifdef _STLP_VENDOR_CSTD
+# define BOOST_FPCLASSIFY_PREFIX ::_STLP_VENDOR_CSTD::
+# else
+# define BOOST_FPCLASSIFY_PREFIX ::std::
+# endif
 # else
 # undef BOOST_HAS_FPCLASSIFY
 # define BOOST_FPCLASSIFY_PREFIX
@@ -69,7 +80,7 @@
 #ifdef isnan
    return isnan(t);
 #else // BOOST_HAS_FPCLASSIFY
- return (BOOST_FPCLASSIFY_PREFIX fpclassify(t) == FP_NAN);
+ return (BOOST_FPCLASSIFY_PREFIX fpclassify(t) == (int)FP_NAN);
 #endif
 }
 
@@ -173,7 +184,7 @@
    case _FPCLASS_SNAN /* Signaling NaN */ :
    case _FPCLASS_QNAN /* Quiet NaN */ :
       return FP_NAN;
- case _FPCLASS_NINF /*Negative infinity ( –INF) */ :
+ case _FPCLASS_NINF /*Negative infinity ( -INF) */ :
    case _FPCLASS_PINF /* Positive infinity (+INF) */ :
       return FP_INFINITE;
    case _FPCLASS_NN /* Negative normalized non-zero */ :
@@ -182,7 +193,7 @@
    case _FPCLASS_ND /* Negative denormalized */:
    case _FPCLASS_PD /* Positive denormalized */ :
       return FP_SUBNORMAL;
- case _FPCLASS_NZ /* Negative zero ( – 0) */ :
+ case _FPCLASS_NZ /* Negative zero ( - 0) */ :
    case _FPCLASS_PZ /* Positive 0 (+0) */ :
       return FP_ZERO;
    default:
@@ -196,19 +207,19 @@
 inline bool isfinite BOOST_NO_MACRO_EXPAND(T z)
 {
    int t = (::boost::math::fpclassify)(z);
- return (t != FP_NAN) && (t != FP_INFINITE);
+ return (t != (int)FP_NAN) && (t != (int)FP_INFINITE);
 }
 
 template <class T>
 inline bool isinf BOOST_NO_MACRO_EXPAND(T t)
 {
- return (::boost::math::fpclassify)(t) == FP_INFINITE;
+ return (::boost::math::fpclassify)(t) == (int)FP_INFINITE;
 }
 
 template <class T>
 inline bool isnan BOOST_NO_MACRO_EXPAND(T t)
 {
- return (::boost::math::fpclassify)(t) == FP_NAN;
+ return (::boost::math::fpclassify)(t) == (int)FP_NAN;
 }
 #ifdef isnan
 template <> inline bool isnan BOOST_NO_MACRO_EXPAND<float>(float t){ return ::boost::math_detail::is_nan_helper(t, boost::true_type()); }
@@ -228,7 +239,7 @@
 template <class T>
 inline bool isnormal BOOST_NO_MACRO_EXPAND(T t)
 {
- return (::boost::math::fpclassify)(t) == FP_NORMAL;
+ return (::boost::math::fpclassify)(t) == (int)FP_NORMAL;
 }
 
 } // namespace math
@@ -238,3 +249,5 @@
 
 
 
+
+

Modified: branches/CMake/release/boost/math/special_functions/gamma.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/gamma.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/gamma.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,6 +8,10 @@
 #ifndef BOOST_MATH_SF_GAMMA_HPP
 #define BOOST_MATH_SF_GAMMA_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/config.hpp>
 #ifdef BOOST_MSVC
 # pragma warning(push)
@@ -23,12 +27,12 @@
 #include <boost/math/tools/series.hpp>
 #include <boost/math/tools/fraction.hpp>
 #include <boost/math/tools/precision.hpp>
-#include <boost/math/tools/real_cast.hpp>
 #include <boost/math/tools/promotion.hpp>
 #include <boost/math/policies/error_handling.hpp>
 #include <boost/math/constants/constants.hpp>
 #include <boost/math/special_functions/math_fwd.hpp>
 #include <boost/math/special_functions/log1p.hpp>
+#include <boost/math/special_functions/trunc.hpp>
 #include <boost/math/special_functions/powm1.hpp>
 #include <boost/math/special_functions/sqrt1pm1.hpp>
 #include <boost/math/special_functions/lanczos.hpp>
@@ -138,30 +142,33 @@
 #endif
    static const char* function = "boost::math::tgamma<%1%>(%1%)";
 
- if((z <= 0) && (floor(z) == z))
- return policies::raise_pole_error<T>(function, "Evaluation of tgamma at a negative integer %1%.", z, pol);
- if(z <= -20)
+ if(z <= 0)
    {
- result = gamma_imp(-z, pol, l) * sinpx(z);
- if((fabs(result) < 1) && (tools::max_value<T>() * fabs(result) < boost::math::constants::pi<T>()))
- return policies::raise_overflow_error<T>(function, "Result of tgamma is too large to represent.", pol);
- result = -boost::math::constants::pi<T>() / result;
- if(result == 0)
- return policies::raise_underflow_error<T>(function, "Result of tgamma is too small to represent.", pol);
- if((boost::math::fpclassify)(result) == FP_SUBNORMAL)
- return policies::raise_denorm_error<T>(function, "Result of tgamma is denormalized.", result, pol);
- return result;
- }
+ if(floor(z) == z)
+ return policies::raise_pole_error<T>(function, "Evaluation of tgamma at a negative integer %1%.", z, pol);
+ if(z <= -20)
+ {
+ result = gamma_imp(-z, pol, l) * sinpx(z);
+ if((fabs(result) < 1) && (tools::max_value<T>() * fabs(result) < boost::math::constants::pi<T>()))
+ return policies::raise_overflow_error<T>(function, "Result of tgamma is too large to represent.", pol);
+ result = -boost::math::constants::pi<T>() / result;
+ if(result == 0)
+ return policies::raise_underflow_error<T>(function, "Result of tgamma is too small to represent.", pol);
+ if((boost::math::fpclassify)(result) == (int)FP_SUBNORMAL)
+ return policies::raise_denorm_error<T>(function, "Result of tgamma is denormalized.", result, pol);
+ return result;
+ }
 
- // shift z to > 1:
- while(z < 1)
- {
- result /= z;
- z += 1;
+ // shift z to > 1:
+ while(z < 0)
+ {
+ result /= z;
+ z += 1;
+ }
    }
    if((floor(z) == z) && (z < max_factorial<T>::value))
    {
- result *= unchecked_factorial<T>(tools::real_cast<unsigned>(z) - 1);
+ result *= unchecked_factorial<T>(itrunc(z, pol) - 1);
    }
    else
    {
@@ -348,7 +355,7 @@
       result = -boost::math::constants::pi<T>() / result;
       if(result == 0)
          return policies::raise_underflow_error<T>(function, "Result of tgamma is too small to represent.", pol);
- if((boost::math::fpclassify)(result) == FP_SUBNORMAL)
+ if((boost::math::fpclassify)(result) == (int)FP_SUBNORMAL)
          return policies::raise_denorm_error<T>(function, "Result of tgamma is denormalized.", result, pol);
       return result;
    }
@@ -366,7 +373,7 @@
    BOOST_MATH_INSTRUMENT_CODE(prefix);
    if((floor(z) == z) && (z < max_factorial<T>::value))
    {
- prefix *= unchecked_factorial<T>(tools::real_cast<unsigned>(z) - 1);
+ prefix *= unchecked_factorial<T>(itrunc(z, pol) - 1);
    }
    else
    {
@@ -580,7 +587,7 @@
    // This error handling isn't very good: it happens after the fact
    // rather than before it...
    //
- if((boost::math::fpclassify)(prefix) == FP_INFINITE)
+ if((boost::math::fpclassify)(prefix) == (int)FP_INFINITE)
       policies::raise_overflow_error<T>("boost::math::detail::full_igamma_prefix<%1%>(%1%, %1%)", "Result of incomplete gamma function is too large to represent.", pol);
 
    return prefix;
@@ -1091,7 +1098,7 @@
          //
          if((z <= max_factorial<T>::value) && (z + delta <= max_factorial<T>::value))
          {
- return unchecked_factorial<T>(tools::real_cast<unsigned>(z) - 1) / unchecked_factorial<T>(tools::real_cast<unsigned>(z + delta) - 1);
+ return unchecked_factorial<T>((unsigned)itrunc(z, pol) - 1) / unchecked_factorial<T>((unsigned)itrunc(z + delta) - 1);
          }
       }
       if(fabs(delta) < 20)
@@ -1469,3 +1476,4 @@
 
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/hermite.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/hermite.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/hermite.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,6 +7,10 @@
 #ifndef BOOST_MATH_SPECIAL_HERMITE_HPP
 #define BOOST_MATH_SPECIAL_HERMITE_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/math_fwd.hpp>
 #include <boost/math/tools/config.hpp>
 #include <boost/math/policies/error_handling.hpp>
@@ -69,3 +73,4 @@
 #endif // BOOST_MATH_SPECIAL_HERMITE_HPP
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/hypot.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/hypot.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/hypot.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_HYPOT_INCLUDED
 #define BOOST_MATH_HYPOT_INCLUDED
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/config.hpp>
 #include <boost/math/tools/precision.hpp>
 #include <boost/math/policies/error_handling.hpp>
@@ -79,3 +83,4 @@
 #endif // BOOST_MATH_HYPOT_INCLUDED
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/laguerre.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/laguerre.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/laguerre.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,6 +7,10 @@
 #ifndef BOOST_MATH_SPECIAL_LAGUERRE_HPP
 #define BOOST_MATH_SPECIAL_LAGUERRE_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/math_fwd.hpp>
 #include <boost/math/tools/config.hpp>
 #include <boost/math/policies/error_handling.hpp>
@@ -132,3 +136,4 @@
 #endif // BOOST_MATH_SPECIAL_LAGUERRE_HPP
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/lanczos.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/lanczos.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/lanczos.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SPECIAL_FUNCTIONS_LANCZOS
 #define BOOST_MATH_SPECIAL_FUNCTIONS_LANCZOS
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/config.hpp>
 #include <boost/mpl/if.hpp>
 #include <boost/limits.hpp>
@@ -1225,7 +1229,12 @@
 } // namespace math
 } // namespace boost
 
+#if (defined(_M_IX86_FP) && (_M_IX86_FP >= 2)) || defined(__SSE2__)
+#include <boost/math/special_functions/detail/lanczos_sse2.hpp>
+#endif
+
 #endif // BOOST_MATH_SPECIAL_FUNCTIONS_LANCZOS
 
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/legendre.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/legendre.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/legendre.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,6 +7,10 @@
 #ifndef BOOST_MATH_SPECIAL_LEGENDRE_HPP
 #define BOOST_MATH_SPECIAL_LEGENDRE_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/math_fwd.hpp>
 #include <boost/math/special_functions/factorials.hpp>
 #include <boost/math/tools/config.hpp>
@@ -187,3 +191,4 @@
 #endif // BOOST_MATH_SPECIAL_LEGENDRE_HPP
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/log1p.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/log1p.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/log1p.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,11 +6,16 @@
 #ifndef BOOST_MATH_LOG1P_INCLUDED
 #define BOOST_MATH_LOG1P_INCLUDED
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <cmath>
 #include <math.h> // platform's ::log1p
 #include <boost/limits.hpp>
 #include <boost/math/tools/config.hpp>
 #include <boost/math/tools/series.hpp>
+#include <boost/math/tools/rational.hpp>
 #include <boost/math/policies/error_handling.hpp>
 #include <boost/math/special_functions/math_fwd.hpp>
 
@@ -55,8 +60,6 @@
      log1p_series& operator=(const log1p_series&);
   };
 
-} // namespace detail
-
 // Algorithm log1p is part of C99, but is not yet provided by many compilers.
 //
 // This version uses a Taylor series expansion for 0.5 > x > epsilon, which may
@@ -67,9 +70,8 @@
 // it performs no better than log(1+x): which is to say not very well at all.
 //
 template <class T, class Policy>
-typename tools::promote_args<T>::type log1p(T x, const Policy& pol)
+T log1p_imp(T const & x, const Policy& pol, const mpl::int_<0>&)
 { // The function returns the natural logarithm of 1 + x.
- // A domain error occurs if x < -1. TODO should there be a check?
    typedef typename tools::promote_args<T>::type result_type;
    BOOST_MATH_STD_USING
    using std::abs;
@@ -102,6 +104,192 @@
    return result;
 }
 
+template <class T, class Policy>
+T log1p_imp(T const& x, const Policy& pol, const mpl::int_<53>&)
+{ // The function returns the natural logarithm of 1 + x.
+ BOOST_MATH_STD_USING
+
+ static const char* function = "boost::math::log1p<%1%>(%1%)";
+
+ if(x < -1)
+ return policies::raise_domain_error<T>(
+ function, "log1p(x) requires x > -1, but got x = %1%.", x, pol);
+ if(x == -1)
+ return -policies::raise_overflow_error<T>(
+ function, 0, pol);
+
+ T a = fabs(x);
+ if(a > 0.5f)
+ return log(1 + x);
+ // Note that without numeric_limits specialisation support,
+ // epsilon just returns zero, and our "optimisation" will always fail:
+ if(a < tools::epsilon<T>())
+ return x;
+
+ // Maximum Deviation Found: 1.846e-017
+ // Expected Error Term: 1.843e-017
+ // Maximum Relative Change in Control Points: 8.138e-004
+ // Max Error found at double precision = 3.250766e-016
+ static const T P[] = {
+ 0.15141069795941984e-16L,
+ 0.35495104378055055e-15L,
+ 0.33333333333332835L,
+ 0.99249063543365859L,
+ 1.1143969784156509L,
+ 0.58052937949269651L,
+ 0.13703234928513215L,
+ 0.011294864812099712L
+ };
+ static const T Q[] = {
+ 1L,
+ 3.7274719063011499L,
+ 5.5387948649720334L,
+ 4.159201143419005L,
+ 1.6423855110312755L,
+ 0.31706251443180914L,
+ 0.022665554431410243L,
+ -0.29252538135177773e-5L
+ };
+
+ T result = 1 - x / 2 + tools::evaluate_polynomial(P, x) / tools::evaluate_polynomial(Q, x);
+ result *= x;
+
+ return result;
+}
+
+template <class T, class Policy>
+T log1p_imp(T const& x, const Policy& pol, const mpl::int_<64>&)
+{ // The function returns the natural logarithm of 1 + x.
+ BOOST_MATH_STD_USING
+
+ static const char* function = "boost::math::log1p<%1%>(%1%)";
+
+ if(x < -1)
+ return policies::raise_domain_error<T>(
+ function, "log1p(x) requires x > -1, but got x = %1%.", x, pol);
+ if(x == -1)
+ return -policies::raise_overflow_error<T>(
+ function, 0, pol);
+
+ T a = fabs(x);
+ if(a > 0.5f)
+ return log(1 + x);
+ // Note that without numeric_limits specialisation support,
+ // epsilon just returns zero, and our "optimisation" will always fail:
+ if(a < tools::epsilon<T>())
+ return x;
+
+ // Maximum Deviation Found: 8.089e-20
+ // Expected Error Term: 8.088e-20
+ // Maximum Relative Change in Control Points: 9.648e-05
+ // Max Error found at long double precision = 2.242324e-19
+ static const T P[] = {
+ -0.807533446680736736712e-19L,
+ -0.490881544804798926426e-18L,
+ 0.333333333333333373941L,
+ 1.17141290782087994162L,
+ 1.62790522814926264694L,
+ 1.13156411870766876113L,
+ 0.408087379932853785336L,
+ 0.0706537026422828914622L,
+ 0.00441709903782239229447L
+ };
+ static const T Q[] = {
+ 1L,
+ 4.26423872346263928361L,
+ 7.48189472704477708962L,
+ 6.94757016732904280913L,
+ 3.6493508622280767304L,
+ 1.06884863623790638317L,
+ 0.158292216998514145947L,
+ 0.00885295524069924328658L,
+ -0.560026216133415663808e-6L
+ };
+
+ T result = 1 - x / 2 + tools::evaluate_polynomial(P, x) / tools::evaluate_polynomial(Q, x);
+ result *= x;
+
+ return result;
+}
+
+template <class T, class Policy>
+T log1p_imp(T const& x, const Policy& pol, const mpl::int_<24>&)
+{ // The function returns the natural logarithm of 1 + x.
+ BOOST_MATH_STD_USING
+
+ static const char* function = "boost::math::log1p<%1%>(%1%)";
+
+ if(x < -1)
+ return policies::raise_domain_error<T>(
+ function, "log1p(x) requires x > -1, but got x = %1%.", x, pol);
+ if(x == -1)
+ return -policies::raise_overflow_error<T>(
+ function, 0, pol);
+
+ T a = fabs(x);
+ if(a > 0.5f)
+ return log(1 + x);
+ // Note that without numeric_limits specialisation support,
+ // epsilon just returns zero, and our "optimisation" will always fail:
+ if(a < tools::epsilon<T>())
+ return x;
+
+ // Maximum Deviation Found: 6.910e-08
+ // Expected Error Term: 6.910e-08
+ // Maximum Relative Change in Control Points: 2.509e-04
+ // Max Error found at double precision = 6.910422e-08
+ // Max Error found at float precision = 8.357242e-08
+ static const T P[] = {
+ -0.671192866803148236519e-7L,
+ 0.119670999140731844725e-6L,
+ 0.333339469182083148598L,
+ 0.237827183019664122066L
+ };
+ static const T Q[] = {
+ 1L,
+ 1.46348272586988539733L,
+ 0.497859871350117338894L,
+ -0.00471666268910169651936L
+ };
+
+ T result = 1 - x / 2 + tools::evaluate_polynomial(P, x) / tools::evaluate_polynomial(Q, x);
+ result *= x;
+
+ return result;
+}
+
+} // namespace detail
+
+template <class T, class Policy>
+inline typename tools::promote_args<T>::type log1p(T x, const Policy&)
+{
+ typedef typename tools::promote_args<T>::type result_type;
+ typedef typename policies::evaluation<result_type, Policy>::type value_type;
+ typedef typename policies::precision<result_type, Policy>::type precision_type;
+ typedef typename policies::normalise<
+ Policy,
+ policies::promote_float<false>,
+ policies::promote_double<false>,
+ policies::discrete_quantile<>,
+ policies::assert_undefined<> >::type forwarding_policy;
+
+ typedef typename mpl::if_<
+ mpl::less_equal<precision_type, mpl::int_<0> >,
+ mpl::int_<0>,
+ typename mpl::if_<
+ mpl::less_equal<precision_type, mpl::int_<53> >,
+ mpl::int_<53>, // double
+ typename mpl::if_<
+ mpl::less_equal<precision_type, mpl::int_<64> >,
+ mpl::int_<64>, // 80-bit long double
+ mpl::int_<0> // too many bits, use generic version.
+ >::type
+ >::type
+ >::type tag_type;
+ return policies::checked_narrowing_cast<result_type, forwarding_policy>(
+ detail::log1p_imp(static_cast<value_type>(x), forwarding_policy(), tag_type()), "boost::math::log1p<%1%>(%1%)");
+}
+
 #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
 // These overloads work around a type deduction bug:
 inline float log1p(float z)
@@ -275,3 +463,4 @@
 #endif // BOOST_MATH_LOG1P_INCLUDED
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/math_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/math_fwd.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/math_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,6 +19,11 @@
 #ifndef BOOST_MATH_SPECIAL_MATH_FWD_HPP
 #define BOOST_MATH_SPECIAL_MATH_FWD_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
+#include <boost/math/special_functions/detail/round_fwd.hpp>
 #include <boost/math/tools/promotion.hpp> // for argument promotion.
 #include <boost/math/policies/policy.hpp>
 #include <boost/mpl/comparison.hpp>
@@ -311,8 +316,23 @@
    template <class T1, class T2, class Policy>
    typename tools::promote_args<T1, T2>::type ellint_1(T1 k, T2 phi, const Policy& pol);
 
+ namespace detail{
+
+ template <class T, class U, class V>
+ struct ellint_3_result
+ {
+ typedef typename mpl::if_<
+ policies::is_policy<V>,
+ typename tools::promote_args<T, U>::type,
+ typename tools::promote_args<T, U, V>::type
+ >::type type;
+ };
+
+ } // namespace detail
+
+
    template <class T1, class T2, class T3>
- typename tools::promote_args<T1, T2, T3>::type ellint_3(T1 k, T2 v, T3 phi);
+ typename detail::ellint_3_result<T1, T2, T3>::type ellint_3(T1 k, T2 v, T3 phi);
 
    template <class T1, class T2, class T3, class Policy>
    typename tools::promote_args<T1, T2, T3>::type ellint_3(T1 k, T2 v, T3 phi, const Policy& pol);
@@ -621,10 +641,85 @@
    template <class T>
    bool isnormal BOOST_NO_MACRO_EXPAND(T t);
 
+ // Exponential integrals:
+ namespace detail{
+
+ template <class T, class U>
+ struct expint_result
+ {
+ typedef typename mpl::if_<
+ policies::is_policy<U>,
+ typename tools::promote_args<T>::type,
+ typename tools::promote_args<U>::type
+ >::type type;
+ };
+
+ } // namespace detail
+
+ template <class T, class Policy>
+ typename tools::promote_args<T>::type expint(unsigned n, T z, const Policy&);
+
+ template <class T, class U>
+ typename detail::expint_result<T, U>::type expint(T const z, U const u);
+
+ template <class T>
+ typename tools::promote_args<T>::type expint(T z);
+
+ // Zeta:
+ template <class T, class Policy>
+ typename tools::promote_args<T>::type zeta(T s, const Policy&);
+
+ template <class T>
+ typename tools::promote_args<T>::type zeta(T s);
+
+ // pow:
+ template <int N, typename T, class Policy>
+ typename tools::promote_args<T>::type pow(T base, const Policy& policy);
+
+ template <int N, typename T>
+ typename tools::promote_args<T>::type pow(T base);
+
+ // next:
+ template <class T, class Policy>
+ T nextafter(const T&, const T&, const Policy&);
+ template <class T>
+ T nextafter(const T&, const T&);
+ template <class T, class Policy>
+ T float_next(const T&, const Policy&);
+ template <class T>
+ T float_next(const T&);
+ template <class T, class Policy>
+ T float_prior(const T&, const Policy&);
+ template <class T>
+ T float_prior(const T&);
+ template <class T, class Policy>
+ T float_distance(const T&, const T&, const Policy&);
+ template <class T>
+ T float_distance(const T&, const T&);
+
     } // namespace math
 } // namespace boost
 
+#ifdef BOOST_HAS_LONG_LONG
+#define BOOST_MATH_DETAIL_LL_FUNC(Policy)\
+ \
+ template <class T>\
+ inline T modf(const T& v, boost::long_long_type* ipart){ using boost::math::modf; return modf(v, ipart, Policy()); }\
+ \
+ template <class T>\
+ inline boost::long_long_type lltrunc(const T& v){ using boost::math::lltrunc; return lltrunc(v, Policy()); }\
+ \
+ template <class T>\
+ inline boost::long_long_type llround(const T& v){ using boost::math::llround; return llround(v, Policy()); }\
+
+#else
+#define BOOST_MATH_DETAIL_LL_FUNC(Policy)
+#endif
+
 #define BOOST_MATH_DECLARE_SPECIAL_FUNCTIONS(Policy)\
+ \
+ BOOST_MATH_DETAIL_LL_FUNC(Policy)\
+ \
    template <class RT1, class RT2>\
    inline typename boost::math::tools::promote_args<RT1, RT2>::type \
    beta(RT1 a, RT2 b) { return ::boost::math::beta(a, b, Policy()); }\
@@ -907,6 +1002,53 @@
    using boost::math::isfinite;\
    using boost::math::isinf;\
    using boost::math::isnan;\
- using boost::math::isnormal;
+ using boost::math::isnormal;\
+ \
+ template <class T, class U>\
+ inline typename boost::math::tools::promote_args<T,U>::type expint(T const& z, U const& u)\
+ { return boost::math::expint(z, u, Policy()); }\
+ \
+ template <class T>\
+ inline typename boost::math::tools::promote_args<T>::type expint(T z){ return boost::math::expint(z, Policy()); }\
+ \
+ template <class T>\
+ inline typename boost::math::tools::promote_args<T>::type zeta(T s){ return boost::math::zeta(s, Policy()); }\
+ \
+ template <class T>\
+ inline T round(const T& v){ using boost::math::round; return round(v, Policy()); }\
+ \
+ template <class T>\
+ inline int iround(const T& v){ using boost::math::iround; return iround(v, Policy()); }\
+ \
+ template <class T>\
+ inline long lround(const T& v){ using boost::math::lround; return lround(v, Policy()); }\
+ \
+ template <class T>\
+ inline T trunc(const T& v){ using boost::math::trunc; return trunc(v, Policy()); }\
+ \
+ template <class T>\
+ inline int itrunc(const T& v){ using boost::math::itrunc; return itrunc(v, Policy()); }\
+ \
+ template <class T>\
+ inline long ltrunc(const T& v){ using boost::math::ltrunc; return ltrunc(v, Policy()); }\
+ \
+ template <class T>\
+ inline T modf(const T& v, T* ipart){ using boost::math::modf; return modf(v, ipart, Policy()); }\
+ \
+ template <class T>\
+ inline T modf(const T& v, int* ipart){ using boost::math::modf; return modf(v, ipart, Policy()); }\
+ \
+ template <class T>\
+ inline T modf(const T& v, long* ipart){ using boost::math::modf; return modf(v, ipart, Policy()); }\
+ \
+ template <int N, class T>\
+ inline typename boost::math::tools::promote_args<T>::type pow(T v){ return boost::math::pow<N>(v, Policy()); }\
+ \
+ template <class T> T nextafter(const T& a, const T& b){ return boost::math::nextafter(a, b, Policy()); }\
+ template <class T> T float_next(const T& a){ return boost::math::float_next(a, Policy()); }\
+ template <class T> T float_prior(const T& a){ return boost::math::float_prior(a, Policy()); }\
+ template <class T> T float_distance(const T& a, const T& b){ return boost::math::float_distance(a, b, Policy()); }\
 
 #endif // BOOST_MATH_SPECIAL_MATH_FWD_HPP
+
+

Modified: branches/CMake/release/boost/math/special_functions/powm1.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/powm1.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/powm1.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_POWM1
 #define BOOST_MATH_POWM1
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/log1p.hpp>
 #include <boost/math/special_functions/expm1.hpp>
 #include <boost/math/special_functions/math_fwd.hpp>
@@ -54,3 +58,4 @@
 
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/sign.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/sign.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/sign.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_SIGN_HPP
 #define BOOST_MATH_TOOLS_SIGN_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/config.hpp>
 #include <boost/math/special_functions/math_fwd.hpp>
 
@@ -36,3 +40,4 @@
 
 #endif // BOOST_MATH_TOOLS_SIGN_HPP
 
+

Modified: branches/CMake/release/boost/math/special_functions/sin_pi.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/sin_pi.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/sin_pi.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,18 +6,24 @@
 #ifndef BOOST_MATH_SIN_PI_HPP
 #define BOOST_MATH_SIN_PI_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <cmath>
 #include <boost/math/tools/config.hpp>
-#include <boost/math/tools/real_cast.hpp>
+#include <boost/math/special_functions/trunc.hpp>
 #include <boost/math/tools/promotion.hpp>
 #include <boost/math/constants/constants.hpp>
 
 namespace boost{ namespace math{ namespace detail{
 
-template <class T>
-T sin_pi_imp(T x)
+template <class T, class Policy>
+T sin_pi_imp(T x, const Policy& pol)
 {
    BOOST_MATH_STD_USING // ADL of std names
+ if(x < 0)
+ return -sin_pi(-x);
    // sin of pi*x:
    bool invert;
    if(x < 0.5)
@@ -31,7 +37,7 @@
       invert = false;
 
    T rem = floor(x);
- if(tools::real_cast<int>(rem) & 1)
+ if(itrunc(rem, pol) & 1)
       invert = !invert;
    rem = x - rem;
    if(rem > 0.5f)
@@ -43,22 +49,22 @@
    return invert ? -rem : rem;
 }
 
-}
+} // namespace detail
 
 template <class T, class Policy>
-inline typename tools::promote_args<T>::type sin_pi(T x, const Policy&)
+inline typename tools::promote_args<T>::type sin_pi(T x, const Policy& pol)
 {
    typedef typename tools::promote_args<T>::type result_type;
- return boost::math::detail::sin_pi_imp<result_type>(x);
+ return boost::math::detail::sin_pi_imp<result_type>(x, pol);
 }
 
 template <class T>
 inline typename tools::promote_args<T>::type sin_pi(T x)
 {
- typedef typename tools::promote_args<T>::type result_type;
- return boost::math::detail::sin_pi_imp<result_type>(x);
+ return boost::math::sin_pi(x, policies::policy<>());
 }
 
 } // namespace math
 } // namespace boost
 #endif
+

Modified: branches/CMake/release/boost/math/special_functions/sinc.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/sinc.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/sinc.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,6 +11,10 @@
 #define BOOST_SINC_HPP
 
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/config.hpp>
 #include <boost/math/tools/precision.hpp>
 #include <boost/math/policies/policy.hpp>
@@ -170,3 +174,4 @@
 }
 
 #endif /* BOOST_SINC_HPP */
+

Modified: branches/CMake/release/boost/math/special_functions/sinhc.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/sinhc.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/sinhc.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,6 +11,10 @@
 #define BOOST_SINHC_HPP
 
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/config.hpp>
 #include <boost/math/tools/precision.hpp>
 #include <boost/math/special_functions/math_fwd.hpp>
@@ -161,3 +165,4 @@
 }
 
 #endif /* BOOST_SINHC_HPP */
+

Modified: branches/CMake/release/boost/math/special_functions/spherical_harmonic.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/spherical_harmonic.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/spherical_harmonic.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,6 +7,10 @@
 #ifndef BOOST_MATH_SPECIAL_SPHERICAL_HARMONIC_HPP
 #define BOOST_MATH_SPECIAL_SPHERICAL_HARMONIC_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/legendre.hpp>
 #include <boost/math/tools/workaround.hpp>
 #include <complex>
@@ -197,3 +201,4 @@
 #endif // BOOST_MATH_SPECIAL_SPHERICAL_HARMONIC_HPP
 
 
+

Modified: branches/CMake/release/boost/math/special_functions/sqrt1pm1.hpp
==============================================================================
--- branches/CMake/release/boost/math/special_functions/sqrt1pm1.hpp (original)
+++ branches/CMake/release/boost/math/special_functions/sqrt1pm1.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_SQRT1PM1
 #define BOOST_MATH_SQRT1PM1
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/special_functions/log1p.hpp>
 #include <boost/math/special_functions/expm1.hpp>
 #include <boost/math/special_functions/math_fwd.hpp>
@@ -41,3 +45,4 @@
 
 
 
+

Modified: branches/CMake/release/boost/math/tools/config.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/config.hpp (original)
+++ branches/CMake/release/boost/math/tools/config.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_CONFIG_HPP
 #define BOOST_MATH_TOOLS_CONFIG_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/cstdint.hpp> // for boost::uintmax_t
 #include <boost/config.hpp>
 #include <boost/detail/workaround.hpp>
@@ -17,6 +21,7 @@
 #endif
 
 #include <boost/math/tools/user.hpp>
+#include <boost/math/special_functions/detail/round_fwd.hpp>
 
 #if defined(__CYGWIN__) || defined(__FreeBSD__) || defined(__hppa)
 # define BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS
@@ -55,6 +60,11 @@
 # define BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS
 #endif
 
+#if defined(BOOST_MSVC) && !defined(_WIN32_WCE)
+ // Better safe than sorry, our tests don't support hardware exceptions:
+# define BOOST_MATH_CONTROL_FP _control87(MCW_EM,MCW_EM)
+#endif
+
 #ifdef __IBMCPP__
 # define BOOST_MATH_NO_DEDUCED_FUNCTION_POINTERS
 #endif
@@ -180,7 +190,14 @@
    using std::ceil;\
    using std::floor;\
    using std::log10;\
- using std::sqrt;
+ using std::sqrt;\
+ using boost::math::round;\
+ using boost::math::iround;\
+ using boost::math::lround;\
+ using boost::math::trunc;\
+ using boost::math::itrunc;\
+ using boost::math::ltrunc;\
+ using boost::math::modf;
 
 
 namespace boost{ namespace math{
@@ -244,3 +261,5 @@
 
 
 
+
+

Modified: branches/CMake/release/boost/math/tools/fraction.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/fraction.hpp (original)
+++ branches/CMake/release/boost/math/tools/fraction.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_FRACTION_INCLUDED
 #define BOOST_MATH_TOOLS_FRACTION_INCLUDED
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <cmath>
 #include <boost/cstdint.hpp>
 #include <boost/type_traits/integral_constant.hpp>
@@ -257,3 +261,4 @@
 } // namespace boost
 
 #endif // BOOST_MATH_TOOLS_FRACTION_INCLUDED
+

Modified: branches/CMake/release/boost/math/tools/minima.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/minima.hpp (original)
+++ branches/CMake/release/boost/math/tools/minima.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,6 +7,10 @@
 #ifndef BOOST_MATH_TOOLS_MINIMA_HPP
 #define BOOST_MATH_TOOLS_MINIMA_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <utility>
 #include <cmath>
 #include <boost/math/tools/precision.hpp>
@@ -145,3 +149,4 @@
 
 
 
+

Modified: branches/CMake/release/boost/math/tools/polynomial.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/polynomial.hpp (original)
+++ branches/CMake/release/boost/math/tools/polynomial.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,15 +6,99 @@
 #ifndef BOOST_MATH_TOOLS_POLYNOMIAL_HPP
 #define BOOST_MATH_TOOLS_POLYNOMIAL_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/assert.hpp>
 #include <boost/math/tools/rational.hpp>
 #include <boost/math/tools/real_cast.hpp>
+#include <boost/math/special_functions/binomial.hpp>
 
 #include <vector>
+#include <ostream>
+#include <algorithm>
 
 namespace boost{ namespace math{ namespace tools{
 
 template <class T>
+T chebyshev_coefficient(unsigned n, unsigned m)
+{
+ BOOST_MATH_STD_USING
+ if(m > n)
+ return 0;
+ if((n & 1) != (m & 1))
+ return 0;
+ if(n == 0)
+ return 1;
+ T result = T(n) / 2;
+ unsigned r = n - m;
+ r /= 2;
+
+ BOOST_ASSERT(n - 2 * r == m);
+
+ if(r & 1)
+ result = -result;
+ result /= n - r;
+ result *= boost::math::binomial_coefficient<T>(n - r, r);
+ result *= ldexp(1.0f, m);
+ return result;
+}
+
+template <class Seq>
+Seq polynomial_to_chebyshev(const Seq& s)
+{
+ // Converts a Polynomial into Chebyshev form:
+ typedef typename Seq::value_type value_type;
+ typedef typename Seq::difference_type difference_type;
+ Seq result(s);
+ difference_type order = s.size() - 1;
+ difference_type even_order = order & 1 ? order - 1 : order;
+ difference_type odd_order = order & 1 ? order : order - 1;
+
+ for(difference_type i = even_order; i >= 0; i -= 2)
+ {
+ value_type val = s[i];
+ for(difference_type k = even_order; k > i; k -= 2)
+ {
+ val -= result[k] * chebyshev_coefficient<value_type>(static_cast<unsigned>(k), static_cast<unsigned>(i));
+ }
+ val /= chebyshev_coefficient<value_type>(static_cast<unsigned>(i), static_cast<unsigned>(i));
+ result[i] = val;
+ }
+ result[0] *= 2;
+
+ for(difference_type i = odd_order; i >= 0; i -= 2)
+ {
+ value_type val = s[i];
+ for(difference_type k = odd_order; k > i; k -= 2)
+ {
+ val -= result[k] * chebyshev_coefficient<value_type>(static_cast<unsigned>(k), static_cast<unsigned>(i));
+ }
+ val /= chebyshev_coefficient<value_type>(static_cast<unsigned>(i), static_cast<unsigned>(i));
+ result[i] = val;
+ }
+ return result;
+}
+
+template <class Seq, class T>
+T evaluate_chebyshev(const Seq& a, const T& x)
+{
+ // Clenshaw's formula:
+ typedef typename Seq::difference_type difference_type;
+ T yk2 = 0;
+ T yk1 = 0;
+ T yk = 0;
+ for(difference_type i = a.size() - 1; i >= 1; --i)
+ {
+ yk2 = yk1;
+ yk1 = yk;
+ yk = 2 * x * yk1 - yk2 + a[i];
+ }
+ return a[0] / 2 + yk * x - yk1;
+}
+
+template <class T>
 class polynomial
 {
 public:
@@ -63,6 +147,10 @@
    {
       return boost::math::tools::evaluate_polynomial(&m_data[0], z, m_data.size());;
    }
+ std::vector<T> chebyshev()const
+ {
+ return polynomial_to_chebyshev(m_data);
+ }
 
    // operators:
    template <class U>
@@ -232,3 +320,4 @@
 #endif // BOOST_MATH_TOOLS_POLYNOMIAL_HPP
 
 
+

Modified: branches/CMake/release/boost/math/tools/precision.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/precision.hpp (original)
+++ branches/CMake/release/boost/math/tools/precision.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_PRECISION_INCLUDED
 #define BOOST_MATH_TOOLS_PRECISION_INCLUDED
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/limits.hpp>
 #include <boost/assert.hpp>
 #include <boost/static_assert.hpp>
@@ -233,3 +237,4 @@
 } // namespace boost
 
 #endif // BOOST_MATH_TOOLS_PRECISION_INCLUDED
+

Modified: branches/CMake/release/boost/math/tools/promotion.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/promotion.hpp (original)
+++ branches/CMake/release/boost/math/tools/promotion.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -18,6 +18,10 @@
 #ifndef BOOST_MATH_PROMOTION_HPP
 #define BOOST_MATH_PROMOTION_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 // Boost type traits:
 #include <boost/math/tools/config.hpp>
 #include <boost/type_traits/is_floating_point.hpp> // for boost::is_floating_point;
@@ -118,3 +122,4 @@
 } // namespace boost
 
 #endif // BOOST_MATH_PROMOTION_HPP
+

Modified: branches/CMake/release/boost/math/tools/rational.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/rational.hpp (original)
+++ branches/CMake/release/boost/math/tools/rational.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_RATIONAL_HPP
 #define BOOST_MATH_TOOLS_RATIONAL_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/array.hpp>
 #include <boost/math/tools/config.hpp>
 #include <boost/mpl/int.hpp>
@@ -204,3 +208,4 @@
 
 
 
+

Modified: branches/CMake/release/boost/math/tools/real_cast.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/real_cast.hpp (original)
+++ branches/CMake/release/boost/math/tools/real_cast.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_REAL_CAST_HPP
 #define BOOST_MATH_TOOLS_REAL_CAST_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 namespace boost{ namespace math
 {
   namespace tools
@@ -22,3 +26,4 @@
 #endif // BOOST_MATH_TOOLS_REAL_CAST_HPP
 
 
+

Modified: branches/CMake/release/boost/math/tools/remez.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/remez.hpp (original)
+++ branches/CMake/release/boost/math/tools/remez.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_REMEZ_HPP
 #define BOOST_MATH_TOOLS_REMEZ_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/solve.hpp>
 #include <boost/math/tools/minima.hpp>
 #include <boost/math/tools/roots.hpp>
@@ -660,3 +664,4 @@
 #endif // BOOST_MATH_TOOLS_REMEZ_HPP
 
 
+

Modified: branches/CMake/release/boost/math/tools/roots.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/roots.hpp (original)
+++ branches/CMake/release/boost/math/tools/roots.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,10 +6,15 @@
 #ifndef BOOST_MATH_TOOLS_NEWTON_SOLVER_HPP
 #define BOOST_MATH_TOOLS_NEWTON_SOLVER_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <utility>
 #include <cmath>
 #include <stdexcept>
 
+#include <boost/tr1/tuple.hpp>
 #include <boost/math/tools/config.hpp>
 #include <boost/cstdint.hpp>
 #include <boost/assert.hpp>
@@ -520,3 +525,4 @@
 #endif // BOOST_MATH_TOOLS_NEWTON_SOLVER_HPP
 
 
+

Modified: branches/CMake/release/boost/math/tools/series.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/series.hpp (original)
+++ branches/CMake/release/boost/math/tools/series.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_SERIES_INCLUDED
 #define BOOST_MATH_TOOLS_SERIES_INCLUDED
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <cmath>
 #include <boost/cstdint.hpp>
 #include <boost/math/tools/config.hpp>
@@ -169,3 +173,4 @@
 } // namespace boost
 
 #endif // BOOST_MATH_TOOLS_SERIES_INCLUDED
+

Modified: branches/CMake/release/boost/math/tools/solve.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/solve.hpp (original)
+++ branches/CMake/release/boost/math/tools/solve.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_SOLVE_HPP
 #define BOOST_MATH_TOOLS_SOLVE_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/config.hpp>
 #include <boost/assert.hpp>
 
@@ -72,3 +76,4 @@
 
 #endif // BOOST_MATH_TOOLS_SOLVE_HPP
 
+

Modified: branches/CMake/release/boost/math/tools/stats.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/stats.hpp (original)
+++ branches/CMake/release/boost/math/tools/stats.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_STATS_INCLUDED
 #define BOOST_MATH_TOOLS_STATS_INCLUDED
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <cmath>
 #include <boost/cstdint.hpp>
 #include <boost/math/tools/precision.hpp>
@@ -81,3 +85,4 @@
 } // namespace boost
 
 #endif
+

Modified: branches/CMake/release/boost/math/tools/test.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/test.hpp (original)
+++ branches/CMake/release/boost/math/tools/test.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_TEST_HPP
 #define BOOST_MATH_TOOLS_TEST_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/config.hpp>
 #include <boost/math/tools/stats.hpp>
 #include <boost/math/special_functions/fpclassify.hpp>
@@ -240,3 +244,4 @@
 
 #endif
 
+

Modified: branches/CMake/release/boost/math/tools/test_data.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/test_data.hpp (original)
+++ branches/CMake/release/boost/math/tools/test_data.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_TEST_DATA_HPP
 #define BOOST_MATH_TOOLS_TEST_DATA_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/config.hpp>
 #include <boost/assert.hpp>
 #ifdef BOOST_MSVC
@@ -27,6 +31,7 @@
 
 #include <set>
 #include <vector>
+#include <iostream>
 
 #ifdef BOOST_MSVC
 # pragma warning(push)
@@ -753,3 +758,4 @@
 
 #endif // BOOST_MATH_TOOLS_TEST_DATA_HPP
 
+

Modified: branches/CMake/release/boost/math/tools/toms748_solve.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/toms748_solve.hpp (original)
+++ branches/CMake/release/boost/math/tools/toms748_solve.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_SOLVE_ROOT_HPP
 #define BOOST_MATH_TOOLS_SOLVE_ROOT_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/precision.hpp>
 #include <boost/math/policies/error_handling.hpp>
 #include <boost/math/tools/config.hpp>
@@ -92,11 +96,11 @@
    }
    else if(c <= a + fabs(a) * tol)
    {
- c = a * (1 + tol);
+ c = a + fabs(a) * tol;
    }
    else if(c >= b - fabs(b) * tol)
    {
- c = b * (1 - tol);
+ c = b - fabs(a) * tol;
    }
    //
    // OK, lets invoke f(c):
@@ -505,7 +509,7 @@
          if((max_iter - count) % 20 == 0)
             factor *= 2;
          //
- // Now go ahead and move are guess by "factor":
+ // Now go ahead and move our guess by "factor":
          //
          a = b;
          fa = fb;
@@ -577,3 +581,4 @@
 
 
 #endif // BOOST_MATH_TOOLS_SOLVE_ROOT_HPP
+

Modified: branches/CMake/release/boost/math/tools/traits.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/traits.hpp (original)
+++ branches/CMake/release/boost/math/tools/traits.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -21,6 +21,10 @@
 #ifndef BOOST_STATS_IS_DISTRIBUTION_HPP
 #define BOOST_STATS_IS_DISTRIBUTION_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/mpl/has_xxx.hpp>
 // should be the last #include
 #include <boost/type_traits/detail/bool_trait_def.hpp>
@@ -104,3 +108,4 @@
 
 #endif
 
+

Modified: branches/CMake/release/boost/math/tools/user.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/user.hpp (original)
+++ branches/CMake/release/boost/math/tools/user.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,6 +9,10 @@
 #ifndef BOOST_MATH_TOOLS_USER_HPP
 #define BOOST_MATH_TOOLS_USER_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 // This file can be modified by the user to change the default policies.
 // See "Changing the Policy Defaults" in documentation.
 
@@ -90,3 +94,4 @@
 
 #endif // BOOST_MATH_TOOLS_USER_HPP
 
+

Modified: branches/CMake/release/boost/math/tools/workaround.hpp
==============================================================================
--- branches/CMake/release/boost/math/tools/workaround.hpp (original)
+++ branches/CMake/release/boost/math/tools/workaround.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,10 @@
 #ifndef BOOST_MATH_TOOLS_WORHAROUND_HPP
 #define BOOST_MATH_TOOLS_WORHAROUND_HPP
 
+#ifdef _MSC_VER
+#pragma once
+#endif
+
 #include <boost/math/tools/config.hpp>
 
 namespace boost{ namespace math{ namespace tools{
@@ -31,3 +35,4 @@
 }}} // namespaces
 
 #endif // BOOST_MATH_TOOLS_WORHAROUND_HPP
+

Modified: branches/CMake/release/boost/parameter/aux_/cast.hpp
==============================================================================
--- branches/CMake/release/boost/parameter/aux_/cast.hpp (original)
+++ branches/CMake/release/boost/parameter/aux_/cast.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,6 +5,8 @@
 #ifndef BOOST_PARAMETER_CAST_060902_HPP
 # define BOOST_PARAMETER_CAST_060902_HPP
 
+# include <boost/detail/workaround.hpp>
+
 # if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
   && !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
 # include <boost/type_traits/add_reference.hpp>

Modified: branches/CMake/release/boost/parameter/aux_/default.hpp
==============================================================================
--- branches/CMake/release/boost/parameter/aux_/default.hpp (original)
+++ branches/CMake/release/boost/parameter/aux_/default.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,7 +4,9 @@
 // http://www.boost.org/LICENSE_1_0.txt)
 
 #ifndef DEFAULT_050329_HPP
-#define DEFAULT_050329_HPP
+# define DEFAULT_050329_HPP
+
+# include <boost/detail/workaround.hpp>
 
 namespace boost { namespace parameter { namespace aux {
 
@@ -27,7 +29,7 @@
 // the user when resolving the value of the parameter with the
 // given keyword
 //
-#if BOOST_WORKAROUND(__EDG_VERSION__, <= 300)
+# if BOOST_WORKAROUND(__EDG_VERSION__, <= 300)
 // These compilers need a little extra help with overload
 // resolution; we have empty_arg_list's operator[] accept a base
 // class to make that overload less preferable.
@@ -48,8 +50,8 @@
         : lazy_default_base<KW,DefaultComputer>(x)
       {}
   };
-# define BOOST_PARAMETER_lazy_default_fallback lazy_default_base
-#else
+# define BOOST_PARAMETER_lazy_default_fallback lazy_default_base
+# else
 template <class KW, class DefaultComputer>
 struct lazy_default
 {
@@ -58,8 +60,8 @@
     {}
     DefaultComputer const& compute_default;
 };
-# define BOOST_PARAMETER_lazy_default_fallback lazy_default
-#endif
+# define BOOST_PARAMETER_lazy_default_fallback lazy_default
+# endif
 
 }}} // namespace boost::parameter::aux
 

Modified: branches/CMake/release/boost/parameter/aux_/python/invoker.hpp
==============================================================================
--- branches/CMake/release/boost/parameter/aux_/python/invoker.hpp (original)
+++ branches/CMake/release/boost/parameter/aux_/python/invoker.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,6 +8,7 @@
 # include <boost/mpl/begin.hpp>
 # include <boost/mpl/next.hpp>
 # include <boost/mpl/deref.hpp>
+# include <boost/mpl/size.hpp>
 # include <boost/parameter/keyword.hpp>
 # include <boost/preprocessor/iteration/iterate.hpp>
 

Modified: branches/CMake/release/boost/parameter/aux_/set.hpp
==============================================================================
--- branches/CMake/release/boost/parameter/aux_/set.hpp (original)
+++ branches/CMake/release/boost/parameter/aux_/set.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,6 +5,8 @@
 #ifndef BOOST_PARAMETER_SET_060912_HPP
 # define BOOST_PARAMETER_SET_060912_HPP
 
+# include <boost/detail/workaround.hpp>
+
 # if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) \
   && !BOOST_WORKAROUND(__GNUC__, < 3)
 # include <boost/mpl/insert.hpp>

Modified: branches/CMake/release/boost/parameter/aux_/tagged_argument.hpp
==============================================================================
--- branches/CMake/release/boost/parameter/aux_/tagged_argument.hpp (original)
+++ branches/CMake/release/boost/parameter/aux_/tagged_argument.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,6 +14,7 @@
 # include <boost/mpl/and.hpp>
 # include <boost/mpl/not.hpp>
 # include <boost/type_traits/is_same.hpp>
+# include <boost/type_traits/is_convertible.hpp>
 # include <boost/type_traits/is_reference.hpp>
 
 namespace boost { namespace parameter { namespace aux {

Modified: branches/CMake/release/boost/parameter/macros.hpp
==============================================================================
--- branches/CMake/release/boost/parameter/macros.hpp (original)
+++ branches/CMake/release/boost/parameter/macros.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -15,6 +15,7 @@
 #include <boost/preprocessor/repetition/enum_params.hpp>
 #include <boost/preprocessor/repetition/enum_binary_params.hpp>
 #include <boost/preprocessor/cat.hpp>
+#include <boost/detail/workaround.hpp>
 
 #define BOOST_PARAMETER_FUN_TEMPLATE_HEAD1(n) \
     template<BOOST_PP_ENUM_PARAMS(n, class T)>

Modified: branches/CMake/release/boost/parameter/preprocessor.hpp
==============================================================================
--- branches/CMake/release/boost/parameter/preprocessor.hpp (original)
+++ branches/CMake/release/boost/parameter/preprocessor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -149,7 +149,8 @@
       , typename Parameters::deduced_list
       , tag_keyword_arg
       , mpl::false_
- >::type type;
+ >::type result;
+ typedef typename mpl::first<result>::type type;
 };
 
 # if 1 //BOOST_WORKAROUND(BOOST_MSVC, < 1300)

Modified: branches/CMake/release/boost/pointer_cast.hpp
==============================================================================
--- branches/CMake/release/boost/pointer_cast.hpp (original)
+++ branches/CMake/release/boost/pointer_cast.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 //////////////////////////////////////////////////////////////////////////////
 //
-// (C) Copyright Ion Gaztañaga 2005.
+// (C) Copyright Ion Gaztanaga 2005.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/CMake/release/boost/pointer_to_other.hpp
==============================================================================
--- branches/CMake/release/boost/pointer_to_other.hpp (original)
+++ branches/CMake/release/boost/pointer_to_other.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,7 +4,7 @@
 //
 // pointer_to_other.hpp
 //
-// (C) Copyright Ion Gaztañaga 2005.
+// (C) Copyright Ion Gaztanaga 2005.
 // Copyright (c) 2005 Peter Dimov.
 //
 // Distributed under the Boost Software License, Version 1.0.

Modified: branches/CMake/release/boost/program_options/detail/utf8_codecvt_facet.hpp
==============================================================================
--- branches/CMake/release/boost/program_options/detail/utf8_codecvt_facet.hpp (original)
+++ branches/CMake/release/boost/program_options/detail/utf8_codecvt_facet.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,4 +1,4 @@
-// Copyright © 2001 Ronald Garcia, Indiana University (garcia_at_[hidden])
+// Copyright (c) 2001 Ronald Garcia, Indiana University (garcia_at_[hidden])
 // Andrew Lumsdaine, Indiana University (lums_at_[hidden]). Permission to copy,
 // use, modify, sell and distribute this software is granted provided this
 // copyright notice appears in all copies. This software is provided "as is"

Modified: branches/CMake/release/boost/progress.hpp
==============================================================================
--- branches/CMake/release/boost/progress.hpp (original)
+++ branches/CMake/release/boost/progress.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -51,7 +51,7 @@
       std::istream::fmtflags old_flags = m_os.setf( std::istream::fixed,
                                                    std::istream::floatfield );
       std::streamsize old_prec = m_os.precision( 2 );
- m_os << elapsed() << " s\n" // "s" is System International d'Unités std
+ m_os << elapsed() << " s\n" // "s" is System International d'Unites std
                         << std::endl;
       m_os.flags( old_flags );
       m_os.precision( old_prec );

Modified: branches/CMake/release/boost/python/iterator.hpp
==============================================================================
--- branches/CMake/release/boost/python/iterator.hpp (original)
+++ branches/CMake/release/boost/python/iterator.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,6 +14,16 @@
 # include <boost/type_traits/cv_traits.hpp>
 # include <boost/type_traits/transform_traits.hpp>
 
+# if defined(BOOST_MSVC) && (BOOST_MSVC == 1400) /*
+> warning C4180: qualifier applied to function type has no meaning; ignored
+Peter Dimov wrote:
+This warning is caused by an overload resolution bug in VC8 that cannot be
+worked around and will probably not be fixed by MS in the VC8 line. The
+problematic overload is only instantiated and never called, and the code
+works correctly. */
+# pragma warning(disable: 4180)
+# endif
+
 # include <boost/bind.hpp>
 # include <boost/bind/protect.hpp>
 

Modified: branches/CMake/release/boost/python/object_attributes.hpp
==============================================================================
--- branches/CMake/release/boost/python/object_attributes.hpp (original)
+++ branches/CMake/release/boost/python/object_attributes.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -17,6 +17,7 @@
 {
     typedef char const* key_type;
     static object get(object const& target, char const* key);
+ static object get(object const& target, object const& key);
 };
   
 struct attribute_policies : const_attribute_policies
@@ -25,6 +26,18 @@
     static void del(object const&target, char const* key);
 };
 
+struct const_objattribute_policies
+{
+ typedef object const key_type;
+ static object get(object const& target, object const& key);
+};
+
+struct objattribute_policies : const_objattribute_policies
+{
+ static object const& set(object const& target, object const& key, object const& value);
+ static void del(object const&target, object const& key);
+};
+
 //
 // implementation
 //
@@ -42,11 +55,30 @@
     return const_object_attribute(x, name);
 }
 
+template <class U>
+inline object_objattribute object_operators<U>::attr(object const& name)
+{
+ object_cref2 x = *static_cast<U*>(this);
+ return object_objattribute(x, name);
+}
+
+template <class U>
+inline const_object_objattribute object_operators<U>::attr(object const& name) const
+{
+ object_cref2 x = *static_cast<U const*>(this);
+ return const_object_objattribute(x, name);
+}
+
 inline object const_attribute_policies::get(object const& target, char const* key)
 {
     return python::getattr(target, key);
 }
 
+inline object const_objattribute_policies::get(object const& target, object const& key)
+{
+ return python::getattr(target, key);
+}
+
 inline object const& attribute_policies::set(
     object const& target
     , char const* key
@@ -56,6 +88,15 @@
     return value;
 }
 
+inline object const& objattribute_policies::set(
+ object const& target
+ , object const& key
+ , object const& value)
+{
+ python::setattr(target, key, value);
+ return value;
+}
+
 inline void attribute_policies::del(
     object const& target
     , char const* key)
@@ -63,6 +104,13 @@
     python::delattr(target, key);
 }
 
+inline void objattribute_policies::del(
+ object const& target
+ , object const& key)
+{
+ python::delattr(target, key);
+}
+
 }}} // namespace boost::python::api
 
 #endif // OBJECT_ATTRIBUTES_DWA2002615_HPP

Modified: branches/CMake/release/boost/python/object_core.hpp
==============================================================================
--- branches/CMake/release/boost/python/object_core.hpp (original)
+++ branches/CMake/release/boost/python/object_core.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -59,6 +59,8 @@
   
   struct const_attribute_policies;
   struct attribute_policies;
+ struct const_objattribute_policies;
+ struct objattribute_policies;
   struct const_item_policies;
   struct item_policies;
   struct const_slice_policies;
@@ -67,6 +69,8 @@
 
   typedef proxy<const_attribute_policies> const_object_attribute;
   typedef proxy<attribute_policies> object_attribute;
+ typedef proxy<const_objattribute_policies> const_object_objattribute;
+ typedef proxy<objattribute_policies> object_objattribute;
   typedef proxy<const_item_policies> const_object_item;
   typedef proxy<item_policies> object_item;
   typedef proxy<const_slice_policies> const_object_slice;
@@ -108,6 +112,8 @@
       //
       const_object_attribute attr(char const*) const;
       object_attribute attr(char const*);
+ const_object_objattribute attr(object const&) const;
+ object_objattribute attr(object const&);
 
       // item access
       //

Modified: branches/CMake/release/boost/python/suite/indexing/container_utils.hpp
==============================================================================
--- branches/CMake/release/boost/python/suite/indexing/container_utils.hpp (original)
+++ branches/CMake/release/boost/python/suite/indexing/container_utils.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,9 +7,12 @@
 #ifndef PY_CONTAINER_UTILS_JDG20038_HPP
 # define PY_CONTAINER_UTILS_JDG20038_HPP
 
+# include <utility>
+# include <boost/foreach.hpp>
 # include <boost/python/object.hpp>
 # include <boost/python/handle.hpp>
 # include <boost/python/extract.hpp>
+# include <boost/python/stl_iterator.hpp>
 
 namespace boost { namespace python { namespace container_utils {
         
@@ -19,11 +22,13 @@
     {
         typedef typename Container::value_type data_type;
         
- // l must be a list or some container
-
- for (int i = 0; i < l.attr("__len__")(); i++)
+ // l must be iterable
+ BOOST_FOREACH(object elem,
+ std::make_pair(
+ boost::python::stl_input_iterator<object>(l),
+ boost::python::stl_input_iterator<object>()
+ ))
         {
- object elem(l[i]);
             extract<data_type const&> x(elem);
             // try if elem is an exact data_type type
             if (x.check())

Modified: branches/CMake/release/boost/python/type_id.hpp
==============================================================================
--- branches/CMake/release/boost/python/type_id.hpp (original)
+++ branches/CMake/release/boost/python/type_id.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,6 +11,7 @@
 # include <boost/operators.hpp>
 # include <typeinfo>
 # include <cstring>
+# include <ostream>
 # include <boost/static_assert.hpp>
 # include <boost/detail/workaround.hpp>
 # include <boost/type_traits/same_traits.hpp>

Modified: branches/CMake/release/boost/python/with_custodian_and_ward.hpp
==============================================================================
--- branches/CMake/release/boost/python/with_custodian_and_ward.hpp (original)
+++ branches/CMake/release/boost/python/with_custodian_and_ward.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -68,8 +68,9 @@
     
         bool result = BasePolicy_::precall(args_);
 
- if (!result)
+ if (!result) {
             Py_DECREF(life_support);
+ }
     
         return result;
     }

Modified: branches/CMake/release/boost/random/detail/signed_unsigned_tools.hpp
==============================================================================
--- branches/CMake/release/boost/random/detail/signed_unsigned_tools.hpp (original)
+++ branches/CMake/release/boost/random/detail/signed_unsigned_tools.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,87 +13,12 @@
 
 #include <boost/limits.hpp>
 #include <boost/config.hpp>
+#include <boost/type_traits/make_unsigned.hpp>
 
 namespace boost {
 namespace random {
 namespace detail {
 
-/*
- * Given an (integral) type T, returns the type "unsigned T".
- * (type_traits appears to be lacking the feature)
- */
-
-template<class T>
-struct make_unsigned { };
-
-template<>
-struct make_unsigned<char>
-{
- typedef unsigned char type;
-};
-
-template<>
-struct make_unsigned<signed char>
-{
- typedef unsigned char type;
-};
-
-template<>
-struct make_unsigned<unsigned char>
-{
- typedef unsigned char type;
-};
-
-template<>
-struct make_unsigned<short>
-{
- typedef unsigned short type;
-};
-
-template<>
-struct make_unsigned<unsigned short>
-{
- typedef unsigned short type;
-};
-
-template<>
-struct make_unsigned<int>
-{
- typedef unsigned int type;
-};
-
-template<>
-struct make_unsigned<unsigned int>
-{
- typedef unsigned int type;
-};
-
-template<>
-struct make_unsigned<long>
-{
- typedef unsigned long type;
-};
-
-template<>
-struct make_unsigned<unsigned long>
-{
- typedef unsigned long type;
-};
-
-#ifdef BOOST_HAS_LONG_LONG
-template<>
-struct make_unsigned<long long>
-{
- typedef unsigned long long type;
-};
-
-template<>
-struct make_unsigned<unsigned long long>
-{
- typedef unsigned long long type;
-};
-#endif
-
 
 /*
  * Compute x - y, we know that x >= y, return an unsigned value.

Modified: branches/CMake/release/boost/random/uniform_int.hpp
==============================================================================
--- branches/CMake/release/boost/random/uniform_int.hpp (original)
+++ branches/CMake/release/boost/random/uniform_int.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -25,6 +25,7 @@
 #include <boost/detail/workaround.hpp>
 #include <boost/random/uniform_smallint.hpp>
 #include <boost/random/detail/signed_unsigned_tools.hpp>
+#include <boost/type_traits/make_unsigned.hpp>
 #ifdef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS
 #include <boost/type_traits/is_float.hpp>
 #endif
@@ -38,7 +39,7 @@
 public:
   typedef IntType input_type;
   typedef IntType result_type;
- typedef typename random::detail::make_unsigned<result_type>::type range_type;
+ typedef typename make_unsigned<result_type>::type range_type;
 
   explicit uniform_int(IntType min_arg = 0, IntType max_arg = 9)
     : _min(min_arg), _max(max_arg)
@@ -61,7 +62,7 @@
   {
     typedef typename Engine::result_type base_result;
     // ranges are always unsigned
- typedef typename random::detail::make_unsigned<base_result>::type base_unsigned;
+ typedef typename make_unsigned<base_result>::type base_unsigned;
     const base_result bmin = (eng.min)();
     const base_unsigned brange =
       random::detail::subtract<base_result>()((eng.max)(), (eng.min)());

Modified: branches/CMake/release/boost/random/uniform_real.hpp
==============================================================================
--- branches/CMake/release/boost/random/uniform_real.hpp (original)
+++ branches/CMake/release/boost/random/uniform_real.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,7 +40,7 @@
 #ifndef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS
     BOOST_STATIC_ASSERT(!std::numeric_limits<RealType>::is_integer);
 #endif
- assert(min_arg < max_arg);
+ assert(min_arg <= max_arg);
   }
 
   // compiler-generated copy ctor and assignment operator are fine

Modified: branches/CMake/release/boost/random/uniform_smallint.hpp
==============================================================================
--- branches/CMake/release/boost/random/uniform_smallint.hpp (original)
+++ branches/CMake/release/boost/random/uniform_smallint.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -81,7 +81,7 @@
 {
   _min = min_arg;
   _max = max_arg;
- assert(min_arg < max_arg);
+ assert(min_arg <= max_arg);
 
   _range = static_cast<base_result>(_max-_min)+1;
   _factor = 1;
@@ -122,7 +122,7 @@
     BOOST_STATIC_ASSERT(!std::numeric_limits<typename base_type::result_type>::is_integer);
 #endif
 
- assert(min_arg < max_arg);
+ assert(min_arg <= max_arg);
     set(min_arg, max_arg);
   }
 

Modified: branches/CMake/release/boost/regex/concepts.hpp
==============================================================================
--- branches/CMake/release/boost/regex/concepts.hpp (original)
+++ branches/CMake/release/boost/regex/concepts.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -368,8 +368,6 @@
 
       // access:
       const Regex ce;
- bool b = ce.empty();
- ignore_unused_variable_warning(b);
       unsigned i = ce.mark_count();
       ignore_unused_variable_warning(i);
       m_flags = ce.flags();
@@ -385,7 +383,7 @@
       typedef typename sub_match_type::iterator sub_iter_type;
       BOOST_STATIC_ASSERT((::boost::is_same<sub_value_type, value_type>::value));
       BOOST_STATIC_ASSERT((::boost::is_same<sub_iter_type, BidiIterator>::value));
- b = m_sub.matched;
+ bool b = m_sub.matched;
       ignore_unused_variable_warning(b);
       BidiIterator bi = m_sub.first;
       ignore_unused_variable_warning(bi);
@@ -806,6 +804,8 @@
       ignore_unused_variable_warning(i2);
       bool b = ce == ce2;
       ignore_unused_variable_warning(b);
+ b = ce.empty();
+ ignore_unused_variable_warning(b);
       b = ce != ce2;
       ignore_unused_variable_warning(b);
       b = ce < ce2;

Modified: branches/CMake/release/boost/regex/pending/object_cache.hpp
==============================================================================
--- branches/CMake/release/boost/regex/pending/object_cache.hpp (original)
+++ branches/CMake/release/boost/regex/pending/object_cache.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -119,7 +119,7 @@
    //
    // Add it to the list, and index it:
    //
- s_data.cont.push_back(value_type(result, 0));
+ s_data.cont.push_back(value_type(result, static_cast<Key const*>(0)));
    s_data.index.insert(std::make_pair(k, --(s_data.cont.end())));
    s_data.cont.back().second = &(s_data.index.find(k)->first);
    map_size_type s = s_data.index.size();

Modified: branches/CMake/release/boost/regex/pending/unicode_iterator.hpp
==============================================================================
--- branches/CMake/release/boost/regex/pending/unicode_iterator.hpp (original)
+++ branches/CMake/release/boost/regex/pending/unicode_iterator.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -68,6 +68,7 @@
 #include <stdexcept>
 #ifndef BOOST_NO_STD_LOCALE
 #include <sstream>
+#include <ios>
 #endif
 #include <limits.h> // CHAR_BIT
 

Modified: branches/CMake/release/boost/regex/v4/basic_regex_creator.hpp
==============================================================================
--- branches/CMake/release/boost/regex/v4/basic_regex_creator.hpp (original)
+++ branches/CMake/release/boost/regex/v4/basic_regex_creator.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1270,6 +1270,19 @@
             state = state->next.p;
             continue;
          }
+ if((static_cast<re_brace*>(state)->index == -1)
+ || (static_cast<re_brace*>(state)->index == -2))
+ {
+ // skip past the zero width assertion:
+ state = static_cast<const re_jump*>(state->next.p)->alt.p->next.p;
+ continue;
+ }
+ if(static_cast<re_brace*>(state)->index == -3)
+ {
+ // Have to skip the leading jump state:
+ state = state->next.p->next.p;
+ continue;
+ }
          return;
       case syntax_element_endmark:
       case syntax_element_start_line:

Modified: branches/CMake/release/boost/regex/v4/cpp_regex_traits.hpp
==============================================================================
--- branches/CMake/release/boost/regex/v4/cpp_regex_traits.hpp (original)
+++ branches/CMake/release/boost/regex/v4/cpp_regex_traits.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -293,7 +293,9 @@
    //
    if((int)cat >= 0)
    {
+#ifndef BOOST_NO_EXCEPTIONS
       try{
+#endif
          for(regex_constants::syntax_type i = 1; i < regex_constants::syntax_max; ++i)
          {
             string_type mss = this->m_pmessages->get(cat, 0, i, get_default_message(i));
@@ -303,12 +305,14 @@
             }
          }
          this->m_pmessages->close(cat);
+#ifndef BOOST_NO_EXCEPTIONS
       }
       catch(...)
       {
          this->m_pmessages->close(cat);
          throw;
       }
+#endif
    }
    else
    {
@@ -1055,3 +1059,4 @@
 
 #endif
 
+

Modified: branches/CMake/release/boost/regex/v4/instances.hpp
==============================================================================
--- branches/CMake/release/boost/regex/v4/instances.hpp (original)
+++ branches/CMake/release/boost/regex/v4/instances.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -71,32 +71,39 @@
 # ifdef __GNUC__
 # define template __extension__ extern template
 # else
+# if BOOST_MSVC > 1310
+# define BOOST_REGEX_TEMPLATE_DECL
+# endif
 # define template extern template
 # endif
 # endif
 
+#ifndef BOOST_REGEX_TEMPLATE_DECL
+# define BOOST_REGEX_TEMPLATE_DECL BOOST_REGEX_DECL
+#endif
+
 # ifdef BOOST_MSVC
 # pragma warning(push)
 # pragma warning(disable : 4251 4231 4660)
 # endif
 
-template class BOOST_REGEX_DECL basic_regex< BOOST_REGEX_CHAR_T BOOST_REGEX_TRAITS_T >;
+template class BOOST_REGEX_TEMPLATE_DECL basic_regex< BOOST_REGEX_CHAR_T BOOST_REGEX_TRAITS_T >;
 
 #if !BOOST_WORKAROUND(BOOST_MSVC, < 1300)
-template class BOOST_REGEX_DECL match_results< const BOOST_REGEX_CHAR_T* >;
+template class BOOST_REGEX_TEMPLATE_DECL match_results< const BOOST_REGEX_CHAR_T* >;
 #endif
 #ifndef BOOST_NO_STD_ALLOCATOR
-template class BOOST_REGEX_DECL ::boost::re_detail::perl_matcher<BOOST_REGEX_CHAR_T const *, match_results< const BOOST_REGEX_CHAR_T* >::allocator_type BOOST_REGEX_TRAITS_T >;
+template class BOOST_REGEX_TEMPLATE_DECL ::boost::re_detail::perl_matcher<BOOST_REGEX_CHAR_T const *, match_results< const BOOST_REGEX_CHAR_T* >::allocator_type BOOST_REGEX_TRAITS_T >;
 #endif
 #if !(defined(BOOST_DINKUMWARE_STDLIB) && (BOOST_DINKUMWARE_STDLIB <= 1))\
    && !(defined(BOOST_INTEL_CXX_VERSION) && (BOOST_INTEL_CXX_VERSION <= 800))\
    && !(defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION))\
    && !defined(BOOST_REGEX_ICU_INSTANCES)
 #if !BOOST_WORKAROUND(BOOST_MSVC, < 1300)
-template class BOOST_REGEX_DECL match_results< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator >;
+template class BOOST_REGEX_TEMPLATE_DECL match_results< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator >;
 #endif
 #ifndef BOOST_NO_STD_ALLOCATOR
-template class BOOST_REGEX_DECL ::boost::re_detail::perl_matcher< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator, match_results< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator >::allocator_type, boost::regex_traits<BOOST_REGEX_CHAR_T > >;
+template class BOOST_REGEX_TEMPLATE_DECL ::boost::re_detail::perl_matcher< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator, match_results< std::basic_string<BOOST_REGEX_CHAR_T>::const_iterator >::allocator_type, boost::regex_traits<BOOST_REGEX_CHAR_T > >;
 #endif
 #endif
 
@@ -109,6 +116,8 @@
 # undef template
 # endif
 
+#undef BOOST_REGEX_TEMPLATE_DECL
+
 #elif (defined(__GNUC__) && (__GNUC__ >= 3))
 
 # ifndef BOOST_REGEX_INSTANTIATE

Modified: branches/CMake/release/boost/regex/v4/perl_matcher_common.hpp
==============================================================================
--- branches/CMake/release/boost/regex/v4/perl_matcher_common.hpp (original)
+++ branches/CMake/release/boost/regex/v4/perl_matcher_common.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -535,7 +535,7 @@
    if(position == last)
       return false;
    // both prev and this character must be m_word_mask:
- if(traits_inst.isctype(*position, m_word_mask))
+ bool prev = traits_inst.isctype(*position, m_word_mask);
    {
       bool b;
       if((position == backstop) && ((m_match_flags & match_prev_avail) == 0))
@@ -546,7 +546,7 @@
          b = traits_inst.isctype(*position, m_word_mask);
          ++position;
       }
- if(b)
+ if(b == prev)
       {
          pstate = pstate->next.p;
          return true;

Modified: branches/CMake/release/boost/regex/v4/perl_matcher_non_recursive.hpp
==============================================================================
--- branches/CMake/release/boost/regex/v4/perl_matcher_non_recursive.hpp (original)
+++ branches/CMake/release/boost/regex/v4/perl_matcher_non_recursive.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1193,6 +1193,9 @@
          pstate = rep->next.p;
       }while((count < rep->max) && (position != last) && !can_start(*position, rep->_map, mask_skip));
    }
+ // remember where we got to if this is a leading repeat:
+ if((rep->leading) && (count < rep->max))
+ restart = position;
    if(position == last)
    {
       // can't repeat any more, remove the pushed state:
@@ -1259,6 +1262,9 @@
          pstate = rep->next.p;
       }while((count < rep->max) && (position != last) && !can_start(*position, rep->_map, mask_skip));
    }
+ // remember where we got to if this is a leading repeat:
+ if((rep->leading) && (count < rep->max))
+ restart = position;
    if(position == last)
    {
       // can't repeat any more, remove the pushed state:
@@ -1326,6 +1332,9 @@
          pstate = rep->next.p;
       }while((count < rep->max) && (position != last) && !can_start(*position, rep->_map, mask_skip));
    }
+ // remember where we got to if this is a leading repeat:
+ if((rep->leading) && (count < rep->max))
+ restart = position;
    if(position == last)
    {
       // can't repeat any more, remove the pushed state:

Modified: branches/CMake/release/boost/scoped_array.hpp
==============================================================================
--- branches/CMake/release/boost/scoped_array.hpp (original)
+++ branches/CMake/release/boost/scoped_array.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -46,6 +46,9 @@
 
     typedef scoped_array<T> this_type;
 
+ void operator==( scoped_array const& ) const;
+ void operator!=( scoped_array const& ) const;
+
 public:
 
     typedef T element_type;

Modified: branches/CMake/release/boost/scoped_ptr.hpp
==============================================================================
--- branches/CMake/release/boost/scoped_ptr.hpp (original)
+++ branches/CMake/release/boost/scoped_ptr.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -47,6 +47,9 @@
 
     typedef scoped_ptr<T> this_type;
 
+ void operator==( scoped_ptr const& ) const;
+ void operator!=( scoped_ptr const& ) const;
+
 public:
 
     typedef T element_type;

Modified: branches/CMake/release/boost/serialization/export.hpp
==============================================================================
--- branches/CMake/release/boost/serialization/export.hpp (original)
+++ branches/CMake/release/boost/serialization/export.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -104,18 +104,24 @@
 ptr_serialization_support<Archive,Serializable>::instantiate()
 {
     export_impl<Archive,Serializable>::enable_save(
- BOOST_DEDUCED_TYPENAME Archive::is_saving()
+ #if ! defined(__BORLANDC__)
+ BOOST_DEDUCED_TYPENAME
+ #endif
+ Archive::is_saving()
     );
 
     export_impl<Archive,Serializable>::enable_load(
- BOOST_DEDUCED_TYPENAME Archive::is_loading()
+ #if ! defined(__BORLANDC__)
+ BOOST_DEDUCED_TYPENAME
+ #endif
+ Archive::is_loading()
     );
 }
 
 template<class T>
 struct guid_initializer
 {
- const guid_initializer & export_guid(char const* key, mpl::false_){
+ const guid_initializer & export_guid(char const* /* key */, mpl::false_){
         // generates the statically-initialized objects whose constructors
         // register the information allowing serialization of T objects
         // through pointers to their base classes.

Modified: branches/CMake/release/boost/shared_ptr.hpp
==============================================================================
--- branches/CMake/release/boost/shared_ptr.hpp (original)
+++ branches/CMake/release/boost/shared_ptr.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
 // shared_ptr.hpp
 //
 // (C) Copyright Greg Colvin and Beman Dawes 1998, 1999.
-// Copyright (c) 2001-2007 Peter Dimov
+// Copyright (c) 2001-2008 Peter Dimov
 //
 // Distributed under the Boost Software License, Version 1.0. (See
 // accompanying file LICENSE_1_0.txt or copy at
@@ -20,18 +20,35 @@
 #include <boost/detail/shared_ptr_nmt.hpp>
 #else
 
-#include <memory> // for std::auto_ptr
+// In order to avoid circular dependencies with Boost.TR1
+// we make sure that our include of <memory> doesn't try to
+// pull in the TR1 headers: that's why we use this header
+// rather than including <memory> directly:
+#include <boost/config/no_tr1/memory.hpp> // std::auto_ptr
 
 #include <boost/assert.hpp>
 #include <boost/checked_delete.hpp>
 #include <boost/throw_exception.hpp>
 #include <boost/detail/shared_count.hpp>
 #include <boost/detail/workaround.hpp>
+#include <boost/detail/sp_convertible.hpp>
+
+#if !defined(BOOST_SP_NO_ATOMIC_ACCESS)
+#include <boost/detail/spinlock_pool.hpp>
+#include <boost/memory_order.hpp>
+#endif
 
 #include <algorithm> // for std::swap
 #include <functional> // for std::less
 #include <typeinfo> // for std::bad_cast
+
+#if !defined(BOOST_NO_IOSTREAM)
+#if !defined(BOOST_NO_IOSFWD)
 #include <iosfwd> // for std::basic_ostream
+#else
+#include <ostream>
+#endif
+#endif
 
 #ifdef BOOST_MSVC // moved here to work around VC++ compiler crash
 # pragma warning(push)
@@ -208,7 +225,25 @@
     }
 
     template<class Y>
- shared_ptr(shared_ptr<Y> const & r): px(r.px), pn(r.pn) // never throws
+ shared_ptr( weak_ptr<Y> const & r, boost::detail::sp_nothrow_tag ): px( 0 ), pn( r.pn, boost::detail::sp_nothrow_tag() ) // never throws
+ {
+ if( !pn.empty() )
+ {
+ px = r.px;
+ }
+ }
+
+ template<class Y>
+#if !defined( BOOST_SP_NO_SP_CONVERTIBLE )
+
+ shared_ptr( shared_ptr<Y> const & r, typename detail::sp_enable_if_convertible<Y,T>::type = detail::sp_empty() )
+
+#else
+
+ shared_ptr( shared_ptr<Y> const & r )
+
+#endif
+ : px( r.px ), pn( r.pn ) // never throws
     {
     }
 
@@ -317,7 +352,16 @@
     }
 
     template<class Y>
- shared_ptr( shared_ptr<Y> && r ): px( r.px ), pn() // never throws
+#if !defined( BOOST_SP_NO_SP_CONVERTIBLE )
+
+ shared_ptr( shared_ptr<Y> && r, typename detail::sp_enable_if_convertible<Y,T>::type = detail::sp_empty() )
+
+#else
+
+ shared_ptr( shared_ptr<Y> && r )
+
+#endif
+ : px( r.px ), pn() // never throws
     {
         pn.swap( r.pn );
         r.px = 0;
@@ -375,7 +419,7 @@
         BOOST_ASSERT(px != 0);
         return px;
     }
-
+
     T * get() const // never throws
     {
         return px;
@@ -409,13 +453,13 @@
     ( defined(__SUNPRO_CC) && BOOST_WORKAROUND(__SUNPRO_CC, <= 0x590) )
 
     typedef T * (this_type::*unspecified_bool_type)() const;
-
+
     operator unspecified_bool_type() const // never throws
     {
         return px == 0? 0: &this_type::get;
     }
 
-#else
+#else
 
     typedef T * this_type::*unspecified_bool_type;
 
@@ -459,6 +503,11 @@
         return pn.get_deleter( ti );
     }
 
+ bool _internal_equiv( shared_ptr const & r ) const
+ {
+ return px == r.px && pn == r.pn;
+ }
+
 // Tasteless as this may seem, making all members public allows member templates
 // to work in the absence of member template friends. (Matthew Langston)
 
@@ -555,7 +604,9 @@
 
 // operator<<
 
-#if defined(__GNUC__) && (__GNUC__ < 3)
+#if !defined(BOOST_NO_IOSTREAM)
+
+#if defined(BOOST_NO_TEMPLATED_IOSTREAMS) || ( defined(__GNUC__) && (__GNUC__ < 3) )
 
 template<class Y> std::ostream & operator<< (std::ostream & os, shared_ptr<Y> const & p)
 {
@@ -574,7 +625,7 @@
 template<class E, class T, class Y> basic_ostream<E, T> & operator<< (basic_ostream<E, T> & os, shared_ptr<Y> const & p)
 # else
 template<class E, class T, class Y> std::basic_ostream<E, T> & operator<< (std::basic_ostream<E, T> & os, shared_ptr<Y> const & p)
-# endif
+# endif
 {
     os << p.get();
     return os;
@@ -584,6 +635,8 @@
 
 #endif // __GNUC__ < 3
 
+#endif // !defined(BOOST_NO_IOSTREAM)
+
 // get_deleter
 
 #if ( defined(__GNUC__) && BOOST_WORKAROUND(__GNUC__, < 3) ) || \
@@ -608,11 +661,90 @@
 
 #endif
 
+// atomic access
+
+#if !defined(BOOST_SP_NO_ATOMIC_ACCESS)
+
+template<class T> inline bool atomic_is_lock_free( shared_ptr<T> const * /*p*/ )
+{
+ return false;
+}
+
+template<class T> shared_ptr<T> atomic_load( shared_ptr<T> const * p )
+{
+ boost::detail::spinlock_pool<2>::scoped_lock lock( p );
+ return *p;
+}
+
+template<class T> inline shared_ptr<T> atomic_load_explicit( shared_ptr<T> const * p, memory_order /*mo*/ )
+{
+ return atomic_load( p );
+}
+
+template<class T> void atomic_store( shared_ptr<T> * p, shared_ptr<T> r )
+{
+ boost::detail::spinlock_pool<2>::scoped_lock lock( p );
+ p->swap( r );
+}
+
+template<class T> inline void atomic_store_explicit( shared_ptr<T> * p, shared_ptr<T> r, memory_order /*mo*/ )
+{
+ atomic_store( p, r ); // std::move( r )
+}
+
+template<class T> shared_ptr<T> atomic_exchange( shared_ptr<T> * p, shared_ptr<T> r )
+{
+ boost::detail::spinlock & sp = boost::detail::spinlock_pool<2>::spinlock_for( p );
+
+ sp.lock();
+ p->swap( r );
+ sp.unlock();
+
+ return r; // return std::move( r )
+}
+
+template<class T> shared_ptr<T> atomic_exchange_explicit( shared_ptr<T> * p, shared_ptr<T> r, memory_order /*mo*/ )
+{
+ return atomic_exchange( p, r ); // std::move( r )
+}
+
+template<class T> bool atomic_compare_exchange( shared_ptr<T> * p, shared_ptr<T> * v, shared_ptr<T> w )
+{
+ boost::detail::spinlock & sp = boost::detail::spinlock_pool<2>::spinlock_for( p );
+
+ sp.lock();
+
+ if( p->_internal_equiv( *v ) )
+ {
+ p->swap( w );
+
+ sp.unlock();
+
+ return true;
+ }
+ else
+ {
+ shared_ptr<T> tmp( *p );
+
+ sp.unlock();
+
+ tmp.swap( *v );
+ return false;
+ }
+}
+
+template<class T> inline bool atomic_compare_exchange_explicit( shared_ptr<T> * p, shared_ptr<T> * v, shared_ptr<T> w, memory_order /*success*/, memory_order /*failure*/ )
+{
+ return atomic_compare_exchange( p, v, w ); // std::move( w )
+}
+
+#endif
+
 } // namespace boost
 
 #ifdef BOOST_MSVC
 # pragma warning(pop)
-#endif
+#endif
 
 #endif // #if defined(BOOST_NO_MEMBER_TEMPLATES) && !defined(BOOST_MSVC6_MEMBER_TEMPLATES)
 

Modified: branches/CMake/release/boost/spirit/actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/assign_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/assign_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/assign_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ASSIGN_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ASSIGN_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_assign_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_assign_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/assign_key_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/assign_key_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/assign_key_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ASSIGN_KEY_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ASSIGN_KEY_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_assign_key_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_assign_key_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/clear_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/clear_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/clear_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CLEAR_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CLEAR_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_clear_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_clear_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/decrement_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/decrement_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/decrement_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_DECREMENT_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_DECREMENT_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_decrement_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_decrement_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/erase_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/erase_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/erase_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ERASE_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ERASE_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_erase_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_erase_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/increment_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/increment_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/increment_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_INCREMENT_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_INCREMENT_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_increment_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_increment_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/insert_at_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/insert_at_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/insert_at_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_INSERT_AT_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_INSERT_AT_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_insert_at_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_insert_at_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/insert_key_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/insert_key_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/insert_key_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_INSERT_KEY_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_INSERT_KEY_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_insert_key_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_insert_key_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/push_back_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/push_back_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/push_back_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PUSH_BACK_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PUSH_BACK_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_push_back_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_push_back_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/push_front_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/push_front_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/push_front_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PUSH_FRONT_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PUSH_FRONT_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_push_front_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_push_front_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/ref_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/ref_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/ref_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_REF_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_REF_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_ref_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_ref_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/ref_const_ref_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/ref_const_ref_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/ref_const_ref_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_REF_CONST_REF_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_REF_CONST_REF_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_ref_const_ref_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_ref_const_ref_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/ref_const_ref_const_ref_a.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/ref_const_ref_const_ref_a.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/ref_const_ref_const_ref_a.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_REF_CONST_REF_CONST_REF_A
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_REF_CONST_REF_CONST_REF_A
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_ref_const_ref_const_ref_a.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_ref_const_ref_const_ref_a.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/ref_const_ref_value_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/ref_const_ref_value_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/ref_const_ref_value_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_REF_CONST_REF_VALUE_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_REF_CONST_REF_VALUE_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_ref_const_ref_value_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_ref_const_ref_value_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/ref_value_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/ref_value_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/ref_value_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_REF_VALUE_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_REF_VALUE_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_ref_value_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_ref_value_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/swap_actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/swap_actor.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/swap_actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SWAP_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SWAP_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_swap_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_swap_actor.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/actor/typeof.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/actor/typeof.hpp (original)
+++ branches/CMake/release/boost/spirit/actor/typeof.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/attribute.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/attribute.hpp (original)
+++ branches/CMake/release/boost/spirit/attribute.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ATTRIBUTE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ATTRIBUTE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_attribute.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_attribute.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/attribute/closure.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/attribute/closure.hpp (original)
+++ branches/CMake/release/boost/spirit/attribute/closure.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CLOSURE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CLOSURE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_closure.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_closure.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/attribute/closure_context.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/attribute/closure_context.hpp (original)
+++ branches/CMake/release/boost/spirit/attribute/closure_context.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CLOSURE_CONTEXT
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CLOSURE_CONTEXT
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_closure_context.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_closure_context.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/attribute/closure_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/attribute/closure_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/attribute/closure_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CLOSURE_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CLOSURE_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_closure_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_closure_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/attribute/parametric.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/attribute/parametric.hpp (original)
+++ branches/CMake/release/boost/spirit/attribute/parametric.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PARAMETRIC
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PARAMETRIC
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_parametric.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_parametric.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/attribute/typeof.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/attribute/typeof.hpp (original)
+++ branches/CMake/release/boost/spirit/attribute/typeof.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core.hpp (original)
+++ branches/CMake/release/boost/spirit/core.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CORE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CORE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_core.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_core.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/assert.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/assert.hpp (original)
+++ branches/CMake/release/boost/spirit/core/assert.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ASSERT
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ASSERT
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_assert.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_assert.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/actions.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/actions.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/actions.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ACTIONS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ACTIONS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_actions.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_actions.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/alternative.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/alternative.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/alternative.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ALTERNATIVE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ALTERNATIVE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_alternative.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_alternative.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/composite.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/composite.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/composite.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_COMPOSITE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_COMPOSITE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_composite.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_composite.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/difference.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/difference.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/difference.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_DIFFERENCE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_DIFFERENCE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_difference.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_difference.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/directives.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/directives.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/directives.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_DIRECTIVES
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_DIRECTIVES
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_directives.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_directives.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/epsilon.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/epsilon.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/epsilon.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_EPSILON
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_EPSILON
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_epsilon.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_epsilon.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/exclusive_or.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/exclusive_or.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/exclusive_or.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_EXCLUSIVE_OR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_EXCLUSIVE_OR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_exclusive_or.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_exclusive_or.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/intersection.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/intersection.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/intersection.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_INTERSECTION
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_INTERSECTION
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_intersection.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_intersection.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/kleene_star.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/kleene_star.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/kleene_star.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_KLEENE_STAR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_KLEENE_STAR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_kleene_star.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_kleene_star.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/list.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/list.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/list.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_LIST
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_LIST
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_list.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_list.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/no_actions.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/no_actions.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/no_actions.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_NO_ACTIONS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_NO_ACTIONS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_no_actions.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_no_actions.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/operators.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/operators.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/operators.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_OPERATORS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_OPERATORS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_operators.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_operators.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/optional.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/optional.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/optional.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_OPTIONAL
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_OPTIONAL
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_optional.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_optional.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/positive.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/positive.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/positive.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_POSITIVE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_POSITIVE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_positive.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_positive.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/sequence.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/sequence.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/sequence.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SEQUENCE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SEQUENCE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_sequence.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_sequence.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/sequential_and.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/sequential_and.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/sequential_and.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SEQUENTIAL_AND
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SEQUENTIAL_AND
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_sequential_and.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_sequential_and.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/composite/sequential_or.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/composite/sequential_or.hpp (original)
+++ branches/CMake/release/boost/spirit/core/composite/sequential_or.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SEQUENTIAL_OR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SEQUENTIAL_OR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_sequential_or.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_sequential_or.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/config.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/config.hpp (original)
+++ branches/CMake/release/boost/spirit/core/config.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CONFIG
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CONFIG
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_config.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_config.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/match.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/match.hpp (original)
+++ branches/CMake/release/boost/spirit/core/match.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_MATCH
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_MATCH
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_match.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_match.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/nil.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/nil.hpp (original)
+++ branches/CMake/release/boost/spirit/core/nil.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_NIL
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_NIL
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_nil.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_nil.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/non_terminal/grammar.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/non_terminal/grammar.hpp (original)
+++ branches/CMake/release/boost/spirit/core/non_terminal/grammar.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_GRAMMAR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_GRAMMAR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_grammar.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_grammar.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/non_terminal/parser_context.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/non_terminal/parser_context.hpp (original)
+++ branches/CMake/release/boost/spirit/core/non_terminal/parser_context.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSER_CONTEXT
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSER_CONTEXT
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_parser_context.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_parser_context.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/non_terminal/parser_id.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/non_terminal/parser_id.hpp (original)
+++ branches/CMake/release/boost/spirit/core/non_terminal/parser_id.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSER_ID
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSER_ID
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_parser_id.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_parser_id.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/non_terminal/rule.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/non_terminal/rule.hpp (original)
+++ branches/CMake/release/boost/spirit/core/non_terminal/rule.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_RULE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_RULE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_rule.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_rule.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/non_terminal/subrule.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/non_terminal/subrule.hpp (original)
+++ branches/CMake/release/boost/spirit/core/non_terminal/subrule.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SUBRULE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SUBRULE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_subrule.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_subrule.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/non_terminal/subrule_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/non_terminal/subrule_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/core/non_terminal/subrule_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SUBRULE_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SUBRULE_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_subrule_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_subrule_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/parser.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/parser.hpp (original)
+++ branches/CMake/release/boost/spirit/core/parser.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSER
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSER
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_parser.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_parser.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/primitives/numerics.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/primitives/numerics.hpp (original)
+++ branches/CMake/release/boost/spirit/core/primitives/numerics.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_NUMERICS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_NUMERICS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_numerics.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_numerics.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/primitives/numerics_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/primitives/numerics_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/core/primitives/numerics_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_NUMERICS_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_NUMERICS_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_numerics_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_numerics_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/primitives/primitives.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/primitives/primitives.hpp (original)
+++ branches/CMake/release/boost/spirit/core/primitives/primitives.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PRIMITIVES
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PRIMITIVES
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_primitives.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_primitives.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/safe_bool.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/safe_bool.hpp (original)
+++ branches/CMake/release/boost/spirit/core/safe_bool.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SAFE_BOOL
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SAFE_BOOL
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_safe_bool.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_safe_bool.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/scanner/scanner.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/scanner/scanner.hpp (original)
+++ branches/CMake/release/boost/spirit/core/scanner/scanner.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SCANNER
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SCANNER
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_scanner.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_scanner.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/scanner/scanner_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/scanner/scanner_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/core/scanner/scanner_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SCANNER_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SCANNER_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_scanner_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_scanner_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/scanner/skipper.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/scanner/skipper.hpp (original)
+++ branches/CMake/release/boost/spirit/core/scanner/skipper.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SKIPPER
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SKIPPER
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_skipper.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_skipper.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/scanner/skipper_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/scanner/skipper_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/core/scanner/skipper_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SKIPPER_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SKIPPER_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_skipper_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_skipper_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/core/typeof.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/core/typeof.hpp (original)
+++ branches/CMake/release/boost/spirit/core/typeof.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/debug.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/debug.hpp (original)
+++ branches/CMake/release/boost/spirit/debug.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_DEBUG
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_DEBUG
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_debug.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_debug.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/debug/debug_node.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/debug/debug_node.hpp (original)
+++ branches/CMake/release/boost/spirit/debug/debug_node.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_DEBUG_NODE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_DEBUG_NODE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_debug_node.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_debug_node.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/debug/minimal.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/debug/minimal.hpp (original)
+++ branches/CMake/release/boost/spirit/debug/minimal.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_MINIMAL
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_MINIMAL
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_minimal.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_minimal.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/debug/parser_names.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/debug/parser_names.hpp (original)
+++ branches/CMake/release/boost/spirit/debug/parser_names.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSER_NAMES
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSER_NAMES
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_parser_names.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_parser_names.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/debug/typeof.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/debug/typeof.hpp (original)
+++ branches/CMake/release/boost/spirit/debug/typeof.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_DYNAMIC
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_DYNAMIC
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_dynamic.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_dynamic.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic/for.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic/for.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic/for.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_FOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_FOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_for.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_for.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic/if.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic/if.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic/if.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_IF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_IF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_if.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_if.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic/lazy.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic/lazy.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic/lazy.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_LAZY
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_LAZY
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_lazy.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_lazy.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic/rule_alias.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic/rule_alias.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic/rule_alias.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_RULE_ALIAS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_RULE_ALIAS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_rule_alias.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_rule_alias.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic/select.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic/select.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic/select.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SELECT
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SELECT
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_select.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_select.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic/stored_rule.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic/stored_rule.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic/stored_rule.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_STORED_RULE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_STORED_RULE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_stored_rule.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_stored_rule.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic/stored_rule_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic/stored_rule_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic/stored_rule_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_STORED_RULE_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_STORED_RULE_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_stored_rule_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_stored_rule_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic/switch.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic/switch.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic/switch.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SWITCH
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SWITCH
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_switch.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_switch.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic/typeof.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic/typeof.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic/typeof.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/dynamic/while.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/dynamic/while.hpp (original)
+++ branches/CMake/release/boost/spirit/dynamic/while.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_WHILE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_WHILE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_while.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_while.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/error_handling.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/error_handling.hpp (original)
+++ branches/CMake/release/boost/spirit/error_handling.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ERROR_HANDLING
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ERROR_HANDLING
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_error_handling.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_error_handling.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/error_handling/exceptions.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/error_handling/exceptions.hpp (original)
+++ branches/CMake/release/boost/spirit/error_handling/exceptions.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_EXCEPTIONS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_EXCEPTIONS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_exceptions.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_exceptions.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/error_handling/exceptions_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/error_handling/exceptions_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/error_handling/exceptions_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_EXCEPTIONS_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_EXCEPTIONS_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_exceptions_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_exceptions_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/error_handling/typeof.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/error_handling/typeof.hpp (original)
+++ branches/CMake/release/boost/spirit/error_handling/typeof.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/home/classic/core/non_terminal/impl/static.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/classic/core/non_terminal/impl/static.hpp (original)
+++ branches/CMake/release/boost/spirit/home/classic/core/non_terminal/impl/static.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -42,29 +42,33 @@
     struct static_
         : boost::noncopyable
     {
- typedef T value_type;
- typedef typename boost::call_traits<T>::reference reference;
- typedef typename boost::call_traits<T>::const_reference const_reference;
+ private:
 
- static_(Tag = Tag())
+ struct destructor
         {
- struct destructor
+ ~destructor()
             {
- ~destructor()
- {
- static_::get_address()->~value_type();
- }
- };
+ static_::get_address()->~value_type();
+ }
+ };
 
- struct default_ctor
+ struct default_ctor
+ {
+ static void construct()
             {
- static void construct()
- {
- ::new (static_::get_address()) value_type();
- static destructor d;
- }
- };
+ ::new (static_::get_address()) value_type();
+ static destructor d;
+ }
+ };
+
+ public:
 
+ typedef T value_type;
+ typedef typename boost::call_traits<T>::reference reference;
+ typedef typename boost::call_traits<T>::const_reference const_reference;
+
+ static_(Tag = Tag())
+ {
             boost::call_once(&default_ctor::construct, constructed_);
         }
 

Modified: branches/CMake/release/boost/spirit/home/classic/tree/impl/tree_to_xml.ipp
==============================================================================
--- branches/CMake/release/boost/spirit/home/classic/tree/impl/tree_to_xml.ipp (original)
+++ branches/CMake/release/boost/spirit/home/classic/tree/impl/tree_to_xml.ipp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -15,6 +15,7 @@
 #include <cstdarg>
 #include <locale>
 #include <string>
+#include <cstring>
 
 #include <map>
 #include <iostream>
@@ -24,7 +25,7 @@
 #ifdef BOOST_NO_STRINGSTREAM
 #include <strstream>
 #define BOOST_SPIRIT_OSSTREAM std::ostrstream
-inline
+inline
 std::string BOOST_SPIRIT_GETSTRING(std::ostrstream& ss)
 {
     ss << std::ends;
@@ -45,32 +46,32 @@
 namespace impl {
 
     ///////////////////////////////////////////////////////////////////////////
- template <typename CharT>
+ template <typename CharT>
     struct string_lit;
-
- template <>
+
+ template <>
     struct string_lit<char>
     {
         static char get(char c) { return c; }
         static std::string get(char const* str = "") { return str; }
     };
 
- template <>
+ template <>
     struct string_lit<wchar_t>
     {
- static wchar_t get(char c)
- {
+ static wchar_t get(char c)
+ {
             typedef std::ctype<wchar_t> ctype_t;
- return std::use_facet<ctype_t>(std::locale()).widen(c);
+ return std::use_facet<ctype_t>(std::locale()).widen(c);
         }
- static std::basic_string<wchar_t> get(char const* source = "")
- {
+ static std::basic_string<wchar_t> get(char const* source = "")
+ {
             using namespace std; // some systems have size_t in ns std
             size_t len = strlen(source);
             std::auto_ptr<wchar_t> result (new wchar_t[len+1]);
             result.get()[len] = '\0';
 
- // working with wide character streams is supported only if the
+ // working with wide character streams is supported only if the
             // platform provides the std::ctype<wchar_t> facet
             BOOST_ASSERT(std::has_facet<std::ctype<wchar_t> >(std::locale()));
 
@@ -126,8 +127,8 @@
         {
         }
 
- attribute (std::basic_string<CharT> const& key_,
- std::basic_string<CharT> const& value_)
+ attribute (std::basic_string<CharT> const& key_,
+ std::basic_string<CharT> const& value_)
           : key (key_), value(value_)
         {
         }
@@ -147,8 +148,8 @@
     {
         if (0 == attr.key.size())
             return ostrm;
- ostrm << impl::string_lit<CharT>::get(" ") << encode(attr.key)
- << impl::string_lit<CharT>::get("=\"") << encode(attr.value)
+ ostrm << impl::string_lit<CharT>::get(" ") << encode(attr.key)
+ << impl::string_lit<CharT>::get("=\"") << encode(attr.value)
               << impl::string_lit<CharT>::get("\"");
         return ostrm;
     }
@@ -158,7 +159,7 @@
     class element
     {
     protected:
- element(std::basic_ostream<CharT> &ostrm_, bool incr_indent_ = true)
+ element(std::basic_ostream<CharT> &ostrm_, bool incr_indent_ = true)
         : ostrm(ostrm_), incr_indent(incr_indent_)
         {
             if (incr_indent) ++get_indent();
@@ -192,29 +193,29 @@
     class node : public element<CharT>
     {
     public:
- node (std::basic_ostream<CharT> &ostrm_,
- std::basic_string<CharT> const& tag_, attribute<CharT> &attr)
+ node (std::basic_ostream<CharT> &ostrm_,
+ std::basic_string<CharT> const& tag_, attribute<CharT> &attr)
         : element<CharT>(ostrm_), tag(tag_)
         {
             this->output_space();
- this->ostrm
- << impl::string_lit<CharT>::get("<") << tag_ << attr
+ this->ostrm
+ << impl::string_lit<CharT>::get("<") << tag_ << attr
                   << impl::string_lit<CharT>::get(">\n");
         }
- node (std::basic_ostream<CharT> &ostrm_,
- std::basic_string<CharT> const& tag_)
+ node (std::basic_ostream<CharT> &ostrm_,
+ std::basic_string<CharT> const& tag_)
         : element<CharT>(ostrm_), tag(tag_)
         {
             this->output_space();
- this->ostrm
- << impl::string_lit<CharT>::get("<") << tag_
+ this->ostrm
+ << impl::string_lit<CharT>::get("<") << tag_
                   << impl::string_lit<CharT>::get(">\n");
         }
         ~node()
         {
             this->output_space();
- this->ostrm
- << impl::string_lit<CharT>::get("</") << tag
+ this->ostrm
+ << impl::string_lit<CharT>::get("</") << tag
                   << impl::string_lit<CharT>::get(">\n");
         }
 
@@ -226,44 +227,44 @@
     class text : public element<CharT>
     {
     public:
- text (std::basic_ostream<CharT> &ostrm_,
- std::basic_string<CharT> const& tag,
- std::basic_string<CharT> const& textlit)
+ text (std::basic_ostream<CharT> &ostrm_,
+ std::basic_string<CharT> const& tag,
+ std::basic_string<CharT> const& textlit)
         : element<CharT>(ostrm_)
         {
             this->output_space();
- this->ostrm
- << impl::string_lit<CharT>::get("<") << tag
+ this->ostrm
+ << impl::string_lit<CharT>::get("<") << tag
                   << impl::string_lit<CharT>::get(">") << encode(textlit)
- << impl::string_lit<CharT>::get("</") << tag
+ << impl::string_lit<CharT>::get("</") << tag
                   << impl::string_lit<CharT>::get(">\n");
         }
 
- text (std::basic_ostream<CharT> &ostrm_,
- std::basic_string<CharT> const& tag,
- std::basic_string<CharT> const& textlit,
- attribute<CharT> &attr)
+ text (std::basic_ostream<CharT> &ostrm_,
+ std::basic_string<CharT> const& tag,
+ std::basic_string<CharT> const& textlit,
+ attribute<CharT> &attr)
         : element<CharT>(ostrm_)
         {
             this->output_space();
- this->ostrm
- << impl::string_lit<CharT>::get("<") << tag << attr
+ this->ostrm
+ << impl::string_lit<CharT>::get("<") << tag << attr
                   << impl::string_lit<CharT>::get(">") << encode(textlit)
- << impl::string_lit<CharT>::get("</") << tag
+ << impl::string_lit<CharT>::get("</") << tag
                   << impl::string_lit<CharT>::get(">\n");
         }
 
- text (std::basic_ostream<CharT> &ostrm_,
- std::basic_string<CharT> const& tag,
- std::basic_string<CharT> const& textlit,
- attribute<CharT> &attr1, attribute<CharT> &attr2)
+ text (std::basic_ostream<CharT> &ostrm_,
+ std::basic_string<CharT> const& tag,
+ std::basic_string<CharT> const& textlit,
+ attribute<CharT> &attr1, attribute<CharT> &attr2)
         : element<CharT>(ostrm_)
         {
             this->output_space();
- this->ostrm
- << impl::string_lit<CharT>::get("<") << tag << attr1 << attr2
+ this->ostrm
+ << impl::string_lit<CharT>::get("<") << tag << attr1 << attr2
                   << impl::string_lit<CharT>::get(">") << encode(textlit)
- << impl::string_lit<CharT>::get("</") << tag
+ << impl::string_lit<CharT>::get("</") << tag
                   << impl::string_lit<CharT>::get(">\n");
         }
     };
@@ -273,15 +274,15 @@
     class comment : public element<CharT>
     {
     public:
- comment (std::basic_ostream<CharT> &ostrm_,
- std::basic_string<CharT> const& commentlit)
+ comment (std::basic_ostream<CharT> &ostrm_,
+ std::basic_string<CharT> const& commentlit)
         : element<CharT>(ostrm_, false)
         {
             if ('\0' != commentlit[0])
             {
                 this->output_space();
- this->ostrm << impl::string_lit<CharT>::get("<!-- ")
- << encode(commentlit)
+ this->ostrm << impl::string_lit<CharT>::get("<!-- ")
+ << encode(commentlit)
                       << impl::string_lit<CharT>::get(" -->\n");
             }
         }
@@ -292,7 +293,7 @@
     class document : public element<CharT>
     {
     public:
- document (std::basic_ostream<CharT> &ostrm_)
+ document (std::basic_ostream<CharT> &ostrm_)
         : element<CharT>(ostrm_)
         {
             this->get_indent() = -1;
@@ -300,9 +301,9 @@
                 "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n");
         }
 
- document (std::basic_ostream<CharT> &ostrm_,
- std::basic_string<CharT> const& mainnode,
- std::basic_string<CharT> const& dtd)
+ document (std::basic_ostream<CharT> &ostrm_,
+ std::basic_string<CharT> const& mainnode,
+ std::basic_string<CharT> const& dtd)
         : element<CharT>(ostrm_)
         {
             this->get_indent() = -1;
@@ -310,7 +311,7 @@
                 "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n");
 
             this->output_space();
- this->ostrm << impl::string_lit<CharT>::get("<!DOCTYPE ") << mainnode
+ this->ostrm << impl::string_lit<CharT>::get("<!DOCTYPE ") << mainnode
                   << impl::string_lit<CharT>::get(" SYSTEM \"") << dtd
                   << impl::string_lit<CharT>::get("\">\n");
         }
@@ -324,7 +325,7 @@
 
 namespace impl {
 
- ///////////////////////////////////////////////////////////////////////////
+ ///////////////////////////////////////////////////////////////////////////
     // look up the rule name from the given parser_id
     template <typename AssocContainerT>
     inline typename AssocContainerT::value_type::second_type
@@ -343,23 +344,23 @@
         typename CharT, typename IteratorT, typename GetIdT, typename GetValueT
>
     inline void
- token_to_xml (std::basic_ostream<CharT> &ostrm, IteratorT const &it,
+ token_to_xml (std::basic_ostream<CharT> &ostrm, IteratorT const &it,
         bool is_root, GetIdT const &get_token_id, GetValueT const &get_token_value)
     {
         BOOST_SPIRIT_OSSTREAM stream;
 
         stream << get_token_id(*it) << std::ends;
         xml::attribute<CharT> token_id (
- impl::string_lit<CharT>::get("id"),
+ impl::string_lit<CharT>::get("id"),
                 BOOST_SPIRIT_GETSTRING(stream).c_str());
         xml::attribute<CharT> is_root_attr (
- impl::string_lit<CharT>::get("is_root"),
+ impl::string_lit<CharT>::get("is_root"),
                 impl::string_lit<CharT>::get(is_root ? "1" : ""));
         xml::attribute<CharT> nil;
- xml::text<CharT>(ostrm,
- impl::string_lit<CharT>::get("token"),
+ xml::text<CharT>(ostrm,
+ impl::string_lit<CharT>::get("token"),
                 get_token_value(*it).c_str(),
- token_id,
+ token_id,
                 is_root_attr.has_value() ? is_root_attr : nil);
     }
 
@@ -385,7 +386,7 @@
             xml::attribute<CharT> id (
                 impl::string_lit<CharT>::get("rule"),
                 get_rulename(id_to_name_map, (*it).value.id()).c_str());
- xml::node<CharT> currnode (ostrm,
+ xml::node<CharT> currnode (ostrm,
                 impl::string_lit<CharT>::get("parsenode"),
                 (*it).value.id() != 0 && id.has_value() ? id : nil);
 
@@ -399,7 +400,7 @@
             }
             else if (cnt > 1)
             {
- xml::node<CharT> value (ostrm,
+ xml::node<CharT> value (ostrm,
                         impl::string_lit<CharT>::get("value"));
                 bool is_root = (*it).value.is_root();
 
@@ -431,7 +432,7 @@
             xml::attribute<CharT> id (
                 impl::string_lit<CharT>::get("rule"),
                 get_rulename(id_to_name_map, (*it).value.id()).c_str());
- xml::node<CharT> currnode (ostrm,
+ xml::node<CharT> currnode (ostrm,
                 impl::string_lit<CharT>::get("parsenode"),
                 (*it).value.id() != parser_id() && id.has_value() ? id : nil);
 
@@ -446,7 +447,7 @@
                     xml::attribute<CharT> is_root (
                         impl::string_lit<CharT>::get("is_root"),
                         impl::string_lit<CharT>::get((*it).value.is_root() ? "1" : ""));
- xml::text<CharT>(ostrm,
+ xml::text<CharT>(ostrm,
                         impl::string_lit<CharT>::get("value"), tokens.c_str(),
                         is_root.has_value() ? is_root : nil);
                 }
@@ -471,14 +472,14 @@
         GetIdT const &get_token_id, GetValueT const &get_token_value)
 {
     // generate xml dump
- xml::document<CharT> doc (ostrm,
- impl::string_lit<CharT>::get("parsetree"),
+ xml::document<CharT> doc (ostrm,
+ impl::string_lit<CharT>::get("parsetree"),
             impl::string_lit<CharT>::get("parsetree.dtd"));
     xml::comment<CharT> input (ostrm, input_line.c_str());
     xml::attribute<CharT> ver (
- impl::string_lit<CharT>::get("version"),
+ impl::string_lit<CharT>::get("version"),
             impl::string_lit<CharT>::get("1.0"));
- xml::node<CharT> mainnode (ostrm,
+ xml::node<CharT> mainnode (ostrm,
             impl::string_lit<CharT>::get("parsetree"), ver);
 
     impl::tree_node_to_xml (ostrm, tree, id_to_name, get_token_id,
@@ -489,18 +490,18 @@
 template <typename CharT, typename TreeNodeT, typename AssocContainerT>
 inline void
 basic_tree_to_xml (std::basic_ostream<CharT> &ostrm, TreeNodeT const &tree,
- std::basic_string<CharT> const &input_line,
+ std::basic_string<CharT> const &input_line,
         AssocContainerT const& id_to_name)
 {
     // generate xml dump
- xml::document<CharT> doc (ostrm,
- impl::string_lit<CharT>::get("parsetree"),
+ xml::document<CharT> doc (ostrm,
+ impl::string_lit<CharT>::get("parsetree"),
             impl::string_lit<CharT>::get("parsetree.dtd"));
     xml::comment<CharT> input (ostrm, input_line.c_str());
     xml::attribute<CharT> ver (
- impl::string_lit<CharT>::get("version"),
+ impl::string_lit<CharT>::get("version"),
             impl::string_lit<CharT>::get("1.0"));
- xml::node<CharT> mainnode (ostrm,
+ xml::node<CharT> mainnode (ostrm,
             impl::string_lit<CharT>::get("parsetree"), ver);
 
     impl::tree_node_to_xml(ostrm, tree, id_to_name);

Modified: branches/CMake/release/boost/spirit/home/karma/action/action.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/action/action.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/action/action.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -49,7 +49,7 @@
                 result_of::left<Component>::type::director
             director;
             typedef typename is_same<director, sequence>::type is_sequence;
-
+
             typedef typename
                 attribute<Component, Context, unused_type>::type
             param_type;
@@ -65,8 +65,7 @@
 
             // call the function, passing the parameter, the context
             // and a bool flag that the client can set to false to
- // fail parsing.
- // call the function, passing the attribute, the context.
+ // fail generating.
             // The client can return false to fail parsing.
             bool pass = spirit::detail::action_dispatch(
                 spirit::right(component), p, ctx, is_sequence());
@@ -75,13 +74,13 @@
                 director::generate(spirit::left(component), sink, ctx, d, p);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             typedef typename
                 spirit::result_of::left<Component>::type::director
             director;
- return director::what(spirit::left(component));
+ return director::what(spirit::left(component), ctx);
         }
     };
 

Modified: branches/CMake/release/boost/spirit/home/karma/auxiliary.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/auxiliary.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/auxiliary.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,6 +8,7 @@
 
 #include <boost/spirit/home/karma/auxiliary/none.hpp>
 #include <boost/spirit/home/karma/auxiliary/eps.hpp>
+#include <boost/spirit/home/karma/auxiliary/eol.hpp>
 #include <boost/spirit/home/karma/auxiliary/lazy.hpp>
 #include <boost/spirit/home/karma/auxiliary/functor.hpp>
 #include <boost/spirit/home/karma/auxiliary/functor_director.hpp>

Modified: branches/CMake/release/boost/spirit/home/karma/auxiliary/eps.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/auxiliary/eps.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/auxiliary/eps.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_EPS_APRIL_21_2007_0246PM)
@@ -21,18 +21,18 @@
             typedef unused_type type;
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& /*component*/, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
+ static bool
+ generate(Component const& /*component*/, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
         {
             karma::delimit(sink, d);
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "eps";
         }
@@ -46,18 +46,18 @@
             typedef unused_type type;
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& /*param*/)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& /*param*/)
         {
             karma::delimit(sink, d);
             return fusion::at_c<0>(component.elements)(unused, ctx);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "semantic-predicate";
         }

Modified: branches/CMake/release/boost/spirit/home/karma/auxiliary/functor_director.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/auxiliary/functor_director.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/auxiliary/functor_director.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -41,8 +41,8 @@
             return result;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "functor";
         }

Modified: branches/CMake/release/boost/spirit/home/karma/auxiliary/lazy.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/auxiliary/lazy.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/auxiliary/lazy.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -74,8 +74,8 @@
                 generate(subject, sink, ctx, d, param);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "lazy[";
             // FIXME: need to get at the what of the embedded component

Modified: branches/CMake/release/boost/spirit/home/karma/auxiliary/meta_grammar.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/auxiliary/meta_grammar.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/auxiliary/meta_grammar.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -24,6 +24,7 @@
     ///////////////////////////////////////////////////////////////////////////
     struct none;
     struct eps_generator;
+ struct eol_generator;
     struct semantic_predicate;
     struct lazy_generator;
     struct functor_director;
@@ -45,6 +46,8 @@
                 karma::domain, tag::none, none>,
             meta_grammar::empty_terminal_rule<
                 karma::domain, tag::eps, eps_generator>,
+ meta_grammar::empty_terminal_rule<
+ karma::domain, tag::eol, eol_generator>,
             meta_grammar::function1_rule<
                 karma::domain, tag::eps, semantic_predicate>,
             meta_grammar::function1_rule<

Modified: branches/CMake/release/boost/spirit/home/karma/auxiliary/none.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/auxiliary/none.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/auxiliary/none.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -30,8 +30,8 @@
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "none";
         }

Modified: branches/CMake/release/boost/spirit/home/karma/binary/binary.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/binary/binary.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/binary/binary.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -136,8 +136,8 @@
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return karma::detail::what<endian>::is();
         }
@@ -173,8 +173,8 @@
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return karma::detail::what<endian>::is();
         }

Modified: branches/CMake/release/boost/spirit/home/karma/binary/padding.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/binary/padding.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/binary/padding.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,8 @@
 #if !defined(BOOST_SPIRIT_KARMA_PADDING_MAY_06_2008_0436PM)
 #define BOOST_SPIRIT_KARMA_PADDING_MAY_06_2008_0436PM
 
+#include <boost/lexical_cast.hpp>
+
 #include <boost/spirit/home/karma/domain.hpp>
 #include <boost/spirit/home/karma/delimit.hpp>
 #include <boost/spirit/home/support/unused.hpp>
@@ -42,8 +44,8 @@
             return result;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return std::string("pad(") +
                 boost::lexical_cast<std::string>(

Modified: branches/CMake/release/boost/spirit/home/karma/char/char.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/char/char.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/char/char.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_CHAR_FEB_21_2007_0543PM)
@@ -24,13 +24,13 @@
 #include <boost/fusion/include/cons.hpp>
 #include <boost/utility/enable_if.hpp>
 
-namespace boost { namespace spirit { namespace karma
-{
+namespace boost { namespace spirit { namespace karma
+{
     ///////////////////////////////////////////////////////////////////////////
     //
- // any_char
+ // any_char
     // generates a single character from the associated parameter
- //
+ //
     // Note: this generator has to have an associated parameter
     //
     ///////////////////////////////////////////////////////////////////////////
@@ -44,31 +44,31 @@
         };
 
         // any_char has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const&, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const&, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& param)
         {
             detail::generate_to(sink, param);
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return true;
         }
 
- // this any_char has no parameter attached, it needs to have been
+ // this any_char has no parameter attached, it needs to have been
         // initialized from a direct literal
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter>
- static bool
- generate(Component const&, OutputIterator&, Context&, Delimiter const&,
- unused_type)
+ static bool
+ generate(Component const&, OutputIterator&, Context&, Delimiter const&,
+ unused_type)
         {
             BOOST_MPL_ASSERT_MSG(false, char__not_usable_without_parameter, ());
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "any-char";
         }
@@ -76,13 +76,13 @@
 
     ///////////////////////////////////////////////////////////////////////////
     //
- // literal_char
+ // literal_char
     // generates a single character given by a literal it was initialized
     // from
     //
     ///////////////////////////////////////////////////////////////////////////
     template <typename Char>
- struct literal_char
+ struct literal_char
     {
         template <typename Component, typename Context, typename Unused>
         struct attribute
@@ -91,19 +91,19 @@
         };
 
         // any_char has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
         {
             detail::generate_to(sink, fusion::at_c<0>(component.elements));
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return std::string("'")
                 + spirit::detail::to_narrow_char(
@@ -114,12 +114,12 @@
 
     ///////////////////////////////////////////////////////////////////////////
     //
- // lazy_char
- // generates a single character given by a functor it was initialized
+ // lazy_char
+ // generates a single character given by a functor it was initialized
     // from
     //
     ///////////////////////////////////////////////////////////////////////////
- struct lazy_char
+ struct lazy_char
     {
         template <typename Component, typename Context, typename Unused>
         struct attribute
@@ -128,20 +128,20 @@
         };
 
         // any_char has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& /*param*/)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& /*param*/)
         {
- detail::generate_to(sink,
+ detail::generate_to(sink,
                 fusion::at_c<0>(component.elements)(unused, ctx));
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "char";
         }
@@ -154,7 +154,7 @@
     //
     ///////////////////////////////////////////////////////////////////////////
     template <typename Char, typename Tag>
- struct case_any_char
+ struct case_any_char
     {
         template <typename Component, typename Context, typename Unused>
         struct attribute
@@ -166,42 +166,42 @@
         typedef typename Tag::char_class char_class_;
 
         // case_any_char has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& /*component*/, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& /*component*/, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& param)
         {
             using spirit::char_class::convert;
             Char p = convert<char_set>::to(char_class_(), param);
             detail::generate_to(sink, p);
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return true;
         }
 
- // this case_any_char has no parameter attached, it needs to have been
+ // this case_any_char has no parameter attached, it needs to have been
         // initialized from a direct literal
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter>
- static bool
- generate(Component const&, OutputIterator&, Context&, Delimiter const&,
- unused_type)
+ static bool
+ generate(Component const&, OutputIterator&, Context&, Delimiter const&,
+ unused_type)
         {
             BOOST_MPL_ASSERT_MSG(false, char__not_usable_without_parameter, ());
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result;
- result = std::string("any-") +
- spirit::char_class::what<char_set>::is(char_class_()) +
+ result = std::string("any-") +
+ spirit::char_class::what<char_set>::is(char_class_()) +
                 "case-char";
             return result;
         }
     };
-
+
 }}} // namespace boost::spirit::karma
 
 namespace boost { namespace spirit { namespace traits
@@ -218,20 +218,20 @@
>::type
>
     {
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 0>::type
         char_type;
         typedef fusion::vector<char_type> vector_type;
 
         typedef component<
- karma::domain, karma::literal_char<Char>, vector_type>
+ karma::domain, karma::literal_char<Char>, vector_type>
         type;
-
+
         static type
         call(Elements const& elements)
         {
             typedef typename Modifier::char_set char_set;
-
+
             char_type ch = fusion::at_c<0>(elements);
             vector_type v(char_set::tolower(ch));
             return type(v);
@@ -247,20 +247,20 @@
>::type
>
     {
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 0>::type
         char_type;
         typedef fusion::vector<char_type> vector_type;
 
- typedef
- component<karma::domain, karma::literal_char<Char>, vector_type>
+ typedef
+ component<karma::domain, karma::literal_char<Char>, vector_type>
         type;
-
+
         static type
         call(Elements const& elements)
         {
             typedef typename Modifier::char_set char_set;
-
+
             char_type ch = fusion::at_c<0>(elements);
             vector_type v(char_set::toupper(ch));
             return type(v);
@@ -282,11 +282,11 @@
         typedef typename Modifier::char_set char_set;
         typedef spirit::char_class::tag::lower char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
-
+
         typedef component<
- karma::domain, karma::case_any_char<Char, key_tag>, fusion::nil>
+ karma::domain, karma::case_any_char<Char, key_tag>, fusion::nil>
         type;
-
+
         static type
         call(Elements const&)
         {
@@ -306,11 +306,11 @@
         typedef typename Modifier::char_set char_set;
         typedef spirit::char_class::tag::upper char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
-
+
         typedef component<
- karma::domain, karma::case_any_char<Char, key_tag>, fusion::nil>
+ karma::domain, karma::case_any_char<Char, key_tag>, fusion::nil>
         type;
-
+
         static type
         call(Elements const&)
         {

Modified: branches/CMake/release/boost/spirit/home/karma/char/space.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/char/space.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/char/space.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_SPACE_MAR_06_2007_0934PM)
@@ -20,13 +20,13 @@
 #include <boost/spirit/home/support/standard.hpp>
 #include <boost/spirit/home/support/standard_wide.hpp>
 
-namespace boost { namespace spirit { namespace karma
-{
+namespace boost { namespace spirit { namespace karma
+{
     ///////////////////////////////////////////////////////////////////////////
     //
- // space
+ // space
     // generates a single character from the associated parameter
- //
+ //
     ///////////////////////////////////////////////////////////////////////////
     template <typename Tag, typename Char>
     struct any_space_char
@@ -41,33 +41,33 @@
         typedef typename Tag::char_class char_class_;
 
         // space has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& /*component*/, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& ch)
+ static bool
+ generate(Component const& /*component*/, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& ch)
         {
             using spirit::char_class::classify;
             BOOST_ASSERT(classify<char_set>::is(char_class_(), ch));
             detail::generate_to(sink, ch);
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return true;
         }
 
         // this space has no parameter attached, just generate a single ' '
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter>
- static bool
- generate(Component const&, OutputIterator& sink, Context&,
- Delimiter const& d, unused_type)
+ static bool
+ generate(Component const&, OutputIterator& sink, Context&,
+ Delimiter const& d, unused_type)
         {
             detail::generate_to(sink, ' '); // generate a single space
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "any-space";
         }
@@ -76,7 +76,7 @@
     ///////////////////////////////////////////////////////////////////////////
     //
     // space(...)
- // generates a single space character given by a literal it was
+ // generates a single space character given by a literal it was
     // initialized from
     //
     ///////////////////////////////////////////////////////////////////////////
@@ -90,19 +90,19 @@
         };
 
         // any_char has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
         {
             detail::generate_to(sink, fusion::at_c<0>(component.elements));
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return std::string("space('")
                 + spirit::detail::to_narrow_char(

Modified: branches/CMake/release/boost/spirit/home/karma/directive/center_alignment.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/directive/center_alignment.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/directive/center_alignment.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_CENTER_ALIGNMENT_FEB_27_2007_1216PM)
@@ -18,7 +18,7 @@
 
 ///////////////////////////////////////////////////////////////////////////////
 //
-// The BOOST_KARMA_DEFAULT_FIELD_LENGTH specifies the default field length
+// The BOOST_KARMA_DEFAULT_FIELD_LENGTH specifies the default field length
 // to be used for padding.
 //
 ///////////////////////////////////////////////////////////////////////////////
@@ -26,10 +26,10 @@
 #define BOOST_KARMA_DEFAULT_FIELD_LENGTH 10
 #endif
 
-namespace boost { namespace spirit { namespace karma
+namespace boost { namespace spirit { namespace karma
 {
     ///////////////////////////////////////////////////////////////////////////
- // The simple center alignment directive is used for center[...]
+ // The simple center alignment directive is used for center[...]
     // generators. It uses default values for the generated width (defined via
     // the BOOST_KARMA_DEFAULT_FIELD_LENGTH constant) and for the padding
     // generator (always spaces).
@@ -40,25 +40,25 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::argument1<Component>::type,
+ typename result_of::argument1<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::center_generate(sink, ctx, d, param,
- argument1(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH,
+ return detail::center_generate(sink, ctx, d, param,
+ argument1(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH,
                 spirit::as_component(karma::domain(), ' '));
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "center[";
 
@@ -66,12 +66,12 @@
                 spirit::result_of::argument1<Component>::type::director
             director;
 
- result += director::what(spirit::argument1(component));
+ result += director::what(spirit::argument1(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
     // The center alignment with width directive, is used for generators
     // like center(width)[...]. It uses a default value for the padding
@@ -83,27 +83,27 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::subject<Component>::type,
+ typename result_of::subject<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::center_generate(sink, ctx, d, param,
+ return detail::center_generate(sink, ctx, d, param,
                 subject(component), proto::arg_c<0>(argument1(component)), ' ');
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "center(";
-
+
             result += boost::lexical_cast<std::string>(
                 proto::arg_c<0>(argument1(component)));
             result += ")[";
@@ -112,16 +112,16 @@
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
     // The center alignment directive with padding, is used for generators like
- // center(padding)[...], where padding is a arbitrary generator
- // expression. It uses a default value for the generated width (defined
+ // center(padding)[...], where padding is a arbitrary generator
+ // expression. It uses a default value for the generated width (defined
     // via the BOOST_KARMA_DEFAULT_FIELD_LENGTH constant).
     ///////////////////////////////////////////////////////////////////////////
     struct padding_center_aligment
@@ -130,49 +130,49 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::subject<Component>::type,
+ typename result_of::subject<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::center_generate(sink, ctx, d, param,
- subject(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH,
+ return detail::center_generate(sink, ctx, d, param,
+ subject(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH,
                 argument1(component));
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "center(";
-
+
             typedef typename
                 spirit::result_of::argument1<Component>::type::director
             padding;
 
- result += padding::what(spirit::argument1(component));
+ result += padding::what(spirit::argument1(component), ctx);
             result += ")[";
 
             typedef typename
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
- // The full center alignment directive, is used for generators like
- // center(width, padding)[...], where width is a integer value to be
- // used as the field width and padding is a arbitrary generator
+ // The full center alignment directive, is used for generators like
+ // center(width, padding)[...], where width is a integer value to be
+ // used as the field width and padding is a arbitrary generator
     // expression.
     ///////////////////////////////////////////////////////////////////////////
     struct full_center_aligment
@@ -181,28 +181,28 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::subject<Component>::type,
+ typename result_of::subject<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::center_generate(sink, ctx, d, param,
- subject(component), proto::arg_c<0>(argument1(component)),
+ return detail::center_generate(sink, ctx, d, param,
+ subject(component), proto::arg_c<0>(argument1(component)),
                 argument2(component));
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "center(";
-
+
             result += boost::lexical_cast<std::string>(
                 proto::arg_c<0>(argument1(component)));
             result += ", ";
@@ -211,19 +211,19 @@
                 spirit::result_of::argument2<Component>::type::director
             padding;
 
- result += padding::what(spirit::argument2(component));
+ result += padding::what(spirit::argument2(component), ctx);
             result += ")[";
 
             typedef typename
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
 }}} // namespace boost::spirit::karma
 
 #endif

Modified: branches/CMake/release/boost/spirit/home/karma/directive/delimit.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/directive/delimit.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/directive/delimit.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_DELIMIT_MAR_02_2007_0217PM)
@@ -27,31 +27,31 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::right<Component>::type,
+ typename result_of::right<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& /*d*/, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& /*d*/, Parameter const& param)
         {
- // the delimit_space generator simply dispatches to the embedded
+ // the delimit_space generator simply dispatches to the embedded
             // generator while supplying a single space as the new delimiter
             // to use
- typedef typename
+ typedef typename
                 result_of::right<Component>::type::director
             director;
-
- return director::generate(spirit::right(component),
+
+ return director::generate(spirit::right(component),
                 sink, ctx, spirit::as_component(karma::domain(), ' '), param);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "delimit[";
 
@@ -59,7 +59,7 @@
                 spirit::result_of::right<Component>::type::director
             director;
 
- result += director::what(spirit::right(component));
+ result += director::what(spirit::right(component), ctx);
             result += "]";
             return result;
         }
@@ -74,48 +74,48 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::subject<Component>::type,
+ typename result_of::subject<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& /*d*/, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& /*d*/, Parameter const& param)
         {
- // the delimit generator simply dispatches to the embedded
+ // the delimit generator simply dispatches to the embedded
             // generator while supplying it's argument as the new delimiter
             // to use
- typedef typename
+ typedef typename
                 spirit::result_of::subject<Component>::type::director
             director;
-
- return director::generate(spirit::subject(component), sink, ctx,
+
+ return director::generate(spirit::subject(component), sink, ctx,
                 spirit::as_component(
- karma::domain(), spirit::argument1(component)),
+ karma::domain(), spirit::argument1(component)),
                 param);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "delimit(";
-
+
             typedef typename
                 spirit::result_of::argument1<Component>::type::director
             delimiter;
-
- result += delimiter::what(spirit::argument1(component));
+
+ result += delimiter::what(spirit::argument1(component), ctx);
             result +=")[";
 
             typedef typename
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/karma/directive/left_alignment.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/directive/left_alignment.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/directive/left_alignment.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_LEFT_ALIGNMENT_FEB_27_2007_1216PM)
@@ -18,7 +18,7 @@
 
 ///////////////////////////////////////////////////////////////////////////////
 //
-// The BOOST_KARMA_DEFAULT_FIELD_LENGTH specifies the default field length
+// The BOOST_KARMA_DEFAULT_FIELD_LENGTH specifies the default field length
 // to be used for padding.
 //
 ///////////////////////////////////////////////////////////////////////////////
@@ -26,10 +26,10 @@
 #define BOOST_KARMA_DEFAULT_FIELD_LENGTH 10
 #endif
 
-namespace boost { namespace spirit { namespace karma
+namespace boost { namespace spirit { namespace karma
 {
     ///////////////////////////////////////////////////////////////////////////
- // The simple left alignment directive is used for left_align[...]
+ // The simple left alignment directive is used for left_align[...]
     // generators. It uses default values for the generated width (defined via
     // the BOOST_KARMA_DEFAULT_FIELD_LENGTH constant) and for the padding
     // generator (always spaces).
@@ -37,27 +37,27 @@
     struct simple_left_aligment
     {
         template <typename Component, typename Context, typename Unused>
- struct attribute
+ struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::argument1<Component>::type,
+ typename result_of::argument1<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::left_align_generate(sink, ctx, d, param,
+ return detail::left_align_generate(sink, ctx, d, param,
                 argument1(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH, ' ');
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "left_align[";
 
@@ -65,12 +65,12 @@
                 spirit::result_of::argument1<Component>::type::director
             director;
 
- result += director::what(spirit::argument1(component));
+ result += director::what(spirit::argument1(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
     // The left alignment with width directive, is used for generators
     // like left_align(width)[...]. It uses a default value for the padding
@@ -82,27 +82,27 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::subject<Component>::type,
+ typename result_of::subject<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::left_align_generate(sink, ctx, d, param,
+ return detail::left_align_generate(sink, ctx, d, param,
                 subject(component), proto::arg_c<0>(argument1(component)), ' ');
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "left_align(";
-
+
             result += boost::lexical_cast<std::string>(
                 proto::arg_c<0>(argument1(component)));
             result += ")[";
@@ -111,16 +111,16 @@
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
     // The left alignment directive with padding, is used for generators like
- // left_align(padding)[...], where padding is a arbitrary generator
- // expression. It uses a default value for the generated width (defined
+ // left_align(padding)[...], where padding is a arbitrary generator
+ // expression. It uses a default value for the generated width (defined
     // via the BOOST_KARMA_DEFAULT_FIELD_LENGTH constant).
     ///////////////////////////////////////////////////////////////////////////
     struct padding_left_aligment
@@ -129,49 +129,49 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::subject<Component>::type,
+ typename result_of::subject<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::left_align_generate(sink, ctx, d, param,
- subject(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH,
+ return detail::left_align_generate(sink, ctx, d, param,
+ subject(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH,
                 argument1(component));
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "left_align(";
-
+
             typedef typename
                 spirit::result_of::argument1<Component>::type::director
             padding;
 
- result += padding::what(spirit::argument1(component));
+ result += padding::what(spirit::argument1(component), ctx);
             result += ")[";
 
             typedef typename
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
- // The full left alignment directive, is used for generators like
- // left_align(width, padding)[...], where width is a integer value to be
- // used as the field width and padding is a arbitrary generator
+ // The full left alignment directive, is used for generators like
+ // left_align(width, padding)[...], where width is a integer value to be
+ // used as the field width and padding is a arbitrary generator
     // expression.
     ///////////////////////////////////////////////////////////////////////////
     struct full_left_aligment
@@ -180,28 +180,28 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::subject<Component>::type,
+ typename result_of::subject<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::left_align_generate(sink, ctx, d, param,
- subject(component), proto::arg_c<0>(argument1(component)),
+ return detail::left_align_generate(sink, ctx, d, param,
+ subject(component), proto::arg_c<0>(argument1(component)),
                 argument2(component));
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "left_align(";
-
+
             result += boost::lexical_cast<std::string>(
                 proto::arg_c<0>(argument1(component)));
             result += ", ";
@@ -210,19 +210,19 @@
                 spirit::result_of::argument2<Component>::type::director
             padding;
 
- result += padding::what(spirit::argument2(component));
+ result += padding::what(spirit::argument2(component), ctx);
             result += ")[";
 
             typedef typename
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
 }}} // namespace boost::spirit::karma
 
 #endif

Modified: branches/CMake/release/boost/spirit/home/karma/directive/right_alignment.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/directive/right_alignment.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/directive/right_alignment.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_RIGHT_ALIGNMENT_FEB_27_2007_1216PM)
@@ -18,7 +18,7 @@
 
 ///////////////////////////////////////////////////////////////////////////////
 //
-// The BOOST_KARMA_DEFAULT_FIELD_LENGTH specifies the default field length
+// The BOOST_KARMA_DEFAULT_FIELD_LENGTH specifies the default field length
 // to be used for padding.
 //
 ///////////////////////////////////////////////////////////////////////////////
@@ -26,10 +26,10 @@
 #define BOOST_KARMA_DEFAULT_FIELD_LENGTH 10
 #endif
 
-namespace boost { namespace spirit { namespace karma
+namespace boost { namespace spirit { namespace karma
 {
     ///////////////////////////////////////////////////////////////////////////
- // The simple right alignment directive is used for right_align[...]
+ // The simple right alignment directive is used for right_align[...]
     // generators. It uses default values for the generated width (defined via
     // the BOOST_KARMA_DEFAULT_FIELD_LENGTH constant) and for the padding
     // generator (always spaces).
@@ -40,25 +40,25 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::argument1<Component>::type,
+ typename result_of::argument1<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::right_align_generate(sink, ctx, d, param,
- argument1(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH,
+ return detail::right_align_generate(sink, ctx, d, param,
+ argument1(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH,
                 spirit::as_component(karma::domain(), ' '));
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "right_align[";
 
@@ -66,12 +66,12 @@
                 spirit::result_of::argument1<Component>::type::director
             director;
 
- result += director::what(spirit::argument1(component));
+ result += director::what(spirit::argument1(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
     // The right alignment with width directive, is used for generators
     // like right_align(width)[...]. It uses a default value for the padding
@@ -83,27 +83,27 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::subject<Component>::type,
+ typename result_of::subject<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::right_align_generate(sink, ctx, d, param,
+ return detail::right_align_generate(sink, ctx, d, param,
                 subject(component), proto::arg_c<0>(argument1(component)), ' ');
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "right_align(";
-
+
             result += boost::lexical_cast<std::string>(
                 proto::arg_c<0>(argument1(component)));
             result += ")[";
@@ -112,16 +112,16 @@
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
     // The right alignment directive with padding, is used for generators like
- // right_align(padding)[...], where padding is a arbitrary generator
- // expression. It uses a default value for the generated width (defined
+ // right_align(padding)[...], where padding is a arbitrary generator
+ // expression. It uses a default value for the generated width (defined
     // via the BOOST_KARMA_DEFAULT_FIELD_LENGTH constant).
     ///////////////////////////////////////////////////////////////////////////
     struct padding_right_aligment
@@ -130,49 +130,49 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::subject<Component>::type,
+ typename result_of::subject<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::right_align_generate(sink, ctx, d, param,
- subject(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH,
+ return detail::right_align_generate(sink, ctx, d, param,
+ subject(component), BOOST_KARMA_DEFAULT_FIELD_LENGTH,
                 argument1(component));
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "right_align(";
-
+
             typedef typename
                 spirit::result_of::argument1<Component>::type::director
             padding;
 
- result += padding::what(spirit::argument1(component));
+ result += padding::what(spirit::argument1(component), ctx);
             result += ")[";
 
             typedef typename
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
- // The full right alignment directive, is used for generators like
- // right_align(width, padding)[...], where width is a integer value to be
- // used as the field width and padding is a arbitrary generator
+ // The full right alignment directive, is used for generators like
+ // right_align(width, padding)[...], where width is a integer value to be
+ // used as the field width and padding is a arbitrary generator
     // expression.
     ///////////////////////////////////////////////////////////////////////////
     struct full_right_aligment
@@ -181,28 +181,28 @@
         struct attribute
           : traits::attribute_of<
                 karma::domain,
- typename result_of::subject<Component>::type,
+ typename result_of::subject<Component>::type,
                 Context
>
         {
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& param)
         {
- return detail::right_align_generate(sink, ctx, d, param,
- subject(component), proto::arg_c<0>(argument1(component)),
+ return detail::right_align_generate(sink, ctx, d, param,
+ subject(component), proto::arg_c<0>(argument1(component)),
                 argument2(component));
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "right_align(";
-
+
             result += boost::lexical_cast<std::string>(
                 proto::arg_c<0>(argument1(component)));
             result += ", ";
@@ -211,19 +211,19 @@
                 spirit::result_of::argument2<Component>::type::director
             padding;
 
- result += padding::what(spirit::argument2(component));
+ result += padding::what(spirit::argument2(component), ctx);
             result += ")[";
 
             typedef typename
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }
     };
-
+
 }}} // namespace boost::spirit::karma
 
 #endif

Modified: branches/CMake/release/boost/spirit/home/karma/directive/verbatim.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/directive/verbatim.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/directive/verbatim.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -55,8 +55,8 @@
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "verbatim[";
 
@@ -64,7 +64,7 @@
                 spirit::result_of::right<Component>::type::director
             director;
 
- result += director::what(spirit::right(component));
+ result += director::what(spirit::right(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/karma/nonterminal/grammar.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/nonterminal/grammar.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/nonterminal/grammar.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,7 +8,8 @@
 #define BOOST_SPIRIT_KARMA_GRAMMAR_MAR_05_2007_0542PM
 
 #include <boost/spirit/home/support/unused.hpp>
-#include <boost/spirit/home/support/nonterminal/nonterminal.hpp>
+#include <boost/spirit/home/karma/nonterminal/nonterminal.hpp>
+#include <boost/spirit/home/karma/nonterminal/grammar_fwd.hpp>
 #include <boost/spirit/home/karma/domain.hpp>
 #include <boost/spirit/home/karma/nonterminal/rule.hpp>
 #include <boost/spirit/home/karma/nonterminal/nonterminal_director.hpp>
@@ -17,100 +18,61 @@
 
 namespace boost { namespace spirit { namespace karma
 {
- template <typename Definition>
+ template <typename Iterator, typename T0 , typename T1 , typename T2>
     struct grammar
       : nonterminal<
- grammar<Definition>,
- typename Definition::sig_type,
- typename Definition::locals_type
- >
+ grammar<Iterator, T0, T1, T2>,
+ typename karma::rule<Iterator, T0, T1, T2>::sig_type,
+ typename karma::rule<Iterator, T0, T1, T2>::locals_type
+ >, noncopyable
     {
- typedef typename Definition::sig_type sig_type;
- typedef typename Definition::locals_type locals_type;
- typedef typename Definition::delimiter_type delimiter_type;
- typedef typename Definition::start_type start_type;
- typedef typename Definition::iterator_type iterator_type;
+ typedef Iterator iterator_type;
+ typedef karma::rule<Iterator, T0, T1, T2> start_type;
+ typedef typename start_type::sig_type sig_type;
+ typedef typename start_type::locals_type locals_type;
+ typedef typename start_type::delimiter_type delimiter_type;
+ typedef grammar<Iterator, T0, T1, T2> base_type;
+
+ grammar(start_type const& start, std::string const& name_ = std::string())
+ : start_(start), name_(name_)
+ {}
 
- explicit grammar(Definition const& definition_)
- : definition(definition_), start(definition_.start)
+ std::string name() const
         {
+ return name_;
         }
 
- template <typename Definition_, typename Start>
- grammar(Definition_ const& definition_, Start const& start_)
- : definition(definition_), start(start_)
+ void name(std::string const& name__)
         {
+ name_ = name__;
         }
 
+ start_type const& start_;
+ std::string name_;
+
     private:
         template <typename OutputIterator, typename Context, typename Delimiter>
         bool generate(OutputIterator& sink, Context& context,
             Delimiter const& delim) const
         {
- return start.generate(sink, context, delim);
+ return start_.generate(sink, context, delim);
         }
 
         std::string what() const
         {
- if (definition.name().empty())
+ if (name().empty())
             {
- return start.what();
+ return start_.what();
             }
             else
             {
- return definition.name();
+ return name();
             }
         }
 
         friend struct nonterminal_director;
- Definition const& definition;
- start_type const& start;
     };
 
- template <typename OutputIterator, typename T0 = unused_type,
- typename T1 = unused_type, typename T2 = unused_type>
- struct grammar_def : noncopyable
- {
- typedef karma::rule<OutputIterator, T0, T1, T2> start_type;
- typedef typename start_type::iterator_type iterator_type;
- typedef typename start_type::sig_type sig_type;
- typedef typename start_type::locals_type locals_type;
- typedef typename start_type::delimiter_type delimiter_type;
-
- grammar_def(std::string const& name_ = std::string())
- : name_(name_) {}
-
- std::string name() const
- {
- return name_;
- }
-
- void name(std::string const& name__)
- {
- name_ = name__;
- }
-
- std::string name_;
- };
-
- ///////////////////////////////////////////////////////////////////////////
- // Generator functions helping to construct a proper grammar object
- // instance
- ///////////////////////////////////////////////////////////////////////////
- template <typename Definition>
- inline grammar<Definition>
- make_generator(Definition const& def)
- {
- return grammar<Definition>(def);
- }
-
- template <typename Definition, typename Start>
- inline grammar<Definition>
- make_generator(Definition const& def, Start const& start)
- {
- return grammar<Definition>(def, start);
- }
-
 }}}
 
 #endif

Modified: branches/CMake/release/boost/spirit/home/karma/nonterminal/nonterminal_director.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/nonterminal/nonterminal_director.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/nonterminal/nonterminal_director.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -53,7 +53,7 @@
             Parameter const& param)
         {
             typedef typename Nonterminal::locals_type locals_type;
- fusion::single_view<Parameter const&> front(param);
+ fusion::vector<Parameter const&> front(param);
             NonterminalContext context(front, locals_type());
             return x.obj.generate(sink, context, delim);
         }
@@ -69,7 +69,7 @@
             Parameter const& param)
         {
             typedef typename Nonterminal::locals_type locals_type;
- fusion::single_view<Parameter const&> front(param);
+ fusion::vector<Parameter const&> front(param);
             NonterminalContext context(front, locals_type());
             return ptr->generate(sink, context, delim);
         }
@@ -148,8 +148,8 @@
             return x.ptr->what();
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return what_nonterminal(subject(component).held);
         }

Modified: branches/CMake/release/boost/spirit/home/karma/nonterminal/rule.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/nonterminal/rule.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/nonterminal/rule.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,7 @@
 
 #include <boost/spirit/home/support/unused.hpp>
 #include <boost/spirit/home/karma/nonterminal/nonterminal.hpp>
+#include <boost/spirit/home/karma/nonterminal/grammar_fwd.hpp>
 #include <boost/spirit/home/karma/nonterminal/detail/rule.hpp>
 #include <boost/spirit/home/karma/domain.hpp>
 #include <boost/spirit/home/karma/detail/output_iterator.hpp>
@@ -26,9 +27,6 @@
 
 namespace boost { namespace spirit { namespace karma
 {
- template <typename Definition>
- struct grammar; // forward declaration
-
     template <typename OutputIterator, typename T0 = unused_type,
         typename T1 = unused_type, typename T2 = unused_type>
     struct rule
@@ -140,7 +138,7 @@
 
     private:
 
- template <typename Definition>
+ template <typename Iterator_, typename T0_, typename T1_, typename T2_>
         friend struct grammar;
 
         template <typename Expr, typename Auto>

Modified: branches/CMake/release/boost/spirit/home/karma/numeric/int.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/numeric/int.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/numeric/int.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_INT_FEB_23_2007_0840PM)
@@ -25,8 +25,8 @@
 namespace boost { namespace spirit { namespace karma
 {
     ///////////////////////////////////////////////////////////////////////////
- // This specialization is used for int generators not having a direct
- // initializer: int_, long_ etc. These generators must be used in
+ // This specialization is used for int generators not having a direct
+ // initializer: int_, long_ etc. These generators must be used in
     // conjunction with a parameter.
     ///////////////////////////////////////////////////////////////////////////
     template <typename T, unsigned Radix, bool ForceSign, typename Tag>
@@ -45,44 +45,44 @@
 
         BOOST_MPL_ASSERT_MSG(std::numeric_limits<T>::is_signed,
             signed_unsigned_mismatch, ());
-
+
         // int has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& /*component*/, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& /*component*/, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& param)
         {
- sign_inserter<ForceSign>::call(sink, detail::is_zero(param),
+ sign_inserter<ForceSign>::call(sink, detail::is_zero(param),
                 detail::is_negative(param));
- bool result = int_inserter<Radix, Tag>::call(sink,
+ bool result = int_inserter<Radix, Tag>::call(sink,
                 detail::absolute_value(param));
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return result;
         }
 
- // this int has no parameter attached, it needs to have been
+ // this int has no parameter attached, it needs to have been
         // initialized from a direct literal
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter>
- static bool
- generate(Component const&, OutputIterator&, Context&, Delimiter const&,
- unused_type)
+ static bool
+ generate(Component const&, OutputIterator&, Context&, Delimiter const&,
+ unused_type)
         {
             BOOST_MPL_ASSERT_MSG(false, int__not_usable_without_parameter, ());
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "integer";
         }
     };
 
     ///////////////////////////////////////////////////////////////////////////
- // This specialization is used for int generators having a direct
- // initializer: int_(10), long_(20) etc.
+ // This specialization is used for int generators having a direct
+ // initializer: int_(10), long_(20) etc.
     ///////////////////////////////////////////////////////////////////////////
     template <typename T, unsigned Radix, bool ForceSign, typename Tag>
     struct int_generator<true, T, Radix, ForceSign, Tag>
@@ -100,24 +100,24 @@
 
         BOOST_MPL_ASSERT_MSG(std::numeric_limits<T>::is_signed,
             signed_unsigned_mismatch, ());
-
- template <typename Component, typename OutputIterator,
+
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
         {
             T n = fusion::at_c<0>(component.elements);
- sign_inserter<ForceSign>::call(sink, detail::is_zero(n),
+ sign_inserter<ForceSign>::call(sink, detail::is_zero(n),
                 detail::is_negative(n));
- bool result = int_inserter<Radix, Tag>::call(sink,
+ bool result = int_inserter<Radix, Tag>::call(sink,
                 detail::absolute_value(n));
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return result;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "integer";
         }
@@ -145,7 +145,7 @@
 
         typedef karma::int_generator<false, T, Radix, ForceSign, key_tag> int_type;
         typedef component<karma::domain, int_type, fusion::nil> type;
-
+
         static type
         call(Elements const&)
         {
@@ -166,14 +166,14 @@
         typedef spirit::char_class::tag::lower char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
 
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 0>::type
         int_data_type;
         typedef fusion::vector<int_data_type> vector_type;
 
         typedef karma::int_generator<true, T, Radix, ForceSign, key_tag> int_type;
         typedef component<karma::domain, int_type, vector_type> type;
-
+
         static type
         call(Elements const& elements)
         {
@@ -199,7 +199,7 @@
 
         typedef karma::int_generator<false, T, Radix, ForceSign, key_tag> int_type;
         typedef component<karma::domain, int_type, fusion::nil> type;
-
+
         static type
         call(Elements const&)
         {
@@ -220,14 +220,14 @@
         typedef spirit::char_class::tag::upper char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
 
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 0>::type
         int_data_type;
         typedef fusion::vector<int_data_type> vector_type;
 
         typedef karma::int_generator<true, T, Radix, ForceSign, key_tag> int_type;
         typedef component<karma::domain, int_type, vector_type> type;
-
+
         static type
         call(Elements const& elements)
         {

Modified: branches/CMake/release/boost/spirit/home/karma/numeric/real.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/numeric/real.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/numeric/real.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_REAL_FEB_26_2007_0512PM)
@@ -20,17 +20,17 @@
 #include <boost/spirit/home/karma/numeric/detail/numeric_utils.hpp>
 #include <cmath>
 
-namespace boost { namespace spirit { namespace karma
+namespace boost { namespace spirit { namespace karma
 {
     namespace detail
     {
         template <typename RealPolicies>
         struct real_policy;
     }
-
+
     ///////////////////////////////////////////////////////////////////////////
- // This specialization is used for real generators not having a direct
- // initializer: float_, double_ etc. These generators must be used in
+ // This specialization is used for real generators not having a direct
+ // initializer: float_, double_ etc. These generators must be used in
     // conjunction with a parameter.
     ///////////////////////////////////////////////////////////////////////////
     template <typename T, typename RealPolicies, typename Tag>
@@ -43,44 +43,44 @@
         };
 
         // double_/float_/etc. has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& param)
         {
             RealPolicies const& p = detail::real_policy<RealPolicies>::get(
                 fusion::at_c<0>(component.elements));
             bool result = real_inserter<T, RealPolicies, Tag>::
                 call(sink, param, p);
 
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return result;
         }
 
- // this double_/float_/etc. has no parameter attached, it needs to have
+ // this double_/float_/etc. has no parameter attached, it needs to have
         // been initialized from a direct literal
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter>
- static bool
- generate(Component const&, OutputIterator&, Context&, Delimiter const&,
- unused_type)
+ static bool
+ generate(Component const&, OutputIterator&, Context&, Delimiter const&,
+ unused_type)
         {
- BOOST_MPL_ASSERT_MSG(false, real_not_usable_without_parameter,
+ BOOST_MPL_ASSERT_MSG(false, real_not_usable_without_parameter,
                 (Component, Context));
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "real number";
         }
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
- // This specialization is used for real generators having a direct
- // initializer: float_(10.), double_(20.) etc.
+ // This specialization is used for real generators having a direct
+ // initializer: float_(10.), double_(20.) etc.
     ///////////////////////////////////////////////////////////////////////////
     template <typename T, typename RealPolicies, typename Tag>
     struct real_generator<true, T, RealPolicies, Tag>
@@ -91,28 +91,28 @@
             typedef unused_type type;
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
         {
             RealPolicies const& p = detail::real_policy<RealPolicies>::get(
                 fusion::at_c<0>(component.elements));
             T n = fusion::at_c<1>(component.elements);
             bool result = real_inserter<T, RealPolicies, Tag>::call(sink, n, p);
 
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return result;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "real number";
         }
     };
-
+
 }}}
 
 namespace boost { namespace spirit { namespace traits
@@ -133,14 +133,14 @@
         typedef spirit::char_class::tag::lower char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
 
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 0>::type
         real_policy_type;
         typedef fusion::vector<real_policy_type> vector_type;
 
         typedef karma::real_generator<false, T, RealPolicies, key_tag> real_type;
         typedef component<karma::domain, real_type, vector_type> type;
-
+
         static type
         call(Elements const& elements)
         {
@@ -161,17 +161,17 @@
         typedef spirit::char_class::tag::lower char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
 
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 0>::type
         real_policy_type;
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 1>::type
         real_data_type;
         typedef fusion::vector<real_policy_type, real_data_type> vector_type;
 
         typedef karma::real_generator<true, T, RealPolicies, key_tag> real_type;
         typedef component<karma::domain, real_type, vector_type> type;
-
+
         static type
         call(Elements const& elements)
         {
@@ -195,14 +195,14 @@
         typedef spirit::char_class::tag::upper char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
 
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 0>::type
         real_policy_type;
         typedef fusion::vector<real_policy_type> vector_type;
 
         typedef karma::real_generator<false, T, RealPolicies, key_tag> real_type;
         typedef component<karma::domain, real_type, vector_type> type;
-
+
         static type
         call(Elements const& elements)
         {
@@ -223,17 +223,17 @@
         typedef spirit::char_class::tag::upper char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
 
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 0>::type
         real_policy_type;
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 1>::type
         real_data_type;
         typedef fusion::vector<real_policy_type, real_data_type> vector_type;
 
         typedef karma::real_generator<true, T, RealPolicies, key_tag> real_type;
         typedef component<karma::domain, real_type, vector_type> type;
-
+
         static type
         call(Elements const& elements)
         {

Modified: branches/CMake/release/boost/spirit/home/karma/numeric/uint.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/numeric/uint.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/numeric/uint.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_UINT_FEB_23_2007_0840PM)
@@ -39,33 +39,33 @@
 
         BOOST_MPL_ASSERT_MSG(!std::numeric_limits<T>::is_signed,
             signed_unsigned_mismatch, ());
-
+
         // uint has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& /*component*/, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& /*component*/, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& param)
         {
             bool result = int_inserter<Radix, Tag>::call(sink, param);
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return result;
         }
 
- // this uint has no parameter attached, it needs to have been
+ // this uint has no parameter attached, it needs to have been
         // initialized from a direct literal
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter>
- static bool
- generate(Component const&, OutputIterator&, Context&, Delimiter const&,
- unused_type)
+ static bool
+ generate(Component const&, OutputIterator&, Context&, Delimiter const&,
+ unused_type)
         {
             BOOST_MPL_ASSERT_MSG(false, uint_not_usable_without_parameter, ());
             return false;
         }
-
- template <typename Component>
- static std::string what(Component const&)
+
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "unsigned integer";
         }
@@ -87,21 +87,21 @@
 
         BOOST_MPL_ASSERT_MSG(!std::numeric_limits<T>::is_signed,
             signed_unsigned_mismatch, ());
-
- template <typename Component, typename OutputIterator,
+
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
         {
             T n = fusion::at_c<0>(component.elements);
             bool result = int_inserter<Radix, Tag>::call(sink, n);
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return result;
         }
-
- template <typename Component>
- static std::string what(Component const&)
+
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "unsigned integer";
         }
@@ -129,7 +129,7 @@
 
         typedef karma::uint_generator<false, T, Radix, ForceSign, key_tag> int_type;
         typedef component<karma::domain, int_type, fusion::nil> type;
-
+
         static type
         call(Elements const&)
         {
@@ -150,14 +150,14 @@
         typedef spirit::char_class::tag::lower char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
 
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 0>::type
         int_data_type;
         typedef fusion::vector<int_data_type> vector_type;
 
         typedef karma::uint_generator<true, T, Radix, ForceSign, key_tag> int_type;
         typedef component<karma::domain, int_type, vector_type> type;
-
+
         static type
         call(Elements const& elements)
         {
@@ -183,7 +183,7 @@
 
         typedef karma::uint_generator<false, T, Radix, ForceSign, key_tag> int_type;
         typedef component<karma::domain, int_type, fusion::nil> type;
-
+
         static type
         call(Elements const&)
         {
@@ -204,14 +204,14 @@
         typedef spirit::char_class::tag::upper char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
 
- typedef typename
+ typedef typename
             fusion::result_of::value_at_c<Elements, 0>::type
         int_data_type;
         typedef fusion::vector<int_data_type> vector_type;
 
         typedef karma::uint_generator<true, T, Radix, ForceSign, key_tag> int_type;
         typedef component<karma::domain, int_type, vector_type> type;
-
+
         static type
         call(Elements const& elements)
         {

Modified: branches/CMake/release/boost/spirit/home/karma/operator/alternative.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/operator/alternative.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/operator/alternative.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -65,12 +65,12 @@
             return fusion::any(component.elements, f);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "alternatives[";
             fusion::for_each(component.elements,
- spirit::detail::what_function(result));
+ spirit::detail::what_function<Context>(result, ctx));
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/karma/operator/detail/alternative.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/operator/detail/alternative.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/operator/detail/alternative.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -41,16 +41,11 @@
         typedef typename mpl::begin<types>::type begin;
 
         typedef typename
- mpl::find_if<
- types,
- is_convertible<mpl::_1, Expected>
- >::type
+ mpl::find_if<types, is_same<mpl::_1, Expected> >::type
         iter;
 
         typedef typename mpl::not_<is_same<iter, end> >::type type;
         enum { value = type::value };
-
-
     };
 
     template <typename Expected>
@@ -117,18 +112,18 @@
     {
         // If this alternative is a sequence, we wrap the attribute into a
         // fusion sequence.
- template <typename Parameter>
- static fusion::vector<Parameter const&>
- wrap_attribute(Parameter const& param, mpl::true_)
+ template <typename Parameter_>
+ static fusion::vector<Parameter_ const&>
+ wrap_attribute(Parameter_ const& param, mpl::true_)
         {
             return fusion::vector<Parameter const&>(param);
         }
 
         // If this alternative is not a sequence the parameter is passed
         // through unchanged.
- template <typename Parameter>
- static Parameter const&
- wrap_attribute(Parameter const& param, mpl::false_)
+ template <typename Parameter_>
+ static Parameter_ const&
+ wrap_attribute(Parameter_ const& param, mpl::false_)
         {
             return param;
         }

Modified: branches/CMake/release/boost/spirit/home/karma/operator/kleene.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/operator/kleene.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/operator/kleene.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -72,8 +72,8 @@
 // return false;
 // }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "kleene[";
 
@@ -81,7 +81,7 @@
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/karma/operator/list.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/operator/list.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/operator/list.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -70,8 +70,8 @@
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "list[";
 
@@ -83,9 +83,9 @@
                 spirit::result_of::right<Component>::type::director
             rdirector;
 
- result += ldirector::what(spirit::left(component));
+ result += ldirector::what(spirit::left(component), ctx);
             result += ", ";
- result += rdirector::what(spirit::right(component));
+ result += rdirector::what(spirit::right(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/karma/operator/optional.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/operator/optional.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/operator/optional.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -79,8 +79,8 @@
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "optional[";
 
@@ -88,7 +88,7 @@
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/karma/operator/plus.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/operator/plus.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/operator/plus.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -75,8 +75,8 @@
 // return false;
 // }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "plus[";
 
@@ -84,7 +84,7 @@
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(spirit::subject(component));
+ result += director::what(spirit::subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/karma/operator/sequence.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/operator/sequence.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/operator/sequence.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -73,12 +73,12 @@
             return !spirit::any_if(component.elements, param, f, predicate());
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "sequence[";
             fusion::for_each(component.elements,
- spirit::detail::what_function(result));
+ spirit::detail::what_function<Context>(result, ctx));
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/karma/stream/stream.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/stream/stream.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/stream/stream.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -17,20 +17,20 @@
 #include <iosfwd>
 
 ///////////////////////////////////////////////////////////////////////////////
-namespace boost { namespace spirit
-{
+namespace boost { namespace spirit
+{
     // overload the streaming operators for the unused_type
     template <typename Char, typename Traits>
- inline std::basic_ostream<Char, Traits>&
+ inline std::basic_ostream<Char, Traits>&
     operator<< (std::basic_ostream<Char, Traits>& os, unused_type)
     {
         return os;
     }
-
+
 }}
 
 ///////////////////////////////////////////////////////////////////////////////
-namespace boost { namespace spirit { namespace karma
+namespace boost { namespace spirit { namespace karma
 {
     template <typename Char>
     struct any_stream
@@ -42,24 +42,24 @@
         };
 
         // any_stream has a parameter attached
-
+
         // this overload will be used in the normal case (not called from
         // format_manip).
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& param)
         {
- typedef
- karma::detail::iterator_sink<OutputIterator, Char>
+ typedef
+ karma::detail::iterator_sink<OutputIterator, Char>
             sink_device;
 
             iostreams::stream<sink_device> ostr(sink);
             ostr << param << std::flush; // use existing operator<<()
-
+
             if (ostr.good()) {
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
                 return true;
             }
             return false;
@@ -68,48 +68,48 @@
         // this is a special overload to detect if the output iterator has been
         // generated by a format_manip object.
         template <
- typename Component, typename T, typename Traits,
+ typename Component, typename T, typename Traits,
             typename Context, typename Delimiter, typename Parameter
>
- static bool
- generate(Component const& component,
+ static bool
+ generate(Component const& component,
             karma::detail::output_iterator<
- karma::detail::ostream_iterator<T, Char, Traits>
- >& sink, Context&, Delimiter const& d, Parameter const& param)
+ karma::detail::ostream_iterator<T, Char, Traits>
+ >& sink, Context&, Delimiter const& d, Parameter const& param)
         {
             typedef karma::detail::output_iterator<
- karma::detail::ostream_iterator<T, Char, Traits>
+ karma::detail::ostream_iterator<T, Char, Traits>
> output_iterator;
- typedef
- karma::detail::iterator_sink<output_iterator, Char>
+ typedef
+ karma::detail::iterator_sink<output_iterator, Char>
             sink_device;
 
             iostreams::stream<sink_device> ostr(sink);
             ostr.imbue(sink.get_ostream().getloc());
             ostr << param << std::flush; // use existing operator<<()
-
+
             if (ostr.good()) {
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
                 return true;
             }
             return false;
         }
-
- // this any_stream has no parameter attached, it needs to have been
+
+ // this any_stream has no parameter attached, it needs to have been
         // initialized from a value/variable
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter>
- static bool
- generate(Component const&, OutputIterator&, Context&, Delimiter const&,
- unused_type)
+ static bool
+ generate(Component const&, OutputIterator&, Context&, Delimiter const&,
+ unused_type)
         {
- BOOST_MPL_ASSERT_MSG(false, stream__not_usable_without_parameter,
+ BOOST_MPL_ASSERT_MSG(false, stream__not_usable_without_parameter,
               (Component, OutputIterator, Delimiter));
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "any-stream";
         }
@@ -126,22 +126,22 @@
         };
 
         // stream_director has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const&)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const&)
         {
- typedef
- karma::detail::iterator_sink<OutputIterator, Char>
+ typedef
+ karma::detail::iterator_sink<OutputIterator, Char>
             sink_device;
 
             // use existing operator<<()
             iostreams::stream<sink_device> ostr(sink);
- ostr << fusion::at_c<0>(component.elements) << std::flush;
-
+ ostr << fusion::at_c<0>(component.elements) << std::flush;
+
             if (ostr.good()) {
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
                 return true;
             }
             return false;
@@ -150,41 +150,41 @@
         // this is a special overload to detect if the output iterator has been
         // generated by a format_manip object.
         template <
- typename Component, typename T, typename Traits,
+ typename Component, typename T, typename Traits,
             typename Context, typename Delimiter, typename Parameter
>
- static bool
- generate(Component const& component,
+ static bool
+ generate(Component const& component,
             karma::detail::output_iterator<
- karma::detail::ostream_iterator<T, Char, Traits>
- >& sink, Context&, Delimiter const& d, Parameter const&)
+ karma::detail::ostream_iterator<T, Char, Traits>
+ >& sink, Context&, Delimiter const& d, Parameter const&)
         {
             typedef karma::detail::output_iterator<
- karma::detail::ostream_iterator<T, Char, Traits>
+ karma::detail::ostream_iterator<T, Char, Traits>
> output_iterator;
- typedef
- karma::detail::iterator_sink<output_iterator, Char>
+ typedef
+ karma::detail::iterator_sink<output_iterator, Char>
             sink_device;
 
             // use existing operator<<()
             iostreams::stream<sink_device> ostr(sink);
             ostr.imbue(sink.get_ostream().getloc());
- ostr << fusion::at_c<0>(component.elements) << std::flush;
-
+ ostr << fusion::at_c<0>(component.elements) << std::flush;
+
             if (ostr.good()) {
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
                 return true;
             }
             return false;
         }
-
- template <typename Component>
- static std::string what(Component const& component)
+
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "stream";
         }
     };
-
+
 }}}
 
 #endif

Modified: branches/CMake/release/boost/spirit/home/karma/string/lit.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/string/lit.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/string/lit.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Copyright (c) 2001-2008 Hartmut Kaiser
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
 #if !defined(BOOST_SPIRIT_KARMA_LIT_FEB_22_2007_0534PM)
@@ -35,32 +35,32 @@
         };
 
         // lit has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& /*component*/, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& /*component*/, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& param)
         {
             bool result = detail::string_generate(sink, param);
             if (result)
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return result;
         }
 
- // this lit has no parameter attached, it needs to have been
+ // this lit has no parameter attached, it needs to have been
         // initialized from a direct literal
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, unused_type)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, unused_type)
         {
             BOOST_MPL_ASSERT_MSG(false, lit_not_usable_without_parameter, ());
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "any-string";
         }
@@ -78,21 +78,21 @@
             typedef unused_type type;
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& /*param*/)
         {
             bool result = detail::string_generate(sink,
                 fusion::at_c<0>(component.elements));
-
- karma::delimit(sink, d); // always do post-delimiting
+
+ karma::delimit(sink, d); // always do post-delimiting
             return result;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return std::string("\"")
                 + spirit::detail::to_narrow_string(
@@ -113,21 +113,21 @@
             typedef unused_type type;
         };
 
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& ctx, Delimiter const& d, Parameter const& /*param*/)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& ctx, Delimiter const& d, Parameter const& /*param*/)
         {
             bool result = detail::string_generate(sink,
                 fusion::at_c<0>(component.elements)(unused, ctx));
-
- karma::delimit(sink, d); // always do post-delimiting
+
+ karma::delimit(sink, d); // always do post-delimiting
             return result;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "string";
         }
@@ -146,36 +146,36 @@
         };
 
         // case_any_string has a parameter attached
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter, typename Parameter>
- static bool
- generate(Component const& /*component*/, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, Parameter const& param)
+ static bool
+ generate(Component const& /*component*/, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, Parameter const& param)
         {
             bool result = detail::string_generate(sink, param, Tag());
- karma::delimit(sink, d); // always do post-delimiting
+ karma::delimit(sink, d); // always do post-delimiting
             return result;
         }
 
- // this case_any_string has no parameter attached, it needs to have been
+ // this case_any_string has no parameter attached, it needs to have been
         // initialized from a direct literal
- template <typename Component, typename OutputIterator,
+ template <typename Component, typename OutputIterator,
             typename Context, typename Delimiter>
- static bool
- generate(Component const& component, OutputIterator& sink,
- Context& /*ctx*/, Delimiter const& d, unused_type)
+ static bool
+ generate(Component const& component, OutputIterator& sink,
+ Context& /*ctx*/, Delimiter const& d, unused_type)
         {
             BOOST_MPL_ASSERT_MSG(false, lit_not_usable_without_parameter, ());
             return false;
         }
 
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             typedef typename Tag::char_set char_set;
             typedef typename Tag::char_class char_class_;
- return std::string("any-") +
+ return std::string("any-") +
                 spirit::char_class::what<char_set>::is(char_class_())
                 + "case-string";
         }
@@ -200,18 +200,18 @@
         typedef std::basic_string<Char> string_type;
         typedef fusion::vector<string_type> vector_type;
 
- typedef
- component<karma::domain, karma::literal_string<Char>, vector_type>
+ typedef
+ component<karma::domain, karma::literal_string<Char>, vector_type>
         type;
-
+
         static type
         call(Elements const& elements)
         {
             typedef typename Modifier::char_set char_set;
-
+
             string_type val(fusion::at_c<0>(elements));
             typename string_type::iterator end = val.end();
- for (typename string_type::iterator it = val.begin();
+ for (typename string_type::iterator it = val.begin();
                  it != end; ++it)
             {
                 *it = char_set::tolower(*it);
@@ -233,18 +233,18 @@
         typedef std::basic_string<Char> string_type;
         typedef fusion::vector<string_type> vector_type;
 
- typedef
- component<karma::domain, karma::literal_string<Char>, vector_type>
+ typedef
+ component<karma::domain, karma::literal_string<Char>, vector_type>
         type;
-
+
         static type
         call(Elements const& elements)
         {
             typedef typename Modifier::char_set char_set;
-
+
             string_type val(fusion::at_c<0>(elements));
             typename string_type::iterator end = val.end();
- for (typename string_type::iterator it = val.begin();
+ for (typename string_type::iterator it = val.begin();
                  it != end; ++it)
             {
                 *it = char_set::toupper(*it);
@@ -269,11 +269,11 @@
         typedef typename Modifier::char_set char_set;
         typedef spirit::char_class::tag::lower char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
-
+
         typedef component<
             karma::domain, karma::case_any_string<Char, key_tag>, fusion::nil
> type;
-
+
         static type
         call(Elements const&)
         {
@@ -293,11 +293,11 @@
         typedef typename Modifier::char_set char_set;
         typedef spirit::char_class::tag::upper char_class_;
         typedef spirit::char_class::key<char_set, char_class_> key_tag;
-
+
         typedef component<
             karma::domain, karma::case_any_string<Char, key_tag>, fusion::nil
> type;
-
+
         static type
         call(Elements const&)
         {

Modified: branches/CMake/release/boost/spirit/home/karma/what.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/karma/what.hpp (original)
+++ branches/CMake/release/boost/spirit/home/karma/what.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -28,7 +28,7 @@
         typedef typename component::director director;
 
         component c = spirit::as_component(karma::domain(), xpr);
- return director::what(c);
+ return director::what(c, unused);
     }
 }}}
 

Modified: branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/iterator_tokenizer.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/iterator_tokenizer.hpp (original)
+++ branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/iterator_tokenizer.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,6 +20,9 @@
     {
     public:
         typedef std::vector<std::size_t> size_t_vector;
+ typedef
+ typename boost::detail::iterator_traits<Iterator>::value_type
+ char_type;
 
 // static std::size_t next (const std::size_t * const lookup_,
 // std::size_t const dfa_alphabet_, const std::size_t * const dfa_,
@@ -93,7 +96,8 @@
 // return id_;
 // }
 
- static std::size_t next (boost::lexer::state_machine const& state_machine_,
+ static std::size_t next (
+ boost::lexer::basic_state_machine<char_type> const& state_machine_,
             std::size_t &dfa_state_, Iterator const& start_,
             Iterator &start_token_, Iterator const& end_)
         {
@@ -186,7 +190,8 @@
 
         ///////////////////////////////////////////////////////////////////////
         static
- std::size_t next (boost::lexer::state_machine const& state_machine_,
+ std::size_t next (
+ boost::lexer::basic_state_machine<char_type> const& state_machine_,
             Iterator const& start_, Iterator &start_token_, Iterator const& end_)
         {
             if (start_token_ == end_) return 0;

Modified: branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_functor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_functor.hpp (original)
+++ branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_functor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -77,7 +77,7 @@
             std::size_t get_state() const { return 0; }
             void set_state_name (char_type const* state) {}
 
- boost::lexer::state_machine const& state_machine;
+ boost::lexer::basic_state_machine<char_type> const& state_machine;
             boost::lexer::basic_rules<char_type> const& rules;
             Iterator& first;
             Iterator last;

Modified: branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_generate_static.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_generate_static.hpp (original)
+++ branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_generate_static.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -67,7 +67,7 @@
     // Generate a tokenizer for the given state machine.
     template <typename Char>
     inline bool
- generate_cpp (boost::lexer::state_machine const& sm_,
+ generate_cpp (boost::lexer::basic_state_machine<Char> const& sm_,
         boost::lexer::basic_rules<Char> const& rules_,
         std::ostream &os_, char const* name_suffix = "",
         bool skip_on_nomatch = true, bool optimize_parameters = true)

Modified: branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_lexer.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_lexer.hpp (original)
+++ branches/CMake/release/boost/spirit/home/lex/lexer/lexertl/lexertl_lexer.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -47,6 +47,7 @@
             case '.':
             case '^': case '$':
             case '\\':
+ case '"':
                 return true;
 
             default:
@@ -205,7 +206,7 @@
     private:
         // this type is purely used for the iterator_type construction below
         struct iterator_data_type {
- boost::lexer::state_machine const& state_machine_;
+ boost::lexer::basic_state_machine<char_type> const& state_machine_;
             boost::lexer::basic_rules<char_type> const& rules_;
             typename Functor::semantic_actions_type const& actions_;
         };
@@ -323,7 +324,7 @@
         }
 
     private:
- mutable boost::lexer::state_machine state_machine;
+ mutable boost::lexer::basic_state_machine<char_type> state_machine;
         boost::lexer::basic_rules<char_type> rules;
         typename Functor::semantic_actions_type actions;
         mutable bool initialized_dfa;

Modified: branches/CMake/release/boost/spirit/home/lex/lexer/terminal_director.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/lex/lexer/terminal_director.hpp (original)
+++ branches/CMake/release/boost/spirit/home/lex/lexer/terminal_director.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -45,8 +45,8 @@
                 first, last, context, skipper, attr);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return subject(component).held->what();
         }

Modified: branches/CMake/release/boost/spirit/home/lex/qi/state/state_switcher.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/lex/qi/state/state_switcher.hpp (original)
+++ branches/CMake/release/boost/spirit/home/lex/qi/state/state_switcher.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -71,8 +71,8 @@
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result("set_state(\"");
             result += spirit::detail::to_narrow_string(
@@ -148,8 +148,8 @@
                 last, context, skipper, attr);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result("in_state(\"");
             result += spirit::detail::to_narrow_string(
@@ -160,7 +160,7 @@
                 spirit::result_of::subject<Component>::type::director
             director;
 
- result += director::what(subject(component));
+ result += director::what(subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/lex/qi/utility/plain_token.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/lex/qi/utility/plain_token.hpp (original)
+++ branches/CMake/release/boost/spirit/home/lex/qi/utility/plain_token.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -56,8 +56,8 @@
             return false;
         }
         
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result("token(\"");
             result += lexical_cast<std::string>(

Modified: branches/CMake/release/boost/spirit/home/lex/tokenize_and_parse.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/lex/tokenize_and_parse.hpp (original)
+++ branches/CMake/release/boost/spirit/home/lex/tokenize_and_parse.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -82,21 +82,6 @@
     }
 
     ///////////////////////////////////////////////////////////////////////////
- template <
- typename Iterator, typename LexerExpr,
- template <typename, typename> class Def
- >
- inline bool
- tokenize_and_parse(Iterator& first, Iterator last, LexerExpr const& lex,
- qi::grammar_class<Def>& gc)
- {
- typedef typename LexerExpr::iterator_type iterator_type;
- Def<iterator_type, unused_type> def(gc);
- qi::grammar<Def<iterator_type, unused_type> > g(def);
- return tokenize_and_parse(first, last, lex, g);
- }
-
- ///////////////////////////////////////////////////////////////////////////
     template <typename Iterator, typename LexerExpr, typename ParserExpr,
         typename Attribute>
     inline bool
@@ -123,21 +108,6 @@
     }
 
     ///////////////////////////////////////////////////////////////////////////
- template <
- typename Iterator, typename LexerExpr,
- template <typename, typename> class Def, typename Attribute
- >
- inline bool
- tokenize_and_parse(Iterator& first, Iterator last, LexerExpr const& lex,
- qi::grammar_class<Def>& gc, Attribute& attr)
- {
- typedef typename LexerExpr::iterator_type iterator_type;
- Def<iterator_type, unused_type> def(gc);
- qi::grammar<Def<iterator_type, unused_type> > g(def);
- return tokenize_and_parse(first, last, lex, g, attr);
- }
-
- ///////////////////////////////////////////////////////////////////////////
     //
     // The tokenize_and_phrase_parse() function is one of the main Spirit API
     // functions. It simplifies using a lexer as the underlying token source
@@ -229,21 +199,6 @@
 
     ///////////////////////////////////////////////////////////////////////////
     template <
- typename Iterator, typename LexerExpr,
- template <typename, typename> class Def, typename Skipper
- >
- inline bool
- tokenize_and_phrase_parse(Iterator& first, Iterator last,
- LexerExpr const& lex, qi::grammar_class<Def>& gc, Skipper const& skipper)
- {
- typedef typename LexerExpr::iterator_type iterator_type;
- Def<iterator_type, unused_type> def(gc);
- qi::grammar<Def<iterator_type, unused_type> > g(def);
- return tokenize_and_phrase_parse(first, last, lex, g, skipper);
- }
-
- ///////////////////////////////////////////////////////////////////////////
- template <
         typename Iterator, typename LexerExpr, typename ParserExpr,
         typename Attribute, typename Skipper
>
@@ -288,23 +243,6 @@
     }
 
     ///////////////////////////////////////////////////////////////////////////
- template <
- typename Iterator, typename LexerExpr,
- template <typename, typename> class Def,
- typename Skipper, typename Attribute
- >
- inline bool
- tokenize_and_phrase_parse(Iterator& first, Iterator last,
- LexerExpr const& lex, qi::grammar_class<Def>& gc, Skipper const& skipper,
- Attribute& attr)
- {
- typedef typename LexerExpr::iterator_type iterator_type;
- Def<iterator_type, unused_type> def(gc);
- qi::grammar<Def<iterator_type, unused_type> > g(def);
- return tokenize_and_phrase_parse(first, last, lex, g, skipper, attr);
- }
-
- ///////////////////////////////////////////////////////////////////////////
     //
     // The tokenize() function is one of the main Spirit API functions. It
     // simplifies using a lexer to tokenize a given input sequence. It's main

Modified: branches/CMake/release/boost/spirit/home/qi/action/action.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/action/action.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/action/action.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -81,14 +81,14 @@
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             typedef typename
                 result_of::left<Component>::type::director
             director;
 
- return director::what(spirit::left(component));
+ return director::what(spirit::left(component), ctx);
         }
     };
 }}}

Modified: branches/CMake/release/boost/spirit/home/qi/auxiliary/eps.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/auxiliary/eps.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/auxiliary/eps.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -36,8 +36,8 @@
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "eps";
         }
@@ -65,8 +65,8 @@
             return fusion::at_c<0>(component.elements)(unused, context);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "semantic-predicate";
         }

Modified: branches/CMake/release/boost/spirit/home/qi/auxiliary/functor_director.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/auxiliary/functor_director.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/auxiliary/functor_director.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,8 +40,8 @@
             return subject(component).held->parse(first, last, context, attr);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "functor";
         }

Modified: branches/CMake/release/boost/spirit/home/qi/auxiliary/lazy.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/auxiliary/lazy.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/auxiliary/lazy.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -74,8 +74,8 @@
                 parse(subject, first, last, context, skipper, attr);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             //~ typedef typename
                 //~ result_of::subject<Component>::type
@@ -96,7 +96,7 @@
                     //~ qi::domain(), fusion::at_c<0>(component.elements)(unused, unused));
 
             std::string result = "lazy[";
- //~ result += component_type::director::what(subject);
+ //~ result += component_type::director::what(subject, ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/auxiliary/none.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/auxiliary/none.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/auxiliary/none.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -35,8 +35,8 @@
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "none";
         }

Modified: branches/CMake/release/boost/spirit/home/qi/auxiliary/primitives.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/auxiliary/primitives.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/auxiliary/primitives.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,7 +20,7 @@
     struct end_director_base
     {
         typedef mpl::false_ stores_iterator;
-
+
         template <typename Component, typename Context, typename Iterator>
         struct attribute
         {
@@ -46,7 +46,7 @@
         template <typename Iterator>
         bool test(Iterator& first, Iterator const& last);
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
     // same as end_director_base above, but stores iterator
     ///////////////////////////////////////////////////////////////////////////
@@ -86,13 +86,13 @@
         template <typename Iterator>
         bool test(Iterator& first, Iterator const& last);
     };
-
+
     ///////////////////////////////////////////////////////////////////////////
     // ~eoi, ~eol: 'not end of line' or 'not end of input'
     template <typename Positive>
- struct negated_end_director
+ struct negated_end_director
       : end_director_base<
- negated_end_director<Positive>,
+ negated_end_director<Positive>,
             typename Positive::director::stores_iterator
>
     {
@@ -102,11 +102,11 @@
             return !Positive::director::test(first, last);
         }
 
- template <typename Component>
- static std::string what(Component const&component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
- return "not " +
- Positive::director::what(fusion::at_c<0>(component.elements));
+ return "not " +
+ Positive::director::what(fusion::at_c<0>(component.elements), ctx);
         }
     };
 
@@ -119,15 +119,15 @@
         {
             return first == last;
         }
-
- template <typename Component>
- static std::string what(Component const&)
+
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "eoi";
         }
     };
-
-
+
+
     ///////////////////////////////////////////////////////////////////////////
     // the eol_director matches line endings
     ///////////////////////////////////////////////////////////////////////////
@@ -150,13 +150,13 @@
             return matched;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "eol";
         }
     };
-
+
 ///////////////////////////////////////////////////////////////////////////////
 }}}
 

Modified: branches/CMake/release/boost/spirit/home/qi/binary/binary.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/binary/binary.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/binary/binary.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -136,8 +136,8 @@
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return qi::detail::what<endian>::is();
         }
@@ -182,8 +182,8 @@
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return qi::detail::what<endian>::is();
         }

Modified: branches/CMake/release/boost/spirit/home/qi/char/char.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/char/char.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/char/char.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -35,8 +35,8 @@
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "any-char";
         }
@@ -60,8 +60,8 @@
             return detail::get_char(fusion::at_c<0>(component.elements)) == ch;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return std::string("'")
                 + spirit::detail::to_narrow_char(
@@ -82,8 +82,8 @@
             return component.ptr->test(ch);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "char-set";
         }
@@ -114,10 +114,13 @@
             return fusion::at_c<0>(component.elements)(unused, context) == ch;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
- return "char";
+ return std::string("'")
+ + spirit::detail::to_narrow_char(
+ fusion::at_c<0>(component.elements)(unused, ctx))
+ + '\'';
         }
     };
 
@@ -135,8 +138,8 @@
                 !(fusion::at_c<1>(component.elements) < ch);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result;
             result += std::string("'") + fusion::at_c<0>(component.elements) + '\'';
@@ -173,8 +176,8 @@
                 !(fusion::at_c<1>(component.elements)(unused, context) < ch);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "char-range";
         }
@@ -200,8 +203,8 @@
             ;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result;
             result += std::string("'")
@@ -232,8 +235,8 @@
             ;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result;
             result += std::string("'") + fusion::at_c<0>(component.elements) + '\'';

Modified: branches/CMake/release/boost/spirit/home/qi/char/char_class.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/char/char_class.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/char/char_class.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -35,8 +35,8 @@
             return classify<char_set>::is(char_class_(), ch);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             typedef spirit::char_class::what<char_set> what_;
             return what_::is(char_class_());

Modified: branches/CMake/release/boost/spirit/home/qi/char/char_parser.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/char/char_parser.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/char/char_parser.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -70,11 +70,11 @@
                 fusion::at_c<0>(component.elements), ch, context);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return std::string("not ")
- + Positive::director::what(fusion::at_c<0>(component.elements));
+ + Positive::director::what(fusion::at_c<0>(component.elements), ctx);
         }
     };
 }}}

Modified: branches/CMake/release/boost/spirit/home/qi/detail/expect_function.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/detail/expect_function.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/detail/expect_function.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -41,7 +41,7 @@
                     is_first = false;
                     return true;
                 }
- Exception x = {first, last, director::what(component) };
+ Exception x = {first, last, director::what(component, context) };
                 throw x;
             }
             is_first = false;
@@ -62,7 +62,7 @@
                     is_first = false;
                     return true;
                 }
- Exception x = {first, last, director::what(component) };
+ Exception x = {first, last, director::what(component, context) };
                 throw x;
             }
             is_first = false;

Modified: branches/CMake/release/boost/spirit/home/qi/directive/lexeme.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/directive/lexeme.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/directive/lexeme.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -49,8 +49,8 @@
                 spirit::subject(component), first, last, context, unused, attr);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "lexeme[";
 
@@ -58,7 +58,7 @@
                 result_of::subject<Component>::type::director
             director;
 
- result += director::what(subject(component));
+ result += director::what(subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/directive/omit.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/directive/omit.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/directive/omit.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,8 +40,8 @@
                 spirit::subject(component), first, last, context, skipper, unused);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "omit[";
 
@@ -49,7 +49,7 @@
                 result_of::subject<Component>::type::director
             director;
 
- result += director::what(subject(component));
+ result += director::what(subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/directive/raw.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/directive/raw.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/directive/raw.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -47,8 +47,8 @@
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "raw[";
 
@@ -56,7 +56,7 @@
                 result_of::subject<Component>::type::director
             director;
 
- result += director::what(subject(component));
+ result += director::what(subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/nonterminal/grammar.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/nonterminal/grammar.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/nonterminal/grammar.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,6 +9,7 @@
 
 #include <boost/spirit/home/support/unused.hpp>
 #include <boost/spirit/home/qi/nonterminal/nonterminal.hpp>
+#include <boost/spirit/home/qi/nonterminal/grammar_fwd.hpp>
 #include <boost/spirit/home/qi/domain.hpp>
 #include <boost/spirit/home/qi/nonterminal/rule.hpp>
 #include <boost/spirit/home/qi/nonterminal/nonterminal_director.hpp>
@@ -18,100 +19,10 @@
 
 namespace boost { namespace spirit { namespace qi
 {
- template <typename Definition>
+ template <typename Iterator, typename T0 , typename T1 , typename T2>
     struct grammar
       : nonterminal<
- grammar<Definition>
- , typename Definition::sig_type
- , typename Definition::locals_type
- >, noncopyable
- {
- typedef typename Definition::sig_type sig_type;
- typedef typename Definition::locals_type locals_type;
- typedef typename Definition::skipper_type skipper_type;
- typedef typename Definition::start_type start_type;
- typedef typename Definition::iterator_type iterator_type;
-
- template <typename Definition_>
- explicit grammar(Definition_ const& definition)
- : definition(definition)
- , start(definition.start)
- {
- }
-
- template <typename Definition_, typename Start>
- grammar(Definition_ const& definition, Start const& start)
- : definition(definition)
- , start(start)
- {
- }
-
- private:
-
- template <typename Iterator, typename Context, typename Skipper>
- bool parse(
- Iterator& first, Iterator const& last
- , Context& context, Skipper const& skipper) const
- {
- return start.parse(first, last, context, skipper);
- }
-
- std::string what() const
- {
- if (definition.name().empty())
- {
- return start.what();
- }
- else
- {
- return definition.name();
- }
- }
-
- friend struct nonterminal_director;
- Definition const& definition;
- start_type const& start;
- };
-
- template <
- typename Iterator
- , typename T0 = unused_type
- , typename T1 = unused_type
- , typename T2 = unused_type
- >
- struct grammar_def : noncopyable
- {
- typedef Iterator iterator_type;
- typedef qi::rule<Iterator, T0, T1, T2> start_type;
- typedef typename start_type::sig_type sig_type;
- typedef typename start_type::locals_type locals_type;
- typedef typename start_type::skipper_type skipper_type;
-
- grammar_def(std::string const& name_ = std::string())
- : name_(name_) {}
-
- std::string name() const
- {
- return name_;
- }
-
- void name(std::string const& name__)
- {
- name_ = name__;
- }
-
- std::string name_;
- };
-
- template <
- typename Iterator
- , typename T0 = unused_type
- , typename T1 = unused_type
- , typename T2 = unused_type
- >
- struct grammar_
- : nonterminal<
- grammar_<Iterator, T0, T1, T2>
+ grammar<Iterator, T0, T1, T2>
           , typename qi::rule<Iterator, T0, T1, T2>::sig_type
           , typename qi::rule<Iterator, T0, T1, T2>::locals_type
>, noncopyable
@@ -121,9 +32,9 @@
         typedef typename start_type::sig_type sig_type;
         typedef typename start_type::locals_type locals_type;
         typedef typename start_type::skipper_type skipper_type;
- typedef grammar_<Iterator, T0, T1, T2> base_type;
+ typedef grammar<Iterator, T0, T1, T2> base_type;
 
- grammar_(start_type const& start, std::string const& name_ = std::string())
+ grammar(start_type const& start, std::string const& name_ = std::string())
           : start(start), name_(name_) {}
 
         std::string name() const
@@ -136,8 +47,8 @@
             name_ = name__;
         }
 
- std::string name_;
         start_type const& start;
+ std::string name_;
 
     private:
 
@@ -163,80 +74,6 @@
 
         friend struct nonterminal_director;
     };
-
- ///////////////////////////////////////////////////////////////////////////
- // The grammar_class template
- ///////////////////////////////////////////////////////////////////////////
- template <template <typename, typename> class Def>
- struct grammar_class {};
-
- template <typename Iterator, template <typename, typename> class Def>
- inline bool
- parse(
- Iterator& first
- , Iterator last
- , grammar_class<Def>& gc)
- {
- Def<Iterator, unused_type> def(gc);
- grammar<Def<Iterator, unused_type> > g(def);
- return parse(first, last, g);
- }
-
- template <typename Iterator
- , template <typename, typename> class Def, typename Attr>
- inline bool
- parse(
- Iterator& first
- , Iterator last
- , grammar_class<Def>& gc
- , Attr& attr)
- {
- Def<Iterator, unused_type> def(gc);
- grammar<Def<Iterator, unused_type> > g(def);
- return parse(first, last, g, attr);
- }
-
- template <typename Iterator
- , template <typename, typename> class Def, typename Skipper>
- inline bool
- phrase_parse(
- Iterator& first
- , Iterator last
- , grammar_class<Def>& gc
- , Skipper const& skipper_)
- {
- typedef typename
- result_of::as_component<qi::domain, Skipper>::type
- skipper_type;
-
- skipper_type skipper = spirit::as_component(qi::domain(), skipper_);
-
- Def<Iterator, skipper_type> def(gc);
- grammar<Def<Iterator, skipper_type> > g(def);
- return phrase_parse(first, last, g, skipper);
- }
-
- template <typename Iterator
- , template <typename, typename> class Def, typename Attr, typename Skipper>
- inline bool
- phrase_parse(
- Iterator& first
- , Iterator last
- , grammar_class<Def>& gc
- , Attr& attr
- , Skipper const& skipper_)
- {
- typedef typename
- result_of::as_component<qi::domain, Skipper>::type
- skipper_type;
-
- skipper_type skipper = spirit::as_component(qi::domain(), skipper_);
-
- Def<Iterator, skipper_type> def(gc);
- grammar<Def<Iterator, skipper_type> > g(def);
- return phrase_parse(first, last, g, attr, skipper);
- }
-
 }}}
 
 #endif

Modified: branches/CMake/release/boost/spirit/home/qi/nonterminal/nonterminal_director.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/nonterminal/nonterminal_director.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/nonterminal/nonterminal_director.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -159,8 +159,8 @@
             return x.ptr->what();
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return what_nonterminal(subject(component).held);
         }

Modified: branches/CMake/release/boost/spirit/home/qi/nonterminal/rule.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/nonterminal/rule.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/nonterminal/rule.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,6 +9,7 @@
 
 #include <boost/spirit/home/support/unused.hpp>
 #include <boost/spirit/home/qi/nonterminal/nonterminal.hpp>
+#include <boost/spirit/home/qi/nonterminal/grammar_fwd.hpp>
 #include <boost/spirit/home/qi/nonterminal/detail/rule.hpp>
 #include <boost/spirit/home/qi/nonterminal/detail/error_handler.hpp>
 #include <boost/spirit/home/qi/domain.hpp>
@@ -23,9 +24,6 @@
 
 namespace boost { namespace spirit { namespace qi
 {
- // forward declarations
- template <typename Definition>
- struct grammar;
     namespace detail { struct rule_decorator; }
 
     template <
@@ -86,7 +84,7 @@
 
             // temp workaround for mpl problem
             BOOST_STATIC_ASSERT(is_component::value);
-
+
             define(xpr, mpl::false_());
             return *this;
         }
@@ -143,11 +141,8 @@
 
     private:
 
- template <typename Definition>
- friend struct grammar;
-
         template <typename Iterator_, typename T0_, typename T1_, typename T2_>
- friend struct grammar_;
+ friend struct grammar;
 
         friend struct detail::rule_decorator;
 
@@ -176,8 +171,8 @@
         {
             // If the following line produces a compilation error stating the
             // 4th parameter is not convertible to the expected type, then you
- // are probably trying to use this rule instance with a skipper
- // which is not compatible with the skipper type used while
+ // are probably trying to use this rule instance with a skipper
+ // which is not compatible with the skipper type used while
             // defining the type of this rule instance.
             return ptr->parse(first, last, context, skipper);
         }

Modified: branches/CMake/release/boost/spirit/home/qi/numeric/int.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/numeric/int.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/numeric/int.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -42,8 +42,8 @@
                 ::call(first, last, attr);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "integer";
         }

Modified: branches/CMake/release/boost/spirit/home/qi/numeric/real.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/numeric/real.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/numeric/real.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -49,8 +49,8 @@
             return detail::real_impl<T, RealPolicies>::parse(first, last, attr, p);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "real number";
         }

Modified: branches/CMake/release/boost/spirit/home/qi/numeric/uint.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/numeric/uint.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/numeric/uint.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -42,8 +42,8 @@
                 ::call(first, last, attr);
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "unsigned integer";
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/alternative.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/alternative.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/alternative.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -82,12 +82,12 @@
             return fusion::any(component.elements, f);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "alternatives[";
             fusion::for_each(component.elements,
- spirit::detail::what_function(result));
+ spirit::detail::what_function<Context>(result, ctx));
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/and_predicate.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/and_predicate.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/and_predicate.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -39,8 +39,8 @@
                 subject(component), i, last, context, skipper, unused);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "and-predicate[";
 
@@ -48,7 +48,7 @@
                 result_of::subject<Component>::type::director
             director;
 
- result += director::what(subject(component));
+ result += director::what(subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/difference.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/difference.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/difference.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -66,8 +66,8 @@
             return ldirector::parse(left(component), first, last, context, skipper, attr);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "difference[";
 
@@ -79,9 +79,9 @@
                 result_of::right<Component>::type::director
             rdirector;
 
- result += ldirector::what(left(component));
+ result += ldirector::what(left(component), ctx);
             result += ", ";
- result += rdirector::what(right(component));
+ result += rdirector::what(right(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/kleene.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/kleene.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/kleene.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -66,8 +66,8 @@
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "kleene[";
 
@@ -75,7 +75,7 @@
                 result_of::subject<Component>::type::director
             director;
 
- result += director::what(subject(component));
+ result += director::what(subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/list.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/list.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/list.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -72,8 +72,8 @@
         }
 
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "list[";
 
@@ -85,9 +85,9 @@
                 result_of::right<Component>::type::director
             rdirector;
 
- result += ldirector::what(left(component));
+ result += ldirector::what(left(component), ctx);
             result += ", ";
- result += rdirector::what(right(component));
+ result += rdirector::what(right(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/not_predicate.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/not_predicate.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/not_predicate.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -39,8 +39,8 @@
                 subject(component), i, last, context, skipper, unused);
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "not-predicate[";
 
@@ -48,7 +48,7 @@
                 result_of::subject<Component>::type::director
             director;
 
- result += director::what(subject(component));
+ result += director::what(subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/optional.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/optional.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/optional.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -67,8 +67,8 @@
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "optional[";
 
@@ -76,7 +76,7 @@
                 result_of::subject<Component>::type::director
             director;
 
- result += director::what(subject(component));
+ result += director::what(subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/permutation.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/permutation.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/permutation.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -81,12 +81,12 @@
             return result;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "permutation[";
             fusion::for_each(component.elements,
- spirit::detail::what_function(result));
+ spirit::detail::what_function<Context>(result, ctx));
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/plus.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/plus.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/plus.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -73,8 +73,8 @@
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "plus[";
 
@@ -82,7 +82,7 @@
                 result_of::subject<Component>::type::director
             director;
 
- result += director::what(subject(component));
+ result += director::what(subject(component), ctx);
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/sequence_base.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/sequence_base.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/sequence_base.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -75,12 +75,12 @@
             return true;
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = Derived::what_();
             fusion::for_each(component.elements,
- spirit::detail::what_function(result));
+ spirit::detail::what_function<Context>(result, ctx));
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/operator/sequential_or.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/operator/sequential_or.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/operator/sequential_or.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -60,12 +60,12 @@
         }
 
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             std::string result = "sequential-or[";
             fusion::for_each(component.elements,
- spirit::detail::what_function(result));
+ spirit::detail::what_function<Context>(result, ctx));
             result += "]";
             return result;
         }

Modified: branches/CMake/release/boost/spirit/home/qi/stream/stream.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/stream/stream.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/stream/stream.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -61,8 +61,8 @@
             return in.good() || in.eof();
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return "any-stream";
         }

Modified: branches/CMake/release/boost/spirit/home/qi/string/lit.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/string/lit.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/string/lit.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -53,8 +53,8 @@
             );
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return std::string("\"")
                 + spirit::detail::to_narrow_string(
@@ -102,10 +102,14 @@
             );
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
- return "string";
+ return std::string("\"")
+ + spirit::detail::to_narrow_string(
+ fusion::at_c<0>(component.elements)(unused, ctx))
+ + std::string("\"")
+ ;
         }
     };
 
@@ -141,8 +145,8 @@
             );
         }
 
- template <typename Component>
- static std::string what(Component const& component)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             return std::string("case-insensitive \"")
                 + spirit::detail::to_narrow_string(

Modified: branches/CMake/release/boost/spirit/home/qi/string/symbols.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/string/symbols.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/string/symbols.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -62,8 +62,8 @@
             return false;
         }
 
- template <typename Component>
- static std::string what(Component const&)
+ template <typename Component, typename Context>
+ static std::string what(Component const& component, Context const& ctx)
         {
             // perhaps we should show some of the contents?
             return "symbols";

Modified: branches/CMake/release/boost/spirit/home/qi/what.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/qi/what.hpp (original)
+++ branches/CMake/release/boost/spirit/home/qi/what.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -26,7 +26,7 @@
         typedef typename result_of::as_component<qi::domain, Expr>::type component;
         typedef typename component::director director;
         component c = spirit::as_component(qi::domain(), xpr);
- return director::what(c);
+ return director::what(c, unused);
     }
 }}}
 

Modified: branches/CMake/release/boost/spirit/home/support/detail/action_dispatch.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/action_dispatch.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/action_dispatch.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -15,8 +15,9 @@
 namespace boost { namespace spirit { namespace detail
 {
     // general handler for everything not explicitly specialized below
- template <typename F, typename Attribute, typename Context, typename Pass>
- bool action_dispatch(F const& f, Attribute& attr, Context& context, Pass)
+ template <typename F, typename Attribute, typename Context, bool IsSequence>
+ bool action_dispatch(F const& f, Attribute& attr, Context& context
+ , mpl::bool_<IsSequence>)
     {
         bool pass = true;
         f(attr, context, pass);
@@ -24,7 +25,7 @@
     }
 
     // handler for phoenix actors
-
+
     // If the component this action has to be invoked for is a sequence, we
     // wrap any non-fusion sequence into a fusion sequence (done by pass_value)
     // and pass through any fusion sequence.
@@ -46,16 +47,17 @@
       , Attribute& attr, Context& context, mpl::false_)
     {
         bool pass = true;
- f (fusion::vector<Attribute&>(attr), context, pass);
+ fusion::vector<Attribute&> wrapped_attr(attr);
+ f (wrapped_attr, context, pass);
         return pass;
     }
 
     // specializations for plain function pointers taking a different number of
     // arguments
     template <typename RT, typename A0, typename A1, typename A2
- , typename Attribute, typename Context, typename Pass>
+ , typename Attribute, typename Context, bool IsSequence>
     bool action_dispatch(RT(*f)(A0, A1, A2)
- , Attribute& attr, Context& context, Pass)
+ , Attribute& attr, Context& context, mpl::bool_<IsSequence>)
     {
         bool pass = true;
         f(attr, context, pass);
@@ -63,26 +65,27 @@
     }
 
     template <typename RT, typename A0, typename A1
- , typename Attribute, typename Context, typename Pass>
+ , typename Attribute, typename Context, bool IsSequence>
     bool action_dispatch(RT(*f)(A0, A1)
- , Attribute& attr, Context& context, Pass)
+ , Attribute& attr, Context& context, mpl::bool_<IsSequence>)
     {
         f(attr, context);
         return true;
     }
 
     template <typename RT, typename A0
- , typename Attribute, typename Context, typename Pass>
+ , typename Attribute, typename Context, bool IsSequence>
     bool action_dispatch(RT(*f)(A0)
- , Attribute& attr, Context&, Pass)
+ , Attribute& attr, Context&, mpl::bool_<IsSequence>)
     {
         f(attr);
         return true;
     }
 
- template <typename RT, typename Attribute, typename Context, typename Pass>
+ template <typename RT
+ , typename Attribute, typename Context, bool IsSequence>
     bool action_dispatch(RT(*f)()
- , Attribute&, Context&, Pass)
+ , Attribute&, Context&, mpl::bool_<IsSequence>)
     {
         f();
         return true;

Modified: branches/CMake/release/boost/spirit/home/support/detail/hold_any.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/hold_any.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/hold_any.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -43,7 +43,7 @@
           : from(src.name()), to(dest.name())
         {}
 
- virtual const char* what() throw() { return "bad any cast"; }
+ virtual const char* what() const throw() { return "bad any cast"; }
 
         const char* from;
         const char* to;

Deleted: branches/CMake/release/boost/spirit/home/support/detail/lexer/char_state_machine.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/char_state_machine.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,62 +0,0 @@
-// char_state_machine.hpp
-// Copyright (c) 2007 Ben Hanson
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
-// file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-#ifndef BOOST_LEXER_CHAR_STATE_MACHINE_HPP
-#define BOOST_LEXER_CHAR_STATE_MACHINE_HPP
-
-#include "consts.hpp"
-#include <map>
-#include "size_t.hpp"
-#include "string_token.hpp"
-#include <vector>
-
-namespace boost
-{
-namespace lexer
-{
-template<typename CharT>
-struct basic_char_state_machine
-{
- struct state
- {
- typedef basic_string_token<CharT> string_token;
- typedef std::map<std::size_t, string_token> size_t_string_token_map;
- typedef std::pair<std::size_t, string_token> size_t_string_token_pair;
-
- bool _end_state;
- std::size_t _id;
- std::size_t _state;
- std::size_t _bol_index;
- std::size_t _eol_index;
- size_t_string_token_map _transitions;
-
- state () :
- _end_state (false),
- _id (0),
- _state (0),
- _bol_index (npos),
- _eol_index (npos)
- {
- }
- };
-
- typedef std::vector<state> state_vector;
- typedef std::vector<state_vector> state_vector_vector;
-
- state_vector_vector _sm_vector;
-
- void clear ()
- {
- _sm_vector.clear ();
- }
-};
-
-typedef basic_char_state_machine<char> char_state_machine;
-typedef basic_char_state_machine<wchar_t> wchar_state_machine;
-
-}
-}
-
-#endif

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/char_traits.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/char_traits.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/char_traits.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // char_traits.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -13,39 +13,41 @@
 {
 namespace lexer
 {
- template<typename CharT>
- struct char_traits
- {
- typedef CharT index_type;
-
- static index_type call(CharT ch)
- {
- return ch;
- }
- };
+template<typename CharT>
+struct char_traits
+{
+ typedef CharT char_type;
+ typedef CharT index_type;
 
- template<>
- struct char_traits<char>
+ static index_type call (CharT ch)
     {
- typedef unsigned char index_type;
-
- static index_type call(char ch)
- {
- return static_cast<index_type>(ch);
- }
- };
+ return ch;
+ }
+};
 
- template<>
- struct char_traits<wchar_t>
+template<>
+struct char_traits<char>
+{
+ typedef char char_type;
+ typedef unsigned char index_type;
+
+ static index_type call (char ch)
     {
- typedef wchar_t index_type;
+ return static_cast<index_type>(ch);
+ }
+};
 
- static index_type call(wchar_t ch)
- {
- return ch;
- }
- };
+template<>
+struct char_traits<wchar_t>
+{
+ typedef wchar_t char_type;
+ typedef wchar_t index_type;
 
+ static index_type call (wchar_t ch)
+ {
+ return ch;
+ }
+};
 }
 }
 

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/consts.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/consts.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/consts.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // consts.h
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -14,16 +14,16 @@
 {
 namespace lexer
 {
- // 0 = end state, 1 = id, 2 = lex state, 3 = bol, 4 = eol
+ // 0 = end state, 1 = id, 2 = lex state, 3 = bol, 4 = eol,
     // 5 = dead_state_index
     enum {end_state_index, id_index, state_index, bol_index, eol_index,
         dead_state_index, dfa_offset};
 
     const std::size_t max_macro_len = 20;
     const std::size_t num_chars = 256;
- const std::size_t num_wchar_ts =
- (boost::integer_traits<wchar_t>::const_max < 0x110000) ?
- boost::integer_traits<wchar_t>::const_max : 0x110000;
+ const std::size_t num_wchar_ts =
+ (boost::integer_traits<wchar_t>::const_max < 0x110000) ?
+ boost::integer_traits<wchar_t>::const_max : 0x110000;
     const std::size_t null_token = static_cast<std::size_t> (~0);
     const std::size_t bol_token = static_cast<std::size_t> (~1);
     const std::size_t eol_token = static_cast<std::size_t> (~2);

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/containers/ptr_list.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/containers/ptr_list.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/containers/ptr_list.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // ptr_list.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -12,7 +12,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 template<typename Type>
 class ptr_list

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/containers/ptr_vector.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/containers/ptr_vector.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/containers/ptr_vector.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // ptr_vector.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -13,7 +13,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 template<typename Type>
 class ptr_vector
@@ -60,6 +60,25 @@
         return _vector[index_];
     }
 
+ bool operator == (const ptr_vector &rhs_) const
+ {
+ bool equal_ = _vector.size () == rhs_._vector.size ();
+
+ if (equal_)
+ {
+ typename vector::const_iterator lhs_iter_ = _vector.begin ();
+ typename vector::const_iterator end_ = _vector.end ();
+ typename vector::const_iterator rhs_iter_ = rhs_._vector.begin ();
+
+ for (; equal_ && lhs_iter_ != end_; ++lhs_iter_, ++rhs_iter_)
+ {
+ equal_ = **lhs_iter_ == **rhs_iter_;
+ }
+ }
+
+ return equal_;
+ }
+
     void clear ()
     {
         if (!_vector.empty ())

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/debug.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/debug.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/debug.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // debug.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -112,55 +112,56 @@
         }
     }
 
- static void dump (const state_machine &state_machine_, ostream &stream_)
+ static void dump (const basic_state_machine<CharT> &state_machine_, ostream &stream_)
     {
- basic_char_state_machine<CharT> char_state_machine_;
+ typename basic_state_machine<CharT>::iterator iter_ =
+ state_machine_.begin ();
+ typename basic_state_machine<CharT>::iterator end_ =
+ state_machine_.end ();
 
- state_machine_.human_readable (char_state_machine_);
-
- for (std::size_t state_ = 0,
- states_ = char_state_machine_._sm_vector.size ();
- state_ < states_; ++state_)
+ for (std::size_t dfa_ = 0, dfas_ = state_machine_.size ();
+ dfa_ < dfas_; ++dfa_)
         {
- const typename basic_char_state_machine<CharT>::state *ptr_ =
- &char_state_machine_._sm_vector[state_].front ();
- const std::size_t size_ = char_state_machine_.
- _sm_vector[state_].size ();
+ const std::size_t states_ = iter_->states;
 
- for (std::size_t i_ = 0; i_ < size_; ++i_, ++ptr_)
+ for (std::size_t i_ = 0; i_ < states_; ++i_)
             {
                 state (stream_);
                 stream_ << i_ << std::endl;
 
- if (ptr_->_end_state)
+ if (iter_->end_state)
                 {
                     end_state (stream_);
- stream_ << ptr_->_id;
+ stream_ << iter_->id;
                     dfa (stream_);
- stream_ << ptr_->_state;
+ stream_ << iter_->goto_dfa;
                     stream_ << std::endl;
                 }
 
- if (ptr_->_bol_index != npos)
+ if (iter_->bol_index != npos)
                 {
                     bol (stream_);
- stream_ << ptr_->_bol_index << std::endl;
+ stream_ << iter_->bol_index << std::endl;
                 }
 
- if (ptr_->_eol_index != npos)
+ if (iter_->eol_index != npos)
                 {
                     eol (stream_);
- stream_ << ptr_->_eol_index << std::endl;
+ stream_ << iter_->eol_index << std::endl;
+ }
+
+ const std::size_t transitions_ = iter_->transitions;
+
+ if (transitions_ == 0)
+ {
+ ++iter_;
                 }
 
- for (typename basic_char_state_machine<CharT>::state::
- size_t_string_token_map::const_iterator iter_ = ptr_->
- _transitions.begin (), end_ = ptr_->_transitions.end ();
- iter_ != end_; ++iter_)
+ for (std::size_t t_ = 0; t_ < transitions_; ++t_)
                 {
- std::size_t transition_ = iter_->first;
+ std::size_t goto_state_ = iter_->goto_state;
 
- if (iter_->second.any ())
+ if (iter_->token.any ())
                     {
                         any (stream_);
                     }
@@ -168,20 +169,30 @@
                     {
                         open_bracket (stream_);
 
- if (iter_->second._negated)
+ if (iter_->token._negated)
                         {
                             negated (stream_);
                         }
 
                         string charset_;
+ CharT c_ = 0;
 
- escape_control_chars (iter_->second._charset,
+ escape_control_chars (iter_->token._charset,
                             charset_);
+ c_ = *charset_.c_str ();
+
+ if (!iter_->token._negated &&
+ (c_ == '^' || c_ == ']'))
+ {
+ stream_ << '\\';
+ }
+
                         stream_ << charset_;
                         close_bracket (stream_);
                     }
 
- stream_ << transition_ << std::endl;
+ stream_ << goto_state_ << std::endl;
+ ++iter_;
                 }
 
                 stream_ << std::endl;

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/generate_cpp.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/generate_cpp.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/generate_cpp.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,10 +1,10 @@
-// cpp_code.hpp
-// Copyright (c) 2008 Ben Hanson
+// generate_cpp_code.hpp
+// Copyright (c) 2008 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-#ifndef BOOST_LEXER_EXAMPLE_CPP_CODE_HPP
-#define BOOST_LEXER_EXAMPLE_CPP_CODE_HPP
+#ifndef BOOST_LEXER_GENERATE_CPP_CODE_HPP
+#define BOOST_LEXER_GENERATE_CPP_CODE_HPP
 
 #include "char_traits.hpp"
 #include "consts.hpp"
@@ -19,7 +19,8 @@
 {
 namespace lexer
 {
-void generate_cpp (const state_machine &sm_, std::ostream &os_,
+template<typename CharT>
+void generate_cpp (const basic_state_machine<CharT> &sm_, std::ostream &os_,
     const bool use_pointers_ = false, const bool skip_unknown_ = true,
     const bool optimise_parameters_ = true, const char *name_ = "next_token")
 {

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/generator.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/generator.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/generator.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,14 @@
 // generator.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 #ifndef BOOST_LEXER_GENERATOR_HPP
 #define BOOST_LEXER_GENERATOR_HPP
 
-#include <cstring> // memcmp
 #include "char_traits.hpp"
+// memcmp()
+#include <cstring>
 #include "partition/charset.hpp"
 #include "partition/equivset.hpp"
 #include <memory>
@@ -25,10 +26,10 @@
 class basic_generator
 {
 public:
- typedef state_machine::size_t_vector size_t_vector;
+ typedef typename basic_state_machine<CharT>::size_t_vector size_t_vector;
     typedef basic_rules<CharT> rules;
 
- static void build (const rules &rules_, state_machine &state_machine_)
+ static void build (const rules &rules_, basic_state_machine<CharT> &state_machine_)
     {
         std::size_t index_ = 0;
         std::size_t size_ = rules_.statemap ().size ();
@@ -56,7 +57,7 @@
                 // vector mapping token indexes to partitioned token index sets
                 index_set_vector set_mapping_;
                 // syntax tree
- internal::node *root_ = build_tree (rules_, index_,
+ detail::node *root_ = build_tree (rules_, index_,
                     node_ptr_vector_, state_machine_._lookup[index_],
                     set_mapping_, state_machine_._dfa_alphabet[index_],
                     state_machine_._seen_BOL_assertion,
@@ -69,7 +70,7 @@
         }
     }
 
- static void minimise (state_machine &state_machine_)
+ static void minimise (basic_state_machine<CharT> &state_machine_)
     {
         const std::size_t machines_ = state_machine_._dfa->size ();
 
@@ -92,30 +93,30 @@
     }
 
 protected:
- typedef internal::basic_charset<CharT> charset;
- typedef internal::ptr_list<charset> charset_list;
+ typedef detail::basic_charset<CharT> charset;
+ typedef detail::ptr_list<charset> charset_list;
     typedef std::auto_ptr<charset> charset_ptr;
- typedef internal::equivset equivset;
- typedef internal::ptr_list<equivset> equivset_list;
+ typedef detail::equivset equivset;
+ typedef detail::ptr_list<equivset> equivset_list;
     typedef std::auto_ptr<equivset> equivset_ptr;
     typedef typename charset::index_set index_set;
     typedef std::vector<index_set> index_set_vector;
- typedef internal::basic_parser<CharT> parser;
+ typedef detail::basic_parser<CharT> parser;
     typedef typename parser::node_ptr_vector node_ptr_vector;
- typedef std::set<const internal::node *> node_set;
- typedef internal::ptr_vector<node_set> node_set_vector;
- typedef std::vector<const internal::node *> node_vector;
- typedef internal::ptr_vector<node_vector> node_vector_vector;
+ typedef std::set<const detail::node *> node_set;
+ typedef detail::ptr_vector<node_set> node_set_vector;
+ typedef std::vector<const detail::node *> node_vector;
+ typedef detail::ptr_vector<node_vector> node_vector_vector;
     typedef typename parser::string string;
     typedef std::pair<string, string> string_pair;
     typedef typename parser::tokeniser::string_token string_token;
     typedef std::deque<string_pair> macro_deque;
- typedef std::pair<string, const internal::node *> macro_pair;
+ typedef std::pair<string, const detail::node *> macro_pair;
     typedef typename parser::macro_map::iterator macro_iter;
     typedef std::pair<macro_iter, bool> macro_iter_pair;
     typedef typename parser::tokeniser::token_map token_map;
 
- static internal::node *build_tree (const rules &rules_,
+ static detail::node *build_tree (const rules &rules_,
         const std::size_t state_, node_ptr_vector &node_ptr_vector_,
         size_t_vector *lookup_, index_set_vector &set_mapping_,
         std::size_t &dfa_alphabet_, bool &seen_BOL_assertion_,
@@ -139,14 +140,14 @@
         const typename rules::string_pair_deque &macrodeque_ =
             rules_.macrodeque ();
         typename parser::macro_map macromap_;
- typename internal::node::node_vector tree_vector_;
+ typename detail::node::node_vector tree_vector_;
 
         build_macros (token_map_, macrodeque_, macromap_,
             rules_.case_sensitive (), rules_.locale (), node_ptr_vector_,
             rules_.dot_not_newline (), seen_BOL_assertion_,
             seen_EOL_assertion_);
 
- internal::node *root_ = parser::parse (regex_.c_str (),
+ detail::node *root_ = parser::parse (regex_.c_str (),
             regex_.c_str () + regex_.size (), *ids_iter_, *states_iter_,
             rules_.case_sensitive (), rules_.dot_not_newline (),
             rules_.locale (), node_ptr_vector_, macromap_, token_map_,
@@ -178,9 +179,9 @@
         if (seen_BOL_assertion_)
         {
             // Fixup BOLs
- typename internal::node::node_vector::iterator iter_ =
+ typename detail::node::node_vector::iterator iter_ =
                 tree_vector_.begin ();
- typename internal::node::node_vector::iterator end_ =
+ typename detail::node::node_vector::iterator end_ =
                 tree_vector_.end ();
 
             for (; iter_ != end_; ++iter_)
@@ -191,9 +192,9 @@
 
         // join trees
         {
- typename internal::node::node_vector::iterator iter_ =
+ typename detail::node::node_vector::iterator iter_ =
                 tree_vector_.begin ();
- typename internal::node::node_vector::iterator end_ =
+ typename detail::node::node_vector::iterator end_ =
                 tree_vector_.end ();
 
             if (iter_ != end_)
@@ -205,7 +206,7 @@
             for (; iter_ != end_; ++iter_)
             {
                 node_ptr_vector_->push_back (0);
- node_ptr_vector_->back () = new internal::selection_node
+ node_ptr_vector_->back () = new detail::selection_node
                     (root_, *iter_);
                 root_ = node_ptr_vector_->back ();
             }
@@ -256,7 +257,7 @@
         {
             const typename rules::string &name_ = iter_->first;
             const typename rules::string &regex_ = iter_->second;
- internal::node *node_ = parser::parse (regex_.c_str (),
+ detail::node *node_ = parser::parse (regex_.c_str (),
                 regex_.c_str () + regex_.size (), 0, 0, case_sensitive_,
                 not_dot_newline_, locale_, node_ptr_vector_, macromap_,
                 token_map_, seen_BOL_assertion_, seen_EOL_assertion_);
@@ -267,11 +268,11 @@
         }
     }
 
- static void build_dfa (internal::node *root_,
+ static void build_dfa (detail::node *root_,
         const index_set_vector &set_mapping_, const std::size_t dfa_alphabet_,
         size_t_vector &dfa_)
     {
- typename internal::node::node_vector *followpos_ =
+ typename detail::node::node_vector *followpos_ =
             &root_->firstpos ();
         node_set_vector seen_sets_;
         node_vector_vector seen_vectors_;
@@ -302,7 +303,10 @@
                 {
                     ptr_ = &dfa_.front () + ((index_ + 1) * dfa_alphabet_);
 
- for (typename internal::equivset::index_vector::const_iterator
+ // Prune abstemious transitions from end states.
+ if (*ptr_ && !equivset_->_greedy) continue;
+
+ for (typename detail::equivset::index_vector::const_iterator
                         equiv_iter_ = equivset_->_index_vector.begin (),
                         equiv_end_ = equivset_->_index_vector.end ();
                         equiv_iter_ != equiv_end_; ++equiv_iter_)
@@ -333,7 +337,7 @@
         }
     }
 
- static std::size_t closure (typename internal::node::node_vector *followpos_,
+ static std::size_t closure (typename detail::node::node_vector *followpos_,
         node_set_vector &seen_sets_, node_vector_vector &seen_vectors_,
         size_t_vector &hash_vector_, const std::size_t size_, size_t_vector &dfa_)
     {
@@ -348,12 +352,12 @@
         std::auto_ptr<node_set> set_ptr_ (new node_set);
         std::auto_ptr<node_vector> vector_ptr_ (new node_vector);
 
- for (typename internal::node::node_vector::const_iterator iter_ =
+ for (typename detail::node::node_vector::const_iterator iter_ =
             followpos_->begin (), end_ = followpos_->end ();
             iter_ != end_; ++iter_)
         {
- closure_ex (*iter_, end_state_, id_, state_, followpos_,
- set_ptr_.get (), vector_ptr_.get (), hash_);
+ closure_ex (*iter_, end_state_, id_, state_, set_ptr_.get (),
+ vector_ptr_.get (), hash_);
         }
 
         bool found_ = false;
@@ -399,9 +403,8 @@
         return index_;
     }
 
- static void closure_ex (internal::node *node_, bool &end_state_,
- std::size_t &id_, std::size_t &state_,
- typename internal::node::node_vector * /*followpos_*/, node_set *set_ptr_,
+ static void closure_ex (detail::node *node_, bool &end_state_,
+ std::size_t &id_, std::size_t &state_, node_set *set_ptr_,
         node_vector *vector_ptr_, std::size_t &hash_)
     {
         const bool temp_end_state_ = node_->end_state ();
@@ -529,7 +532,7 @@
 
         if (token_._negated)
         {
- CharT curr_char_ = sizeof(CharT) == 1 ? -128 : 0;
+ CharT curr_char_ = sizeof (CharT) == 1 ? -128 : 0;
             std::size_t i_ = 0;
 
             while (curr_ < chars_end_)
@@ -655,7 +658,7 @@
 
         for (; iter_ != end_; ++iter_)
         {
- const internal::node *node_ = *iter_;
+ const detail::node *node_ = *iter_;
 
             if (!node_->end_state ())
             {
@@ -671,31 +674,31 @@
 
                         index_set_.insert (token_);
                         list_->back () = new equivset (index_set_,
- node_->followpos ());
+ node_->greedy (), node_->token (), node_->followpos ());
                     }
                     else
                     {
                         list_->back () = new equivset (set_mapping_[token_],
- node_->followpos ());
+ node_->greedy (), node_->token (), node_->followpos ());
                     }
                 }
             }
         }
     }
 
- static void fixup_bol (internal::node * &root_,
+ static void fixup_bol (detail::node * &root_,
         node_ptr_vector &node_ptr_vector_)
     {
- typename internal::node::node_vector *first_ = &root_->firstpos ();
+ typename detail::node::node_vector *first_ = &root_->firstpos ();
         bool found_ = false;
- typename internal::node::node_vector::const_iterator iter_ =
+ typename detail::node::node_vector::const_iterator iter_ =
             first_->begin ();
- typename internal::node::node_vector::const_iterator end_ =
+ typename detail::node::node_vector::const_iterator end_ =
             first_->end ();
 
         for (; iter_ != end_; ++iter_)
         {
- const internal::node *node_ = *iter_;
+ const detail::node *node_ = *iter_;
 
             found_ = !node_->end_state () && node_->token () == bol_token;
 
@@ -705,23 +708,23 @@
         if (!found_)
         {
             node_ptr_vector_->push_back (0);
- node_ptr_vector_->back () = new internal::leaf_node (bol_token);
+ node_ptr_vector_->back () = new detail::leaf_node (bol_token, true);
 
- internal::node *lhs_ = node_ptr_vector_->back ();
+ detail::node *lhs_ = node_ptr_vector_->back ();
 
             node_ptr_vector_->push_back (0);
- node_ptr_vector_->back () = new internal::leaf_node (null_token);
+ node_ptr_vector_->back () = new detail::leaf_node (null_token, true);
 
- internal::node *rhs_ = node_ptr_vector_->back ();
+ detail::node *rhs_ = node_ptr_vector_->back ();
 
             node_ptr_vector_->push_back (0);
             node_ptr_vector_->back () =
- new internal::selection_node (lhs_, rhs_);
+ new detail::selection_node (lhs_, rhs_);
             lhs_ = node_ptr_vector_->back ();
 
             node_ptr_vector_->push_back (0);
             node_ptr_vector_->back () =
- new internal::sequence_node (lhs_, root_);
+ new detail::sequence_node (lhs_, root_);
             root_ = node_ptr_vector_->back ();
         }
     }
@@ -755,8 +758,10 @@
                     continue;
                 }
 
- using namespace std; // some systems have memcmp in namespace std
- if (memcmp (first_, second_, sizeof(std::size_t) *
+ // Some systems have memcmp in namespace std.
+ using namespace std;
+
+ if (memcmp (first_, second_, sizeof (std::size_t) *
                     dfa_alphabet_) == 0)
                 {
                     index_set_.insert (curr_index_);

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/parser.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/parser.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/parser.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // parser.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -20,7 +20,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 template<typename CharT>
 class basic_parser
@@ -104,7 +104,7 @@
 
         assert (tree_node_stack_.size () == 1);
 
- node *lhs_node_ = tree_node_stack_.top ();
+ node *lhs_node_ = tree_node_stack_.top ();
 
         tree_node_stack_.pop ();
 
@@ -187,28 +187,38 @@
             repeat (handle_, token_stack_);
             break;
         case token::CHARSET:
- charset (handle_, token_stack_, node_vector_ptr_, tree_node_stack_);
+ charset (handle_, token_stack_, node_vector_ptr_,
+ tree_node_stack_);
             break;
         case token::MACRO:
- macro (handle_, token_stack_, macromap_, node_vector_ptr_, tree_node_stack_);
+ macro (handle_, token_stack_, macromap_, node_vector_ptr_,
+ tree_node_stack_);
             break;
         case token::OPENPAREN:
             openparen (handle_, token_stack_);
             break;
         case token::OPT:
- optional (node_vector_ptr_, tree_node_stack_);
+ case token::AOPT:
+ optional (rhs_._type == token::OPT, node_vector_ptr_,
+ tree_node_stack_);
             token_stack_.push (token::DUP);
             break;
         case token::ZEROORMORE:
- zero_or_more (node_vector_ptr_, tree_node_stack_);
+ case token::AZEROORMORE:
+ zero_or_more (rhs_._type == token::ZEROORMORE, node_vector_ptr_,
+ tree_node_stack_);
             token_stack_.push (token::DUP);
             break;
         case token::ONEORMORE:
- one_or_more (node_vector_ptr_, tree_node_stack_);
+ case token::AONEORMORE:
+ one_or_more (rhs_._type == token::ONEORMORE, node_vector_ptr_,
+ tree_node_stack_);
             token_stack_.push (token::DUP);
             break;
         case token::REPEATN:
- repeatn (handle_.top (), node_vector_ptr_, tree_node_stack_);
+ case token::AREPEATN:
+ repeatn (rhs_._type == token::REPEATN, handle_.top (),
+ node_vector_ptr_, tree_node_stack_);
             token_stack_.push (token::DUP);
             break;
         default:
@@ -243,7 +253,7 @@
         node_ptr_vector &node_ptr_vector_, tree_node_stack &tree_node_stack_)
     {
         assert (handle_.top ()._type == token::SUB &&
- (handle_.size () == 1 || handle_.size () == 2));
+ handle_.size () == 1 || handle_.size () == 2);
 
         if (handle_.size () == 1)
         {
@@ -262,7 +272,7 @@
     static void repeat (token_stack &handle_, token_stack &token_stack_)
     {
         assert (handle_.top ()._type == token::REPEAT &&
- (handle_.size () >= 1 && handle_.size () <= 3));
+ handle_.size () >= 1 && handle_.size () <= 3);
 
         if (handle_.size () == 1)
         {
@@ -286,7 +296,7 @@
 
         const size_t id_ = handle_.top ()._id;
 
- node_ptr_vector_->back () = new leaf_node (id_);
+ node_ptr_vector_->back () = new leaf_node (id_, true);
         tree_node_stack_.push (node_ptr_vector_->back ());
         token_stack_.push (token::REPEAT);
     }
@@ -352,7 +362,7 @@
     static void sequence (node_ptr_vector &node_ptr_vector_,
         tree_node_stack &tree_node_stack_)
     {
- node *rhs_ = tree_node_stack_.top ();
+ node *rhs_ = tree_node_stack_.top ();
 
         tree_node_stack_.pop ();
 
@@ -363,15 +373,24 @@
         tree_node_stack_.top () = node_ptr_vector_->back ();
     }
 
- static void optional (node_ptr_vector &node_ptr_vector_,
- tree_node_stack &tree_node_stack_)
+ static void optional (const bool greedy_,
+ node_ptr_vector &node_ptr_vector_, tree_node_stack &tree_node_stack_)
     {
         // perform ?
         node *lhs_ = tree_node_stack_.top ();
+ // You don't know if lhs_ is a leaf_node, so get firstpos.
+ node::node_vector &firstpos_ = lhs_->firstpos();
+
+ for (node::node_vector::iterator iter_ = firstpos_.begin (),
+ end_ = firstpos_.end (); iter_ != end_; ++iter_)
+ {
+ // These are leaf_nodes!
+ (*iter_)->greedy (greedy_);
+ }
 
         node_ptr_vector_->push_back (0);
 
- node *rhs_ = new leaf_node (null_token);
+ node *rhs_ = new leaf_node (null_token, greedy_);
 
         node_ptr_vector_->back () = rhs_;
         node_ptr_vector_->push_back (0);
@@ -379,27 +398,27 @@
         tree_node_stack_.top () = node_ptr_vector_->back ();
     }
 
- static void zero_or_more (node_ptr_vector &node_ptr_vector_,
- tree_node_stack &tree_node_stack_)
+ static void zero_or_more (const bool greedy_,
+ node_ptr_vector &node_ptr_vector_, tree_node_stack &tree_node_stack_)
     {
         // perform *
         node *ptr_ = tree_node_stack_.top ();
 
         node_ptr_vector_->push_back (0);
- node_ptr_vector_->back () = new iteration_node (ptr_);
+ node_ptr_vector_->back () = new iteration_node (ptr_, greedy_);
         tree_node_stack_.top () = node_ptr_vector_->back ();
     }
 
- static void one_or_more (node_ptr_vector &node_ptr_vector_,
- tree_node_stack &tree_node_stack_)
+ static void one_or_more (const bool greedy_,
+ node_ptr_vector &node_ptr_vector_, tree_node_stack &tree_node_stack_)
     {
         // perform +
- node *lhs_ = tree_node_stack_.top ();
+ node *lhs_ = tree_node_stack_.top ();
         node *copy_ = lhs_->copy (node_ptr_vector_);
 
         node_ptr_vector_->push_back (0);
 
- node *rhs_ = new iteration_node (copy_);
+ node *rhs_ = new iteration_node (copy_, greedy_);
 
         node_ptr_vector_->back () = rhs_;
         node_ptr_vector_->push_back (0);
@@ -407,7 +426,7 @@
         tree_node_stack_.top () = node_ptr_vector_->back ();
     }
 
- static void repeatn (const token &token_,
+ static void repeatn (const bool greedy_, const token &token_,
         node_ptr_vector &node_ptr_vector_, tree_node_stack &tree_node_stack_)
     {
         // perform {n[,[m]]}
@@ -423,7 +442,7 @@
 
             if (token_._min == 0)
             {
- optional (node_ptr_vector_, tree_node_stack_);
+ optional (greedy_, node_ptr_vector_, tree_node_stack_);
             }
 
             node *prev_ = tree_node_stack_.top ()->copy (node_ptr_vector_);
@@ -431,7 +450,7 @@
 
             for (std::size_t i_ = 2; i_ < top_; ++i_)
             {
- node *temp_ = prev_->copy (node_ptr_vector_);
+ node *temp_ = prev_->copy (node_ptr_vector_);
 
                 curr_ = temp_;
                 tree_node_stack_.push (0);
@@ -444,7 +463,7 @@
             {
                 if (token_._min > 1)
                 {
- node *temp_ = prev_->copy (node_ptr_vector_);
+ node *temp_ = prev_->copy (node_ptr_vector_);
 
                     curr_ = temp_;
                     tree_node_stack_.push (0);
@@ -457,9 +476,9 @@
                 {
                     tree_node_stack_.push (0);
                     tree_node_stack_.top () = prev_;
- optional (node_ptr_vector_, tree_node_stack_);
+ optional (greedy_, node_ptr_vector_, tree_node_stack_);
 
- node *temp_ = tree_node_stack_.top ();
+ node *temp_ = tree_node_stack_.top ();
 
                     tree_node_stack_.pop ();
                     prev_ = temp_;
@@ -481,9 +500,9 @@
                 {
                     tree_node_stack_.push (0);
                     tree_node_stack_.top () = prev_;
- zero_or_more (node_ptr_vector_, tree_node_stack_);
+ zero_or_more (greedy_, node_ptr_vector_, tree_node_stack_);
 
- node *temp_ = tree_node_stack_.top ();
+ node *temp_ = tree_node_stack_.top ();
 
                     prev_ = temp_;
                     tree_node_stack_.pop ();

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/num_token.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/num_token.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/num_token.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // num_token.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,23 +7,23 @@
 #define BOOST_LEXER_NUM_TOKEN_HPP
 
 #include <boost/config.hpp>
-#include <boost/detail/workaround.hpp>
-
 #include "../../consts.hpp" // null_token
 #include "../../size_t.hpp"
+#include <boost/detail/workaround.hpp>
 
 namespace boost
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 template<typename CharT>
 struct basic_num_token
 {
     enum type {BEGIN, REGEX, OREXP, SEQUENCE, SUB, EXPRESSION, REPEAT,
- DUP, OR, CHARSET, MACRO, OPENPAREN, CLOSEPAREN, OPT,
- ZEROORMORE, ONEORMORE, REPEATN, END};
+ DUP, OR, CHARSET, MACRO, OPENPAREN, CLOSEPAREN, OPT, AOPT,
+ ZEROORMORE, AZEROORMORE, ONEORMORE, AONEORMORE, REPEATN, AREPEATN,
+ END};
 
     type _type;
     std::size_t _id;
@@ -102,42 +102,45 @@
 
 template<typename CharT>
 const char basic_num_token<CharT>::_precedence_table[END + 1][END + 1] = {
-// BEG, REG, ORE, SEQ, SUB, EXP, RPT, DUP, | , CHR, MCR, ( , ) , ? , * , + , {n}, END
-/*BEGIN*/{' ', '<', '<', '<', '<', '<', '<', ' ', ' ', '<', '<', '<', ' ', ' ', ' ', ' ', ' ', '>'},
-/*REGEX*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '=', ' ', ' ', ' ', ' ', '>'},
-/*OREXP*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '=', '>', '>', ' ', '>', ' ', ' ', ' ', ' ', '>'},
-/* SEQ */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', ' ', '>', ' ', ' ', ' ', ' ', '>'},
-/* SUB */{' ', ' ', ' ', ' ', ' ', '=', '<', ' ', '>', '<', '<', '<', '>', ' ', ' ', ' ', ' ', '>'},
-/*EXPRE*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', '>'},
-/* RPT */{' ', ' ', ' ', ' ', ' ', ' ', ' ', '=', '>', '>', '>', '>', '>', '<', '<', '<', '<', '>'},
-/*DUPLI*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', '>'},
-/* | */{' ', ' ', ' ', '=', '<', '<', '<', ' ', ' ', '<', '<', '<', ' ', ' ', ' ', ' ', ' ', ' '},
-/*CHARA*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>'},
-/*MACRO*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>'},
-/* ( */{' ', '=', '<', '<', '<', '<', '<', ' ', ' ', '<', '<', '<', ' ', ' ', ' ', ' ', ' ', ' '},
-/* ) */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>'},
-/* ? */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', '>'},
-/* * */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', '>'},
-/* + */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', '>'},
-/*{n,m}*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', '>'},
-/* END */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '}
+// BEG, REG, ORE, SEQ, SUB, EXP, RPT, DUP, | , CHR, MCR, ( , ) , ? , ?? , * , *? , + , +?, {n}?, {n}, END
+/*BEGIN*/{' ', '<', '<', '<', '<', '<', '<', ' ', ' ', '<', '<', '<', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/*REGEX*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '=', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/*OREXP*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '=', '>', '>', ' ', '>', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/* SEQ */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', ' ', '>', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/* SUB */{' ', ' ', ' ', ' ', ' ', '=', '<', ' ', '>', '<', '<', '<', '>', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/*EXPRE*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/* RPT */{' ', ' ', ' ', ' ', ' ', ' ', ' ', '=', '>', '>', '>', '>', '>', '<', '<', '<', '<', '<', '<', '<', '<', '>'},
+/*DUPLI*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/* | */{' ', ' ', ' ', '=', '<', '<', '<', ' ', ' ', '<', '<', '<', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
+/*CHARA*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>'},
+/*MACRO*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>'},
+/* ( */{' ', '=', '<', '<', '<', '<', '<', ' ', ' ', '<', '<', '<', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
+/* ) */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>', '>'},
+/* ? */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', '<', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/* ?? */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/* * */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', '<', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/* *? */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/* + */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', '<', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/* +? */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/*{n,m}*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', '<', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/*{nm}?*/{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>', '>', '>', '>', '>', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '>'},
+/* END */{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '}
 };
 
 template<typename CharT>
 const char *basic_num_token<CharT>::_precedence_strings[END + 1] =
-{
 #if BOOST_WORKAROUND(BOOST_INTEL_CXX_VERSION, BOOST_TESTED_AT(910))
- {"BEGIN"}, {"REGEX"}, {"OREXP"}, {"SEQUENCE"}, {"SUB"}, {"EXPRESSION"},
- {"REPEAT"}, {"DUPLICATE"}, {"|"}, {"CHARSET"}, {"MACRO"},
- {"("}, {")"}, {"?"}, {"*"}, {"+"}, {"{n[,[m]]}"}, {"END"}
+{{"BEGIN"}, {"REGEX"}, {"OREXP"}, {"SEQUENCE"}, {"SUB"}, {"EXPRESSION"},
+ {"REPEAT"}, {"DUPLICATE"}, {"|"}, {"CHARSET"}, {"MACRO"},
+ {"("}, {")"}, {"?"}, {"??"}, {"*"}, {"*?"}, {"+"}, {"+?"}, {"{n[,[m]]}"},
+ {"{n[,[m]]}?"}, {"END"}
+}
 #else
- "BEGIN", "REGEX", "OREXP", "SEQUENCE", "SUB", "EXPRESSION",
- "REPEAT", "DUPLICATE", "|", "CHARSET", "MACRO",
- "(", ")", "?", "*", "+", "{n[,[m]]}", "END"
-#endif
-};
-
+{"BEGIN", "REGEX", "OREXP", "SEQUENCE", "SUB", "EXPRESSION", "REPEAT",
+ "DUPLICATE", "|", "CHARSET", "MACRO", "(", ")", "?", "??", "*", "*?",
+ "+", "+?", "{n[,[m]]}", "{n[,[m]]}?", "END"};
 }
+#endif
 }
 }
 

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,14 @@
 // tokeniser.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 #ifndef BOOST_LEXER_RE_TOKENISER_HPP
 #define BOOST_LEXER_RE_TOKENISER_HPP
 
+// memcpy()
+#include <cstring>
 #include <map>
-#include <cstring> // memcpy
 #include "num_token.hpp"
 #include "../../runtime_error.hpp"
 #include "../../size_t.hpp"
@@ -19,7 +20,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 template<typename CharT>
 class basic_re_tokeniser
@@ -93,13 +94,40 @@
                     token_.set (num_token::CLOSEPAREN, null_token);
                     break;
                 case '?':
- token_.set (num_token::OPT, null_token);
+ if (!state_.eos () && *state_._curr == '?')
+ {
+ token_.set (num_token::AOPT, null_token);
+ state_.increment ();
+ }
+ else
+ {
+ token_.set (num_token::OPT, null_token);
+ }
+
                     break;
                 case '*':
- token_.set (num_token::ZEROORMORE, null_token);
+ if (!state_.eos () && *state_._curr == '?')
+ {
+ token_.set (num_token::AZEROORMORE, null_token);
+ state_.increment ();
+ }
+ else
+ {
+ token_.set (num_token::ZEROORMORE, null_token);
+ }
+
                     break;
                 case '+':
- token_.set (num_token::ONEORMORE, null_token);
+ if (!state_.eos () && *state_._curr == '?')
+ {
+ token_.set (num_token::AONEORMORE, null_token);
+ state_.increment ();
+ }
+ else
+ {
+ token_.set (num_token::ONEORMORE, null_token);
+ }
+
                     break;
                 case '{':
                     open_curly (state_, token_);
@@ -223,6 +251,12 @@
         else if (*state_._curr >= '0' && *state_._curr <= '9')
         {
             repeat_n (state_, token_);
+
+ if (!state_.eos () && *state_._curr == '?')
+ {
+ token_._type = num_token::AREPEATN;
+ state_.increment ();
+ }
         }
         else
         {
@@ -391,8 +425,8 @@
                 throw runtime_error ("Unexpected end of regex "
                     "(missing '}').");
             }
- } while (ch_ == '_' || ch_ == '-' || (ch_ >= 'A' && ch_ <= 'Z') ||
- (ch_ >= 'a' && ch_ <= 'z') || (ch_ >= '0' && ch_ <= '9'));
+ } while (ch_ == '_' || ch_ == '-' || ch_ >= 'A' && ch_ <= 'Z' ||
+ ch_ >= 'a' && ch_ <= 'z' || ch_ >= '0' && ch_ <= '9');
 
         if (ch_ != '}')
         {
@@ -422,8 +456,11 @@
         }
 
         token_.set (num_token::MACRO, null_token);
- using namespace std; // some systems have memcpy in namespace std
- memcpy (token_._macro, start_, len_ * sizeof(CharT));
+
+ // Some systems have memcpy in namespace std.
+ using namespace std;
+
+ memcpy (token_._macro, start_, len_ * sizeof (CharT));
         token_._macro[len_] = 0;
     }
 };

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser_helper.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser_helper.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser_helper.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,14 +1,14 @@
 // tokeniser_helper.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 #ifndef BOOST_LEXER_RE_TOKENISER_HELPER_H
 #define BOOST_LEXER_RE_TOKENISER_HELPER_H
 
-#include <cstring> // for strlen
-
 #include "../../char_traits.hpp"
+// strlen()
+#include <cstring>
 #include "../../size_t.hpp"
 #include "re_tokeniser_state.hpp"
 
@@ -16,7 +16,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 template<typename CharT, typename Traits = char_traits<CharT> >
 class basic_re_tokeniser_helper
@@ -192,7 +192,9 @@
 
         if (str_)
         {
- using namespace std; // some systems have strlen in namespace std
+ // Some systems have strlen in namespace std.
+ using namespace std;
+
             str_len_ = strlen (str_);
         }
         else
@@ -232,7 +234,9 @@
 
         if (str_)
         {
- using namespace std; // some systems have wcslen in namespace std
+ // Some systems have wcslen in namespace std.
+ using namespace std;
+
             str_len_ = wcslen (str_);
         }
         else
@@ -310,32 +314,28 @@
     static CharT decode_octal (state &state_)
     {
         std::size_t accumulator_ = 0;
- CharT ch_ = 0;
+ CharT ch_ = *state_._curr;
         unsigned short count_ = 3;
- bool eos_ = state_.next (ch_);
+ bool eos_ = false;
 
- do
+ for (;;)
         {
             accumulator_ *= 8;
             accumulator_ += ch_ - '0';
             --count_;
+ state_.increment ();
             eos_ = state_.eos ();
 
- if (!eos_)
- {
- ch_ = *state_._curr;
+ if (!count_ || eos_) break;
 
- // Don't consume invalid chars!
- if (ch_ >= '0' && ch_ <= '7')
- {
- state_.increment ();
- }
- else
- {
- eos_ = true;
- }
+ ch_ = *state_._curr;
+
+ // Don't consume invalid chars!
+ if (ch_ < '0' || ch_ > '7')
+ {
+ break;
             }
- } while (!eos_ && count_);
+ }
 
         return static_cast<CharT> (accumulator_);
     }

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser_state.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser_state.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser_state.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // tokeniser_state.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -13,7 +13,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 template<typename CharT>
 struct basic_re_tokeniser_state

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/end_node.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/end_node.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/end_node.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // end_node.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -13,7 +13,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 class end_node : public node
 {

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/iteration_node.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/iteration_node.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/iteration_node.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // iteration_node.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -12,14 +12,15 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 class iteration_node : public node
 {
 public:
- iteration_node (node *next_) :
+ iteration_node (node *next_, const bool greedy_) :
         node (true),
- _next (next_)
+ _next (next_),
+ _greedy (greedy_)
     {
         node_vector::iterator iter_;
         node_vector::iterator end_;
@@ -32,6 +33,12 @@
         {
             (*iter_)->append_followpos (_firstpos);
         }
+
+ for (iter_ = _firstpos.begin (), end_ = _firstpos.end ();
+ iter_ != end_; ++iter_)
+ {
+ (*iter_)->greedy (greedy_);
+ }
     }
 
     virtual ~iteration_node ()
@@ -54,6 +61,7 @@
 private:
     // Not owner of this pointer...
     node *_next;
+ bool _greedy;
 
     virtual void copy_node (node_ptr_vector &node_ptr_vector_,
         node_stack &new_node_stack_, bool_stack &perform_op_stack_,
@@ -61,10 +69,10 @@
     {
         if (perform_op_stack_.top ())
         {
- node *ptr_ = new_node_stack_.top ();
+ node *ptr_ = new_node_stack_.top ();
 
             node_ptr_vector_->push_back (0);
- node_ptr_vector_->back () = new iteration_node (ptr_);
+ node_ptr_vector_->back () = new iteration_node (ptr_, _greedy);
             new_node_stack_.top () = node_ptr_vector_->back ();
         }
         else

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/leaf_node.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/leaf_node.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/leaf_node.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // leaf_node.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -14,14 +14,16 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 class leaf_node : public node
 {
 public:
- leaf_node (const std::size_t token_) :
+ leaf_node (const std::size_t token_, const bool greedy_) :
         node (token_ == null_token),
- _token (token_)
+ _token (token_),
+ _set_greedy (!greedy_),
+ _greedy (greedy_)
     {
         if (!_nullable)
         {
@@ -59,6 +61,20 @@
         return _token;
     }
 
+ virtual void greedy (const bool greedy_)
+ {
+ if (!_set_greedy)
+ {
+ _greedy = greedy_;
+ _set_greedy = true;
+ }
+ }
+
+ virtual bool greedy () const
+ {
+ return _greedy;
+ }
+
     virtual const node_vector &followpos () const
     {
         return _followpos;
@@ -71,6 +87,8 @@
 
 private:
     std::size_t _token;
+ bool _set_greedy;
+ bool _greedy;
     node_vector _followpos;
 
     virtual void copy_node (node_ptr_vector &node_ptr_vector_,
@@ -78,7 +96,7 @@
         bool &/*down_*/) const
     {
         node_ptr_vector_->push_back (0);
- node_ptr_vector_->back () = new leaf_node (_token);
+ node_ptr_vector_->back () = new leaf_node (_token, _greedy);
         new_node_stack_.push (node_ptr_vector_->back ());
     }
 };

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/node.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/node.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/node.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // node.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -17,7 +17,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 class node
 {
@@ -64,7 +64,7 @@
 
     virtual void append_followpos (const node_vector &/*followpos_*/)
     {
- throw runtime_error ("Internal error node::append_followpos");
+ throw runtime_error ("Internal error node::append_followpos()");
     }
 
     node *copy (node_ptr_vector &node_ptr_vector_) const
@@ -129,27 +129,37 @@
 
     virtual std::size_t id () const
     {
- throw runtime_error ("Internal error node::id");
+ throw runtime_error ("Internal error node::id()");
     }
 
     virtual std::size_t lexer_state () const
     {
- throw runtime_error ("Internal error node::state");
+ throw runtime_error ("Internal error node::state()");
     }
 
     virtual std::size_t token () const
     {
- throw runtime_error ("Internal error node::token");
+ throw runtime_error ("Internal error node::token()");
+ }
+
+ virtual void greedy (const bool /*greedy_*/)
+ {
+ throw runtime_error ("Internal error node::token(bool)");
+ }
+
+ virtual bool greedy () const
+ {
+ throw runtime_error ("Internal error node::token()");
     }
 
     virtual const node_vector &followpos () const
     {
- throw runtime_error ("Internal error node::followpos");
+ throw runtime_error ("Internal error node::followpos()");
     }
 
     virtual node_vector &followpos ()
     {
- throw runtime_error ("Internal error node::followpos");
+ throw runtime_error ("Internal error node::followpos()");
     }
 
 protected:

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/selection_node.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/selection_node.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/selection_node.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // selection_node.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -12,7 +12,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 class selection_node : public node
 {
@@ -69,7 +69,7 @@
     {
         if (perform_op_stack_.top ())
         {
- node *rhs_ = new_node_stack_.top ();
+ node *rhs_ = new_node_stack_.top ();
 
             new_node_stack_.pop ();
 

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/sequence_node.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/sequence_node.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/parser/tree/sequence_node.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // sequence_node.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -12,7 +12,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 class sequence_node : public node
 {

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/partition/charset.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/partition/charset.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/partition/charset.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // charset.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -14,7 +14,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 template<typename CharT>
 struct basic_charset

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/partition/equivset.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/partition/equivset.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/partition/equivset.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // equivset.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -15,7 +15,7 @@
 {
 namespace lexer
 {
-namespace internal
+namespace detail
 {
 struct equivset
 {
@@ -25,14 +25,20 @@
     typedef std::vector<node *> node_vector;
 
     index_vector _index_vector;
+ bool _greedy;
+ std::size_t _id;
     node_vector _followpos;
 
- equivset ()
+ equivset () :
+ _greedy (true),
+ _id (0)
     {
     }
 
- equivset (const index_set &index_set_,
- const node_vector &followpos_) :
+ equivset (const index_set &index_set_, const bool greedy_,
+ const std::size_t id_, const node_vector &followpos_) :
+ _greedy (greedy_),
+ _id (id_),
         _followpos (followpos_)
     {
         index_set::const_iterator iter_ = index_set_.begin ();
@@ -55,6 +61,20 @@
 
         if (!overlap_._index_vector.empty ())
         {
+ overlap_._id = _id;
+
+ // LHS abstemious transitions have priority.
+ if (_greedy < rhs_._greedy)
+ {
+ overlap_._greedy = _greedy;
+ }
+ else
+ {
+ overlap_._greedy = _greedy;
+ }
+
+ // Note that the LHS takes priority in order to
+ // respect rule ordering priority in the lex spec.
             overlap_._followpos = _followpos;
 
             node_vector::const_iterator overlap_begin_ =

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/rules.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/rules.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/rules.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // rules.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -21,7 +21,6 @@
 {
 namespace lexer
 {
-
 namespace detail
 {
     // return name of initial state
@@ -31,13 +30,19 @@
     template <>
     struct initial<char>
     {
- static char const* call() { return "INITIAL"; }
+ static const char *str ()
+ {
+ return "INITIAL";
+ }
     };
 
     template <>
     struct initial<wchar_t>
     {
- static wchar_t const* call() { return L"INITIAL"; }
+ static const wchar_t *str ()
+ {
+ return L"INITIAL";
+ }
     };
 }
 
@@ -57,11 +62,11 @@
     typedef std::pair<string, std::size_t> string_size_t_pair;
 
     basic_rules (const bool case_sensitive_ = true,
- const bool dot_not_newline_ = false) :
+ const bool dot_not_newline_ = true) :
         _case_sensitive (case_sensitive_),
         _dot_not_newline (dot_not_newline_)
     {
- add_state (detail::initial<CharT>::call());
+ add_state (initial ());
     }
 
     void clear ()
@@ -75,8 +80,7 @@
         _case_sensitive = true;
         _locale = std::locale ();
         _dot_not_newline = false;
-
- add_state (detail::initial<CharT>::call());
+ add_state (initial ());
     }
 
     void clear (const CharT *state_name_)
@@ -312,9 +316,9 @@
         return empty_;
     }
 
- static CharT const* initial()
+ static const CharT *initial ()
     {
- return detail::initial<CharT>::call();
+ return detail::initial<CharT>::str ();
     }
 
 private:

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/runtime_error.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/runtime_error.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/runtime_error.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // runtime_error.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/serialise.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/serialise.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/serialise.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // examples/serialise.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -14,8 +14,8 @@
 namespace lexer
 {
 // IMPORTANT! This won't work if you don't enable RTTI!
-template<class Archive>
-void serialise (Archive &ar_, state_machine &sm_, unsigned int version_)
+template<typename CharT, class Archive>
+void serialise (basic_state_machine<CharT> &sm_, Archive &ar_, unsigned int version_ = 1)
 {
     ar_ & version_;
     ar_ & *sm_._lookup;

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/size_t.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/size_t.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/size_t.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // size_t.h
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/state_machine.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/state_machine.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/state_machine.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // state_machine.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,7 +7,7 @@
 #define BOOST_LEXER_STATE_MACHINE_HPP
 
 #include <algorithm>
-#include "char_state_machine.hpp"
+#include "conversion/char_state_machine.hpp"
 #include "consts.hpp"
 #include <deque>
 #include <map>
@@ -19,29 +19,216 @@
 {
 namespace lexer
 {
-struct state_machine
+template<typename CharT>
+class basic_state_machine
 {
- typedef std::vector<std::size_t> size_t_vector;
- typedef internal::ptr_vector<size_t_vector> size_t_vector_vector;
+public:
+ class iterator
+ {
+ public:
+#if defined _MSC_VER && _MSC_VER <= 1200
+ friend basic_state_machine;
+#else
+ friend class basic_state_machine;
+#endif
 
- size_t_vector_vector _lookup;
- size_t_vector _dfa_alphabet;
- size_t_vector_vector _dfa;
- bool _seen_BOL_assertion;
- bool _seen_EOL_assertion;
+ struct data
+ {
+ // Current iterator info
+ std::size_t dfa;
+ std::size_t states;
+ std::size_t state;
+ std::size_t transitions;
+ std::size_t transition;
+
+ // Current state info
+ bool end_state;
+ std::size_t id;
+ std::size_t goto_dfa;
+ std::size_t bol_index;
+ std::size_t eol_index;
+
+ // Current transition info
+ basic_string_token<CharT> token;
+ std::size_t goto_state;
+
+ data () :
+ dfa (npos),
+ states (0),
+ state (npos),
+ transitions (0),
+ transition (npos),
+ end_state (false),
+ id (npos),
+ goto_dfa (npos),
+ bol_index (npos),
+ eol_index (npos),
+ goto_state (npos)
+ {
+ }
+
+ bool operator == (const data &rhs_) const
+ {
+ return dfa == rhs_.dfa &&
+ states == rhs_.states &&
+ state == rhs_.state &&
+ transitions == rhs_.transitions &&
+ transition == rhs_.transition &&
+ end_state == rhs_.end_state &&
+ id == rhs_.id &&
+ goto_dfa == rhs_.goto_dfa &&
+ bol_index == rhs_.bol_index &&
+ eol_index == rhs_.eol_index &&
+ token == rhs_.token &&
+ transition == rhs_.transition;
+ }
+ };
+
+ iterator () :
+ _sm (0),
+ _dfas (0),
+ _dfa (npos),
+ _states (0),
+ _state (npos),
+ _transitions (0),
+ _transition (npos)
+ {
+ }
+
+ bool operator == (const iterator &rhs_) const
+ {
+ return _dfas == rhs_._dfas && _dfa == rhs_._dfa &&
+ _states == rhs_._states && _state == rhs_._state &&
+ _transitions == rhs_._transitions &&
+ _transition == rhs_._transition;
+ }
+
+ bool operator != (const iterator &rhs_) const
+ {
+ return !(*this == rhs_);
+ }
+
+ data &operator * ()
+ {
+ return _data;
+ }
+
+ data *operator -> ()
+ {
+ return &_data;
+ }
+
+ // Let compiler generate operator = ().
+
+ // prefix version
+ iterator &operator ++ ()
+ {
+ next ();
+ return *this;
+ }
+
+ // postfix version
+ iterator operator ++ (int)
+ {
+ iterator iter_ = *this;
+
+ next ();
+ return iter_;
+ }
+
+ void clear ()
+ {
+ _dfas = _states = _transitions = 0;
+ _dfa = _state = _transition = npos;
+ }
+
+ private:
+ basic_state_machine *_sm;
+ data _data;
+ std::size_t _dfas;
+ std::size_t _dfa;
+ std::size_t _states;
+ std::size_t _state;
+ std::size_t _transitions;
+ std::size_t _transition;
+ typename detail::basic_char_state_machine<CharT>::state::
+ size_t_string_token_map::const_iterator _token_iter;
+ typename detail::basic_char_state_machine<CharT>::state::
+ size_t_string_token_map::const_iterator _token_end;
+
+ void next ()
+ {
+ bool reset_state_ = false;
+
+ if (_transition >= _transitions)
+ {
+ _transition = _data.transition = 0;
+ _data.state = ++_state;
+ reset_state_ = true;
+
+ if (_state >= _states)
+ {
+ ++_dfa;
+
+ if (_dfa >= _dfas)
+ {
+ clear ();
+ reset_state_ = false;
+ }
+ else
+ {
+ _states = _sm->_csm._sm_vector[_dfa].size ();
+ _state = _data.state = 0;
+ }
+ }
+ }
+ else
+ {
+ _data.transition = _transition;
+ }
+
+ if (reset_state_)
+ {
+ const typename detail::basic_char_state_machine<CharT>::
+ state *ptr_ = &_sm->_csm._sm_vector[_dfa][_state];
 
- state_machine () :
+ _transitions = _data.transitions = ptr_->_transitions.size ();
+ _data.end_state = ptr_->_end_state;
+ _data.id = ptr_->_id;
+ _data.goto_dfa = ptr_->_state;
+ _data.bol_index = ptr_->_bol_index;
+ _data.eol_index = ptr_->_eol_index;
+ _token_iter = ptr_->_transitions.begin ();
+ _token_end = ptr_->_transitions.end ();
+ }
+
+ if (_token_iter != _token_end)
+ {
+ _data.token = _token_iter->second;
+ _data.goto_state = _token_iter->first;
+ ++_token_iter;
+ ++_transition;
+ }
+ else
+ {
+ _data.token.clear ();
+ _data.goto_state = npos;
+ }
+ }
+ };
+
+#if defined _MSC_VER && _MSC_VER <= 1200
+ friend iterator;
+#else
+ friend class iterator;
+#endif
+
+ basic_state_machine () :
         _seen_BOL_assertion (false),
         _seen_EOL_assertion (false)
     {
     }
 
- bool empty () const
- {
- return _lookup->empty () && _dfa_alphabet.empty () &&
- _dfa->empty ();
- }
-
     void clear ()
     {
         _lookup.clear ();
@@ -49,19 +236,104 @@
         _dfa.clear ();
         _seen_BOL_assertion = false;
         _seen_EOL_assertion = false;
+ _csm.clear ();
+ }
+
+ bool empty () const
+ {
+ // Don't include _csm in this test, as irrelevant to state.
+ return _lookup->empty () && _dfa_alphabet.empty () &&
+ _dfa->empty ();
     }
 
- void swap (state_machine &sm_)
+ std::size_t size () const
+ {
+ return _dfa->size ();
+ }
+
+ bool operator == (const basic_state_machine &rhs_) const
+ {
+ // Don't include _csm in this test, as irrelevant to state.
+ return _lookup == rhs_._lookup &&
+ _dfa_alphabet == rhs_._dfa_alphabet &&
+ _dfa == rhs_._dfa &&
+ _seen_BOL_assertion == rhs_._seen_BOL_assertion &&
+ _seen_EOL_assertion == rhs_._seen_EOL_assertion;
+ }
+
+ iterator begin () const
+ {
+ iterator iter_;
+
+ iter_._sm = const_cast<basic_state_machine *>(this);
+ check_for_csm ();
+
+ if (!_csm.empty())
+ {
+ const typename detail::basic_char_state_machine<CharT>::
+ state_vector *ptr_ = &_csm._sm_vector[0];
+
+ iter_._dfas = _csm._sm_vector.size ();
+ iter_._states = iter_._data.states = ptr_->size ();
+ iter_._transitions = iter_._data.transitions =
+ ptr_->front ()._transitions.size ();
+ iter_._dfa = iter_._data.dfa = 0;
+ iter_._state = iter_._data.state = 0;
+ iter_._transition = 0;
+ iter_._data.end_state = ptr_->front ()._end_state;
+ iter_._data.id = ptr_->front ()._id;
+ iter_._data.goto_dfa = ptr_->front ()._state;
+ iter_._data.bol_index = ptr_->front ()._bol_index;
+ iter_._data.eol_index = ptr_->front ()._eol_index;
+ iter_._token_iter = ptr_->front ()._transitions.begin ();
+ iter_._token_end = ptr_->front ()._transitions.end ();
+ ++iter_;
+ }
+
+ return iter_;
+ }
+
+ iterator end () const
+ {
+ iterator iter_;
+
+ iter_._sm = const_cast<basic_state_machine *>(this);
+ return iter_;
+ }
+
+ void swap (basic_state_machine &sm_)
     {
         _lookup->swap (*sm_._lookup);
         _dfa_alphabet.swap (sm_._dfa_alphabet);
         _dfa->swap (*sm_._dfa);
         std::swap (_seen_BOL_assertion, sm_._seen_BOL_assertion);
         std::swap (_seen_EOL_assertion, sm_._seen_EOL_assertion);
+ _csm.swap (sm_._csm);
+ }
+
+// VC++ 6, 7.1 and 8 can't cope with template friend classes!
+// #if !(defined _MSC_VER && _MSC_VER < 1500)
+// private:
+// #endif
+ typedef std::vector<std::size_t> size_t_vector;
+ typedef detail::ptr_vector<size_t_vector> size_t_vector_vector;
+
+ size_t_vector_vector _lookup;
+ size_t_vector _dfa_alphabet;
+ size_t_vector_vector _dfa;
+ bool _seen_BOL_assertion;
+ bool _seen_EOL_assertion;
+ mutable detail::basic_char_state_machine<CharT> _csm;
+
+ void check_for_csm () const
+ {
+ if (_csm.empty ())
+ {
+ human_readable (_csm);
+ }
     }
 
- template<typename CharT>
- void human_readable (basic_char_state_machine<CharT> &sm_) const
+ void human_readable (detail::basic_char_state_machine<CharT> &sm_) const
     {
         const std::size_t max_ = sizeof (CharT) == 1 ?
             num_chars : num_wchar_ts;
@@ -98,8 +370,9 @@
             for (std::size_t state_index_ = 1; state_index_ < states_;
                 ++state_index_)
             {
- typename basic_char_state_machine<CharT>::state *state_ =
- &sm_._sm_vector[start_state_index_][state_index_ - 1];
+ typename detail::basic_char_state_machine<CharT>::state
+ *state_ = &sm_._sm_vector[start_state_index_]
+ [state_index_ - 1];
 
                 state_->_end_state = *read_ptr_ != 0;
                 state_->_id = *(read_ptr_ + id_index);
@@ -116,15 +389,15 @@
                     if (transition_ != 0)
                     {
                         const std::size_t i_ = transition_ - 1;
- typename basic_char_state_machine<CharT>::state::
- size_t_string_token_map::iterator iter_ =
+ typename detail::basic_char_state_machine<CharT>::
+ state::size_t_string_token_map::iterator iter_ =
                             state_->_transitions.find (i_);
 
                         if (iter_ == state_->_transitions.end ())
                         {
                             basic_string_token<CharT> token_
                                 (false, chars_[col_index_]);
- typename basic_char_state_machine<CharT>::
+ typename detail::basic_char_state_machine<CharT>::
                                 state::size_t_string_token_pair pair_
                                 (i_, token_);
 
@@ -137,7 +410,7 @@
                     }
                 }
 
- for (typename basic_char_state_machine<CharT>::state::
+ for (typename detail::basic_char_state_machine<CharT>::state::
                     size_t_string_token_map::iterator iter_ =
                     state_->_transitions.begin (),
                     end_ = state_->_transitions.end ();
@@ -150,7 +423,25 @@
             }
         }
     }
+
+#if !(defined _MSC_VER && _MSC_VER < 1500)
+ template<typename ChT, typename Traits>
+ friend class basic_file_input;
+
+ template<typename ChT, typename Traits>
+ friend class basic_generator;
+
+ template<typename FwdIter, typename Traits>
+ friend class basic_input;
+
+ template<typename ChT, class Archive>
+ friend void serialise (basic_state_machine &sm_, Archive &ar_,
+ unsigned int version_);
+#endif
 };
+
+typedef basic_state_machine<char> state_machine;
+typedef basic_state_machine<wchar_t> wstate_machine;
 }
 }
 

Modified: branches/CMake/release/boost/spirit/home/support/detail/lexer/string_token.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/string_token.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/lexer/string_token.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // string_token.hpp
-// Copyright (c) 2007 Ben Hanson
+// Copyright (c) 2007 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -49,7 +49,7 @@
 
     void normalise ()
     {
- const std::size_t max_chars_ = sizeof(CharT) == 1 ?
+ const std::size_t max_chars_ = sizeof (CharT) == 1 ?
             num_chars : num_wchar_ts;
 
         if (_charset.length () == max_chars_)
@@ -69,7 +69,7 @@
 
     void negate ()
     {
- const std::size_t max_chars_ = sizeof(CharT) == 1 ?
+ const std::size_t max_chars_ = sizeof (CharT) == 1 ?
             num_chars : num_wchar_ts;
         CharT curr_char_ = sizeof (CharT) == 1 ? -128 : 0;
         string temp_;
@@ -135,7 +135,7 @@
 
     void intersect (basic_string_token &rhs_, basic_string_token &overlap_)
     {
- if ((any () && rhs_.any ()) || (_negated == rhs_._negated &&
+ if (any () && rhs_.any () || (_negated == rhs_._negated &&
             !any () && !rhs_.any ()))
         {
             intersect_same_types (rhs_, overlap_);

Deleted: branches/CMake/release/boost/spirit/home/support/detail/lexer/tokeniser.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/lexer/tokeniser.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,298 +0,0 @@
-// examples/tokeniser.hpp
-// Copyright (c) 2007 Ben Hanson
-//
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
-// file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-#ifndef BOOST_LEXER_EXAMPLES_TOKENISER_HPP
-#define BOOST_LEXER_EXAMPLES_TOKENISER_HPP
-
-#include "char_traits.hpp"
-#include "consts.hpp"
-#include <boost/detail/iterator.hpp>
-#include "size_t.hpp"
-#include "state_machine.hpp"
-
-namespace boost
-{
-namespace lexer
-{
-template<typename Iterator, typename Traits =
- char_traits<typename detail::iterator_traits<Iterator>::value_type> >
-struct basic_tokeniser
-{
- static std::size_t next (const state_machine &state_machine_,
- std::size_t &start_state_, const Iterator &start_,
- Iterator &start_token_, const Iterator &end_)
- {
- if (start_token_ == end_) return 0;
-
- again:
- const std::size_t * lookup_ = &state_machine_._lookup[start_state_]->
- front ();
- std::size_t dfa_alphabet_ = state_machine_._dfa_alphabet[start_state_];
- const std::size_t *dfa_ = &state_machine_._dfa[start_state_]->front ();
- const std::size_t *ptr_ = dfa_ + dfa_alphabet_;
- Iterator curr_ = start_token_;
- bool end_state_ = *ptr_ != 0;
- std::size_t id_ = *(ptr_ + id_index);
- Iterator end_token_ = start_token_;
-
- while (curr_ < end_)
- {
- const std::size_t BOL_state_ = ptr_[bol_index];
- const std::size_t EOL_state_ = ptr_[eol_index];
-
- if (BOL_state_ && (start_token_ == start_ ||
- *(start_token_ - 1) == '\n'))
- {
- ptr_ = &dfa_[BOL_state_ * dfa_alphabet_];
- }
- else if (EOL_state_ && *curr_ == '\n')
- {
- ptr_ = &dfa_[EOL_state_ * dfa_alphabet_];
- }
- else
- {
- const std::size_t state_ =
- ptr_[lookup_[static_cast<typename Traits::index_type>
- (*curr_++)]];
-
- if (state_ == 0)
- {
- break;
- }
-
- ptr_ = &dfa_[state_ * dfa_alphabet_];
- }
-
- if (*ptr_)
- {
- end_state_ = true;
- id_ = *(ptr_ + id_index);
- start_state_ = *(ptr_ + state_index);
- end_token_ = curr_;
- }
- }
-
- const std::size_t EOL_state_ = ptr_[eol_index];
-
- if (EOL_state_ && curr_ == end_)
- {
- ptr_ = &dfa_[EOL_state_ * dfa_alphabet_];
-
- if (*ptr_)
- {
- end_state_ = true;
- id_ = *(ptr_ + id_index);
- start_state_ = *(ptr_ + state_index);
- end_token_ = curr_;
- }
- }
-
- if (end_state_)
- {
- // return longest match
- start_token_ = end_token_;
-
- if (id_ == 0) goto again;
- }
- else
- {
- // No match causes char to be skipped
- ++start_token_;
- id_ = npos;
- }
-
- return id_;
- }
-
- static std::size_t next (const state_machine &state_machine_,
- std::size_t &start_state_, Iterator &start_token_,
- Iterator const &end_)
- {
- if (start_token_ == end_) return 0;
-
- again:
- const std::size_t * lookup_ = &state_machine_._lookup[start_state_]->
- front ();
- std::size_t dfa_alphabet_ = state_machine_._dfa_alphabet[start_state_];
- const std::size_t *dfa_ = &state_machine_._dfa[start_state_]->front ();
- const std::size_t *ptr_ = dfa_ + dfa_alphabet_;
- Iterator curr_ = start_token_;
- bool end_state_ = *ptr_ != 0;
- std::size_t id_ = *(ptr_ + id_index);
- Iterator end_token_ = start_token_;
-
- while (curr_ < end_)
- {
- const std::size_t state_ = ptr_[lookup_[static_cast
- <typename Traits::index_type>(*curr_++)]];
-
- if (state_ == 0)
- {
- break;
- }
-
- ptr_ = &dfa_[state_ * dfa_alphabet_];
-
- if (*ptr_)
- {
- end_state_ = true;
- id_ = *(ptr_ + id_index);
- start_state_ = *(ptr_ + state_index);
- end_token_ = curr_;
- }
- }
-
- if (end_state_)
- {
- // return longest match
- start_token_ = end_token_;
-
- if (id_ == 0) goto again;
- }
- else
- {
- // No match causes char to be skipped
- ++start_token_;
- id_ = npos;
- }
-
- return id_;
- }
-
- static std::size_t next (const std::size_t * const lookup_,
- const std::size_t dfa_alphabet_, const std::size_t * const dfa_,
- Iterator const &start_, Iterator &start_token_,
- Iterator const &end_)
- {
- if (start_token_ == end_) return 0;
-
- const std::size_t *ptr_ = dfa_ + dfa_alphabet_;
- Iterator curr_ = start_token_;
- bool end_state_ = *ptr_ != 0;
- std::size_t id_ = *(ptr_ + id_index);
- Iterator end_token_ = start_token_;
-
- while (curr_ < end_)
- {
- const std::size_t BOL_state_ = ptr_[bol_index];
- const std::size_t EOL_state_ = ptr_[eol_index];
-
- if (BOL_state_ && (start_token_ == start_ ||
- *(start_token_ - 1) == '\n'))
- {
- ptr_ = &dfa_[BOL_state_ * dfa_alphabet_];
- }
- else if (EOL_state_ && *curr_ == '\n')
- {
- ptr_ = &dfa_[EOL_state_ * dfa_alphabet_];
- }
- else
- {
- const std::size_t state_ =
- ptr_[lookup_[static_cast<typename Traits::index_type>
- (*curr_++)]];
-
- if (state_ == 0)
- {
- break;
- }
-
- ptr_ = &dfa_[state_ * dfa_alphabet_];
- }
-
- if (*ptr_)
- {
- end_state_ = true;
- id_ = *(ptr_ + id_index);
- end_token_ = curr_;
- }
- }
-
- const std::size_t EOL_state_ = ptr_[eol_index];
-
- if (EOL_state_ && curr_ == end_)
- {
- ptr_ = &dfa_[EOL_state_ * dfa_alphabet_];
-
- if (*ptr_)
- {
- end_state_ = true;
- id_ = *(ptr_ + id_index);
- end_token_ = curr_;
- }
- }
-
- if (end_state_)
- {
- // return longest match
- start_token_ = end_token_;
- }
- else
- {
- // No match causes char to be skipped
- ++start_token_;
- id_ = npos;
- }
-
- return id_;
- }
-
- static std::size_t next (const std::size_t * const lookup_,
- const std::size_t dfa_alphabet_, const std::size_t * const dfa_,
- Iterator &start_token_, Iterator const &end_)
- {
- if (start_token_ == end_) return 0;
-
- const std::size_t *ptr_ = dfa_ + dfa_alphabet_;
- Iterator curr_ = start_token_;
- bool end_state_ = *ptr_ != 0;
- std::size_t id_ = *(ptr_ + id_index);
- Iterator end_token_ = start_token_;
-
- while (curr_ < end_)
- {
- const std::size_t state_ = ptr_[lookup_[static_cast
- <typename Traits::index_type>(*curr_++)]];
-
- if (state_ == 0)
- {
- break;
- }
-
- ptr_ = &dfa_[state_ * dfa_alphabet_];
-
- if (*ptr_)
- {
- end_state_ = true;
- id_ = *(ptr_ + id_index);
- end_token_ = curr_;
- }
- }
-
- if (end_state_)
- {
- // return longest match
- start_token_ = end_token_;
- }
- else
- {
- // No match causes char to be skipped
- ++start_token_;
- id_ = npos;
- }
-
- return id_;
- }
-};
-
-typedef basic_tokeniser<std::string::iterator> iter_tokeniser;
-typedef basic_tokeniser<std::wstring::iterator> iter_wtokeniser;
-typedef basic_tokeniser<const char *> ptr_tokeniser;
-typedef basic_tokeniser<const wchar_t *> ptr_wtokeniser;
-
-}
-}
-
-#endif

Modified: branches/CMake/release/boost/spirit/home/support/detail/what_function.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/home/support/detail/what_function.hpp (original)
+++ branches/CMake/release/boost/spirit/home/support/detail/what_function.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,10 +11,11 @@
 
 namespace boost { namespace spirit { namespace detail
 {
+ template <typename Context>
     struct what_function
     {
- what_function(std::string& str)
- : str(str), first(true)
+ what_function(std::string& str, Context const& ctx)
+ : str(str), first(true), ctx(ctx)
         {
         }
 
@@ -26,10 +27,11 @@
             else
                 str += ", ";
             typedef typename Component::director director;
- str += director::what(component);
+ str += director::what(component, ctx);
         }
 
         std::string& str;
+ Context const& ctx;
         mutable bool first;
     };
 }}}

Modified: branches/CMake/release/boost/spirit/iterator.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/iterator.hpp (original)
+++ branches/CMake/release/boost/spirit/iterator.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ITERATOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ITERATOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_iterator.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_iterator.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/iterator/file_iterator.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/iterator/file_iterator.hpp (original)
+++ branches/CMake/release/boost/spirit/iterator/file_iterator.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_FILE_ITERATOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_FILE_ITERATOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_file_iterator.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_file_iterator.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/iterator/file_iterator_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/iterator/file_iterator_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/iterator/file_iterator_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_FILE_ITERATOR_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_FILE_ITERATOR_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_file_iterator_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_file_iterator_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/iterator/fixed_size_queue.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/iterator/fixed_size_queue.hpp (original)
+++ branches/CMake/release/boost/spirit/iterator/fixed_size_queue.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_FIXED_SIZE_QUEUE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_FIXED_SIZE_QUEUE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_fixed_size_queue.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_fixed_size_queue.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/iterator/multi_pass.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/iterator/multi_pass.hpp (original)
+++ branches/CMake/release/boost/spirit/iterator/multi_pass.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_MULTI_PASS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_MULTI_PASS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_multi_pass.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_multi_pass.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/iterator/multi_pass_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/iterator/multi_pass_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/iterator/multi_pass_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_MULTI_PASS_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_MULTI_PASS_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_multi_pass_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_multi_pass_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/iterator/position_iterator.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/iterator/position_iterator.hpp (original)
+++ branches/CMake/release/boost/spirit/iterator/position_iterator.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_POSITION_ITERATOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_POSITION_ITERATOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_position_iterator.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_position_iterator.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/iterator/position_iterator_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/iterator/position_iterator_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/iterator/position_iterator_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_POSITION_ITERATOR_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_POSITION_ITERATOR_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_position_iterator_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_position_iterator_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/iterator/typeof.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/iterator/typeof.hpp (original)
+++ branches/CMake/release/boost/spirit/iterator/typeof.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/meta.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/meta.hpp (original)
+++ branches/CMake/release/boost/spirit/meta.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_META
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_META
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_meta.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_meta.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/meta/as_parser.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/meta/as_parser.hpp (original)
+++ branches/CMake/release/boost/spirit/meta/as_parser.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_AS_PARSER
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_AS_PARSER
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_as_parser.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_as_parser.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/meta/fundamental.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/meta/fundamental.hpp (original)
+++ branches/CMake/release/boost/spirit/meta/fundamental.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_FUNDAMENTAL
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_FUNDAMENTAL
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_fundamental.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_fundamental.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/meta/parser_traits.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/meta/parser_traits.hpp (original)
+++ branches/CMake/release/boost/spirit/meta/parser_traits.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSER_TRAITS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSER_TRAITS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_parser_traits.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_parser_traits.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/meta/refactoring.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/meta/refactoring.hpp (original)
+++ branches/CMake/release/boost/spirit/meta/refactoring.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_REFACTORING
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_REFACTORING
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_refactoring.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_refactoring.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/meta/traverse.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/meta/traverse.hpp (original)
+++ branches/CMake/release/boost/spirit/meta/traverse.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TRAVERSE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TRAVERSE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_traverse.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_traverse.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/phoenix.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PHOENIX
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PHOENIX
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/phoenix/actor.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/actor.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/actor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ACTOR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ACTOR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_actor.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_actor.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_actor.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/binders.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/binders.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/binders.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_BINDERS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_BINDERS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_binders.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_binders.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_binders.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/casts.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/casts.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/casts.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CASTS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CASTS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_casts.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_casts.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_casts.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/closures.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/closures.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/closures.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CLOSURES
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CLOSURES
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_closures.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_closures.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_closures.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/composite.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/composite.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/composite.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_COMPOSITE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_COMPOSITE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_composite.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_composite.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_composite.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/functions.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/functions.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/functions.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_FUNCTIONS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_FUNCTIONS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_functions.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_functions.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_functions.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/new.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/new.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/new.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_NEW
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_NEW
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_new.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_new.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_new.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/operators.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/operators.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/operators.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_OPERATORS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_OPERATORS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_operators.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_operators.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_operators.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/primitives.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/primitives.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/primitives.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PRIMITIVES
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PRIMITIVES
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_primitives.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_primitives.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_primitives.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/special_ops.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/special_ops.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/special_ops.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SPECIAL_OPS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SPECIAL_OPS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_special_ops.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_special_ops.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_special_ops.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/statements.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/statements.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/statements.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_STATEMENTS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_STATEMENTS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_statements.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_statements.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_statements.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/tuple_helpers.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/tuple_helpers.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/tuple_helpers.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TUPLE_HELPERS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TUPLE_HELPERS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_tuple_helpers.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_tuple_helpers.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_tuple_helpers.hpp>
 

Modified: branches/CMake/release/boost/spirit/phoenix/tuples.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/phoenix/tuples.hpp (original)
+++ branches/CMake/release/boost/spirit/phoenix/tuples.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TUPLES
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TUPLES
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/phoenix1_tuples.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/phoenix1_tuples.hpp"
 #endif
+#endif
 
 #include <boost/spirit/include/phoenix1_tuples.hpp>
 

Modified: branches/CMake/release/boost/spirit/symbols.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/symbols.hpp (original)
+++ branches/CMake/release/boost/spirit/symbols.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SYMBOLS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SYMBOLS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_symbols.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_symbols.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/symbols/symbols.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/symbols/symbols.hpp (original)
+++ branches/CMake/release/boost/spirit/symbols/symbols.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SYMBOLS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SYMBOLS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_symbols.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_symbols.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/symbols/symbols_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/symbols/symbols_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/symbols/symbols_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SYMBOLS_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SYMBOLS_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_symbols_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_symbols_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/symbols/typeof.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/symbols/typeof.hpp (original)
+++ branches/CMake/release/boost/spirit/symbols/typeof.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/tree/ast.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/tree/ast.hpp (original)
+++ branches/CMake/release/boost/spirit/tree/ast.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_AST
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_AST
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_ast.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_ast.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/tree/ast_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/tree/ast_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/tree/ast_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_AST_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_AST_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_ast_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_ast_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/tree/common.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/tree/common.hpp (original)
+++ branches/CMake/release/boost/spirit/tree/common.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_COMMON
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_COMMON
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_common.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_common.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/tree/common_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/tree/common_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/tree/common_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_COMMON_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_COMMON_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_common_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_common_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/tree/parse_tree.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/tree/parse_tree.hpp (original)
+++ branches/CMake/release/boost/spirit/tree/parse_tree.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSE_TREE
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSE_TREE
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_parse_tree.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_parse_tree.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/tree/parse_tree_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/tree/parse_tree_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/tree/parse_tree_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSE_TREE_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSE_TREE_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_parse_tree_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_parse_tree_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/tree/parse_tree_utils.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/tree/parse_tree_utils.hpp (original)
+++ branches/CMake/release/boost/spirit/tree/parse_tree_utils.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSE_TREE_UTILS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_PARSE_TREE_UTILS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_parse_tree_utils.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_parse_tree_utils.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/tree/tree_to_xml.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/tree/tree_to_xml.hpp (original)
+++ branches/CMake/release/boost/spirit/tree/tree_to_xml.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TREE_TO_XML
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TREE_TO_XML
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_tree_to_xml.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_tree_to_xml.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/tree/typeof.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/tree/typeof.hpp (original)
+++ branches/CMake/release/boost/spirit/tree/typeof.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility.hpp (original)
+++ branches/CMake/release/boost/spirit/utility.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_UTILITY
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_UTILITY
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_utility.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_utility.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/chset.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/chset.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/chset.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CHSET
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CHSET
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_chset.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_chset.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/chset_operators.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/chset_operators.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/chset_operators.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CHSET_OPERATORS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CHSET_OPERATORS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_chset_operators.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_chset_operators.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/confix.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/confix.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/confix.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CONFIX
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CONFIX
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_confix.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_confix.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/confix_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/confix_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/confix_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_CONFIX_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_CONFIX_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_confix_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_confix_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/distinct.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/distinct.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/distinct.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_DISTINCT
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_DISTINCT
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_distinct.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_distinct.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/distinct_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/distinct_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/distinct_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_DISTINCT_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_DISTINCT_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_distinct_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_distinct_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/escape_char.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/escape_char.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/escape_char.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ESCAPE_CHAR
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ESCAPE_CHAR
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_escape_char.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_escape_char.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/escape_char_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/escape_char_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/escape_char_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_ESCAPE_CHAR_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_ESCAPE_CHAR_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_escape_char_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_escape_char_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/flush_multi_pass.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/flush_multi_pass.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/flush_multi_pass.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_FLUSH_MULTI_PASS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_FLUSH_MULTI_PASS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_flush_multi_pass.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_flush_multi_pass.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/functor_parser.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/functor_parser.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/functor_parser.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_FUNCTOR_PARSER
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_FUNCTOR_PARSER
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_functor_parser.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_functor_parser.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/grammar_def.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/grammar_def.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/grammar_def.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_GRAMMAR_DEF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_GRAMMAR_DEF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_grammar_def.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_grammar_def.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/grammar_def_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/grammar_def_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/grammar_def_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_GRAMMAR_DEF_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_GRAMMAR_DEF_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_grammar_def_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_grammar_def_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/lists.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/lists.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/lists.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_LISTS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_LISTS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_lists.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_lists.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/lists_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/lists_fwd.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/lists_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_LISTS_FWD
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_LISTS_FWD
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_lists_fwd.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_lists_fwd.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/loops.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/loops.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/loops.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_LOOPS
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_LOOPS
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_loops.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_loops.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/regex.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/regex.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/regex.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_REGEX
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_REGEX
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_regex.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_regex.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/rule_parser.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/rule_parser.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/rule_parser.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_RULE_PARSER
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_RULE_PARSER
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_rule_parser.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_rule_parser.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/scoped_lock.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/scoped_lock.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/scoped_lock.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_SCOPED_LOCK
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_SCOPED_LOCK
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_scoped_lock.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_scoped_lock.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/utility/typeof.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/utility/typeof.hpp (original)
+++ branches/CMake/release/boost/spirit/utility/typeof.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_TYPEOF
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_typeof.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/spirit/version.hpp
==============================================================================
--- branches/CMake/release/boost/spirit/version.hpp (original)
+++ branches/CMake/release/boost/spirit/version.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,11 +9,15 @@
 #ifndef BOOST_SPIRIT_DEPRECATED_INCLUDE_VERSION
 #define BOOST_SPIRIT_DEPRECATED_INCLUDE_VERSION
 
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 103800
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
 # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic_version.hpp")
 #elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
 # warning "This header is deprecated. Please use: boost/spirit/include/classic_version.hpp"
 #endif
+#endif
 
 #if !defined(BOOST_SPIRIT_USE_OLD_NAMESPACE)
 #define BOOST_SPIRIT_USE_OLD_NAMESPACE

Modified: branches/CMake/release/boost/statechart/detail/counted_base.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/detail/counted_base.hpp (original)
+++ branches/CMake/release/boost/statechart/detail/counted_base.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -61,7 +61,7 @@
     // do nothing copy implementation is intentional (the number of
     // referencing pointers of the source and the destination is not changed
     // through the copy operation)
- counted_base( const counted_base & ) {}
+ counted_base( const counted_base & ) : base_type() {}
     counted_base & operator=( const counted_base & ) { return *this; }
 
   public:

Modified: branches/CMake/release/boost/statechart/detail/rtti_policy.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/detail/rtti_policy.hpp (original)
+++ branches/CMake/release/boost/statechart/detail/rtti_policy.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 #ifndef BOOST_STATECHART_DETAIL_RTTI_POLICY_HPP_INCLUDED
 #define BOOST_STATECHART_DETAIL_RTTI_POLICY_HPP_INCLUDED
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2002-2006 Andreas Huber Doenni
+// Copyright 2002-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -16,15 +16,6 @@
 
 
 
-#ifdef BOOST_MSVC
-// We permanently turn off the following level 4 warnings because users will
-// have to do so themselves anyway if we turn them back on
-# pragma warning( disable: 4511 ) // copy constructor could not be generated
-# pragma warning( disable: 4512 ) // assignment operator could not be generated
-#endif
-
-
-
 namespace boost
 {
 namespace statechart

Modified: branches/CMake/release/boost/statechart/detail/state_base.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/detail/state_base.hpp (original)
+++ branches/CMake/release/boost/statechart/detail/state_base.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 #ifndef BOOST_STATECHART_DETAIL_STATE_BASE_HPP_INCLUDED
 #define BOOST_STATECHART_DETAIL_STATE_BASE_HPP_INCLUDED
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2002-2006 Andreas Huber Doenni
+// Copyright 2002-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -34,15 +34,6 @@
 
 
 
-#ifdef BOOST_MSVC
-// We permanently turn off the following level 4 warnings because users will
-// have to do so themselves anyway if we turn them back on
-# pragma warning( disable: 4511 ) // copy constructor could not be generated
-# pragma warning( disable: 4512 ) // assignment operator could not be generated
-#endif
-
-
-
 namespace boost
 {
 namespace statechart

Modified: branches/CMake/release/boost/statechart/event.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/event.hpp (original)
+++ branches/CMake/release/boost/statechart/event.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 #ifndef BOOST_STATECHART_EVENT_HPP_INCLUDED
 #define BOOST_STATECHART_EVENT_HPP_INCLUDED
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2002-2006 Andreas Huber Doenni
+// Copyright 2002-2007 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////

Modified: branches/CMake/release/boost/statechart/event_processor.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/event_processor.hpp (original)
+++ branches/CMake/release/boost/statechart/event_processor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 #ifndef BOOST_STATECHART_EVENT_PROCESSOR_INCLUDED
 #define BOOST_STATECHART_EVENT_PROCESSOR_INCLUDED
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2002-2006 Andreas Huber Doenni
+// Copyright 2002-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -70,6 +70,9 @@
     virtual void process_event_impl( const event_base & evt ) = 0;
     virtual void terminate_impl() = 0;
 
+ // avoids C4512 (assignment operator could not be generated)
+ event_processor & operator=( const event_processor & );
+
     Scheduler & myScheduler_;
     const processor_handle myHandle_;
 };

Modified: branches/CMake/release/boost/statechart/fifo_worker.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/fifo_worker.hpp (original)
+++ branches/CMake/release/boost/statechart/fifo_worker.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 #ifndef BOOST_STATECHART_FIFO_WORKER_HPP_INCLUDED
 #define BOOST_STATECHART_FIFO_WORKER_HPP_INCLUDED
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2002-2006 Andreas Huber Doenni
+// Copyright 2002-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -20,7 +20,17 @@
 #ifdef BOOST_HAS_THREADS
 # ifdef BOOST_MSVC
 # pragma warning( push )
-# pragma warning( disable: 4275 ) // non-dll class used as base for dll class
+ // "conditional expression is constant" in basic_timed_mutex.hpp
+# pragma warning( disable: 4127 )
+ // "conversion from 'int' to 'unsigned short'" in microsec_time_clock.hpp
+# pragma warning( disable: 4244 )
+ // "... needs to have dll-interface to be used by clients of class ..."
+# pragma warning( disable: 4251 )
+ // "... assignment operator could not be generated"
+# pragma warning( disable: 4512 )
+ // "Function call with parameters that may be unsafe" in
+ // condition_variable.hpp
+# pragma warning( disable: 4996 )
 # endif
 
 # include <boost/thread/mutex.hpp>
@@ -57,7 +67,7 @@
     {
     }
 
- typedef function0< void, Allocator > work_item;
+ typedef function0< void > work_item;
 
     // We take a non-const reference so that we can move (i.e. swap) the item
     // into the queue, what avoids copying the (possibly heap-allocated)

Modified: branches/CMake/release/boost/statechart/in_state_reaction.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/in_state_reaction.hpp (original)
+++ branches/CMake/release/boost/statechart/in_state_reaction.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 #ifndef BOOST_STATECHART_IN_STATE_REACTION_HPP_INCLUDED
 #define BOOST_STATECHART_IN_STATE_REACTION_HPP_INCLUDED
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2005-2006 Andreas Huber Doenni
+// Copyright 2005-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -10,10 +10,7 @@
 
 #include <boost/statechart/result.hpp>
 
-#include <boost/mpl/if.hpp>
-
-#include <boost/cast.hpp> // boost::polymorphic_downcast
-#include <boost/type_traits/is_same.hpp>
+#include <boost/statechart/detail/reaction_dispatcher.hpp>
 
 
 
@@ -27,40 +24,26 @@
 class event_base;
 
 //////////////////////////////////////////////////////////////////////////////
-template< class Event,
- class ReactionContext,
- void ( ReactionContext::*pAction )( const Event & ) >
+template< class Event,
+ class ReactionContext = detail::no_context< Event >,
+ void ( ReactionContext::*pAction )( const Event & ) =
+ &detail::no_context< Event >::no_function >
 class in_state_reaction
 {
   private:
     //////////////////////////////////////////////////////////////////////////
- struct react_base
+ template< class State >
+ struct reactions
     {
- template< class State, class EventBase, class IdType >
- static detail::reaction_result react(
- State & stt, const EventBase & evt, const IdType & )
+ static result react_without_action( State & stt )
       {
- ( stt.template context< ReactionContext >().*pAction )( evt );
- return detail::do_discard_event;
+ return stt.discard_event();
       }
- };
 
- struct react_derived
- {
- template< class State, class EventBase, class IdType >
- static detail::reaction_result react(
- State & stt, const EventBase & evt, const IdType & eventType )
+ static result react_with_action( State & stt, const Event & evt )
       {
- if ( eventType == Event::static_type() )
- {
- ( stt.template context< ReactionContext >().*pAction )(
- *polymorphic_downcast< const Event * >( &evt ) );
- return detail::do_discard_event;
- }
- else
- {
- return detail::no_reaction;
- }
+ ( stt.template context< ReactionContext >().*pAction )( evt );
+ return react_without_action( stt );
       }
     };
 
@@ -73,11 +56,10 @@
     static detail::reaction_result react(
       State & stt, const EventBase & evt, const IdType & eventType )
     {
- typedef typename mpl::if_<
- is_same< Event, event_base >, react_base, react_derived
- >::type impl;
-
- return impl::react( stt, evt, eventType );
+ typedef detail::reaction_dispatcher<
+ reactions< State >, State, EventBase, Event, ReactionContext, IdType
+ > dispatcher;
+ return dispatcher::react( stt, evt, eventType );
     }
 };
 

Modified: branches/CMake/release/boost/statechart/processor_container.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/processor_container.hpp (original)
+++ branches/CMake/release/boost/statechart/processor_container.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 #ifndef BOOST_STATECHART_PROCESSOR_CONTAINER_HPP_INCLUDED
 #define BOOST_STATECHART_PROCESSOR_CONTAINER_HPP_INCLUDED
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2002-2006 Andreas Huber Doenni
+// Copyright 2002-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -70,6 +70,9 @@
       private:
       #endif
 
+ // avoids C4512 (assignment operator could not be generated)
+ processor_context & operator=( const processor_context & );
+
         Scheduler & scheduler_;
         const processor_handle handle_;
 
@@ -86,8 +89,10 @@
         const processor_holder_ptr_type &, const processor_context & );
       impl_fun_ptr pImpl =
         &processor_container::template create_processor_impl0< Processor >;
- return bind(
- pImpl, this, pProcessor, processor_context( scheduler, handle ) );
+ return WorkItem(
+ bind( pImpl, this, pProcessor,
+ processor_context( scheduler, handle ) ),
+ Allocator() );
     }
 
     template< class Processor, typename Arg1 >
@@ -101,8 +106,10 @@
       impl_fun_ptr pImpl =
         &processor_container::template create_processor_impl1<
           Processor, Arg1 >;
- return bind(
- pImpl, this, pProcessor, processor_context( scheduler, handle ), arg1 );
+ return WorkItem(
+ bind( pImpl, this, pProcessor, processor_context( scheduler, handle ),
+ arg1 ),
+ Allocator() );
     }
 
     template< class Processor, typename Arg1, typename Arg2 >
@@ -117,9 +124,10 @@
       impl_fun_ptr pImpl =
         &processor_container::template create_processor_impl2<
           Processor, Arg1, Arg2 >;
- return bind(
- pImpl, this, pProcessor, processor_context( scheduler, handle ),
- arg1, arg2 );
+ return WorkItem(
+ bind( pImpl, this, pProcessor, processor_context( scheduler, handle ),
+ arg1, arg2 ),
+ Allocator() );
     }
 
     template< class Processor, typename Arg1, typename Arg2, typename Arg3 >
@@ -136,9 +144,10 @@
       impl_fun_ptr pImpl =
         &processor_container::template create_processor_impl3<
           Processor, Arg1, Arg2, Arg3 >;
- return bind(
- pImpl, this, pProcessor, processor_context( scheduler, handle ),
- arg1, arg2, arg3 );
+ return WorkItem(
+ bind( pImpl, this, pProcessor, processor_context( scheduler, handle ),
+ arg1, arg2, arg3 ),
+ Allocator() );
     }
 
     template<
@@ -157,9 +166,10 @@
       impl_fun_ptr pImpl =
         &processor_container::template create_processor_impl4<
           Processor, Arg1, Arg2, Arg3, Arg4 >;
- return bind(
- pImpl, this, pProcessor, processor_context( scheduler, handle ),
- arg1, arg2, arg3, arg4 );
+ return WorkItem(
+ bind( pImpl, this, pProcessor, processor_context( scheduler, handle ),
+ arg1, arg2, arg3, arg4 ),
+ Allocator() );
     }
 
     template<
@@ -178,9 +188,10 @@
       impl_fun_ptr pImpl =
         &processor_container::template create_processor_impl5<
           Processor, Arg1, Arg2, Arg3, Arg4, Arg5 >;
- return bind(
- pImpl, this, pProcessor, processor_context( scheduler, handle ),
- arg1, arg2, arg3, arg4, arg5 );
+ return WorkItem(
+ bind( pImpl, this, pProcessor, processor_context( scheduler, handle ),
+ arg1, arg2, arg3, arg4, arg5 ),
+ Allocator() );
     }
 
     template<
@@ -199,27 +210,33 @@
       impl_fun_ptr pImpl =
         &processor_container::template create_processor_impl6<
           Processor, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6 >;
- return bind(
- pImpl, this, pProcessor, processor_context( scheduler, handle ),
- arg1, arg2, arg3, arg4, arg5, arg6 );
+ return WorkItem(
+ bind( pImpl, this, pProcessor, processor_context( scheduler, handle ),
+ arg1, arg2, arg3, arg4, arg5, arg6 ),
+ Allocator() );
     }
 
     WorkItem destroy_processor( const processor_handle & processor )
     {
- return bind(
- &processor_container::destroy_processor_impl, this, processor );
+ return WorkItem(
+ bind( &processor_container::destroy_processor_impl, this, processor ),
+ Allocator() );
     }
 
     WorkItem initiate_processor( const processor_handle & processor )
     {
- return bind(
- &processor_container::initiate_processor_impl, this, processor );
+ return WorkItem(
+ bind( &processor_container::initiate_processor_impl, this,
+ processor ),
+ Allocator() );
     }
 
     WorkItem terminate_processor( const processor_handle & processor )
     {
- return bind(
- &processor_container::terminate_processor_impl, this, processor );
+ return WorkItem(
+ bind( &processor_container::terminate_processor_impl, this,
+ processor ),
+ Allocator() );
     }
 
     typedef intrusive_ptr< const event_base > event_ptr_type;
@@ -229,8 +246,10 @@
     {
       BOOST_ASSERT( pEvent.get() != 0 );
 
- return bind(
- &processor_container::queue_event_impl, this, processor, pEvent );
+ return WorkItem(
+ bind( &processor_container::queue_event_impl, this, processor,
+ pEvent ),
+ Allocator() );
     }
 
   private:

Modified: branches/CMake/release/boost/statechart/simple_state.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/simple_state.hpp (original)
+++ branches/CMake/release/boost/statechart/simple_state.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 #ifndef BOOST_STATECHART_SIMPLE_STATE_HPP_INCLUDED
 #define BOOST_STATECHART_SIMPLE_STATE_HPP_INCLUDED
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2002-2006 Andreas Huber Doenni
+// Copyright 2002-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -128,6 +128,9 @@
     }
 
   private:
+ // avoids C4512 (assignment operator could not be generated)
+ transition_function & operator=( const transition_function & );
+
     void ( TransitionContext::*pTransitionAction_ )( const Event & );
     const Event & evt_;
 };

Modified: branches/CMake/release/boost/statechart/state_machine.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/state_machine.hpp (original)
+++ branches/CMake/release/boost/statechart/state_machine.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 #ifndef BOOST_STATECHART_STATE_MACHINE_HPP_INCLUDED
 #define BOOST_STATECHART_STATE_MACHINE_HPP_INCLUDED
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2002-2006 Andreas Huber Doenni
+// Copyright 2002-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -57,15 +57,6 @@
 
 
 
-#ifdef BOOST_MSVC
-// We permanently turn off the following level 4 warnings because users will
-// have to do so themselves anyway if we turn them back on
-# pragma warning( disable: 4511 ) // copy constructor could not be generated
-# pragma warning( disable: 4512 ) // assignment op could not be generated
-#endif
-
-
-
 namespace boost
 {
 namespace statechart
@@ -98,6 +89,9 @@
 
   private:
     //////////////////////////////////////////////////////////////////////////
+ // avoids C4512 (assignment operator could not be generated)
+ send_function & operator=( const send_function & );
+
     StateBaseType & toState_;
     const EventBaseType & evt_;
     IdType eventType_;
@@ -220,6 +214,9 @@
     {
     }
 
+ // avoids C4512 (assignment operator could not be generated)
+ history_key & operator=( const history_key & );
+
     const typename RttiPolicy::id_type historyContextType_;
     const orthogonal_position_type historizedOrthogonalRegion_;
 };
@@ -720,6 +717,10 @@
 
       private:
         //////////////////////////////////////////////////////////////////////
+ // avoids C4512 (assignment operator could not be generated)
+ initial_construct_function & operator=(
+ const initial_construct_function & );
+
         state_machine & machine_;
     };
     friend class initial_construct_function;
@@ -739,6 +740,9 @@
 
       private:
         //////////////////////////////////////////////////////////////////////
+ // avoids C4512 (assignment operator could not be generated)
+ terminate_function & operator=( const terminate_function & );
+
         state_machine & machine_;
     };
     friend class terminate_function;
@@ -814,6 +818,10 @@
 
       private:
         //////////////////////////////////////////////////////////////////////
+ // avoids C4512 (assignment operator could not be generated)
+ exception_event_handler & operator=(
+ const exception_event_handler & );
+
         state_machine & machine_;
         state_base_type * pCurrentState_;
     };
@@ -822,6 +830,7 @@
     class terminator
     {
       public:
+ //////////////////////////////////////////////////////////////////////
         terminator( state_machine & machine ) :
           machine_( machine ), dismissed_( false ) {}
         ~terminator()
@@ -831,6 +840,10 @@
         void dismiss() { dismissed_ = true; }
 
       private:
+ //////////////////////////////////////////////////////////////////////
+ // avoids C4512 (assignment operator could not be generated)
+ terminator & operator=( const terminator & );
+
         state_machine & machine_;
         bool dismissed_;
     };

Modified: branches/CMake/release/boost/statechart/transition.hpp
==============================================================================
--- branches/CMake/release/boost/statechart/transition.hpp (original)
+++ branches/CMake/release/boost/statechart/transition.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 #ifndef BOOST_STATECHART_TRANSITION_HPP_INCLUDED
 #define BOOST_STATECHART_TRANSITION_HPP_INCLUDED
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2002-2006 Andreas Huber Doenni
+// Copyright 2002-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -10,10 +10,7 @@
 
 #include <boost/statechart/result.hpp>
 
-#include <boost/mpl/if.hpp>
-
-#include <boost/cast.hpp> // boost::polymorphic_downcast
-#include <boost/type_traits/is_same.hpp>
+#include <boost/statechart/detail/reaction_dispatcher.hpp>
 
 
 
@@ -21,27 +18,10 @@
 {
 namespace statechart
 {
-namespace detail
-{
 
 
 
 //////////////////////////////////////////////////////////////////////////////
-template< class Event >
-struct no_context
-{
- void no_function( const Event & );
-};
-
-
-
-} // namespace detail
-
-
-
-class event_base;
-
-//////////////////////////////////////////////////////////////////////////////
 template< class Event, class Destination,
           class TransitionContext = detail::no_context< Event >,
           void ( TransitionContext::*pTransitionAction )( const Event & ) =
@@ -50,74 +30,17 @@
 {
   private:
     //////////////////////////////////////////////////////////////////////////
- struct react_without_transition_action_impl
- {
- template< class State, class EventBase >
- static detail::reaction_result react( State & stt, const EventBase & )
- {
- return detail::result_utility::get_result(
- stt.template transit< Destination >() );
- }
- };
-
- struct react_base_with_transition_action_impl
+ template< class State >
+ struct reactions
     {
- template< class State, class EventBase >
- static detail::reaction_result react(
- State & stt, const EventBase & toEvent )
+ static result react_without_action( State & stt )
       {
- return detail::result_utility::get_result(
- stt.template transit< Destination >( pTransitionAction, toEvent ) );
+ return stt.template transit< Destination >();
       }
- };
 
- struct react_base
- {
- template< class State, class EventBase, class IdType >
- static detail::reaction_result react(
- State & stt, const EventBase & evt, const IdType & )
+ static result react_with_action( State & stt, const Event & evt )
       {
- typedef typename mpl::if_<
- is_same< TransitionContext, detail::no_context< Event > >,
- react_without_transition_action_impl,
- react_base_with_transition_action_impl
- >::type impl;
- return impl::react( stt, evt );
- }
- };
-
- struct react_derived_with_transition_action_impl
- {
- template< class State, class EventBase >
- static detail::reaction_result react(
- State & stt, const EventBase & toEvent )
- {
- return detail::result_utility::get_result(
- stt.template transit< Destination >(
- pTransitionAction,
- *polymorphic_downcast< const Event * >( &toEvent ) ) );
- }
- };
-
- struct react_derived
- {
- template< class State, class EventBase, class IdType >
- static detail::reaction_result react(
- State & stt, const EventBase & evt, const IdType & eventType )
- {
- if ( eventType == Event::static_type() )
- {
- typedef typename mpl::if_<
- is_same< TransitionContext, detail::no_context< Event > >,
- react_without_transition_action_impl,
- react_derived_with_transition_action_impl
- >::type impl;
- return impl::react( stt, evt );
- }
- else
- {
- return detail::no_reaction;
- }
+ return stt.template transit< Destination >( pTransitionAction, evt );
       }
     };
 
@@ -130,11 +53,10 @@
     static detail::reaction_result react(
       State & stt, const EventBase & evt, const IdType & eventType )
     {
- typedef typename mpl::if_<
- is_same< Event, event_base >, react_base, react_derived
- >::type impl;
-
- return impl::react( stt, evt, eventType );
+ typedef detail::reaction_dispatcher<
+ reactions< State >, State, EventBase, Event, TransitionContext, IdType
+ > dispatcher;
+ return dispatcher::react( stt, evt, eventType );
     }
 };
 

Modified: branches/CMake/release/boost/static_assert.hpp
==============================================================================
--- branches/CMake/release/boost/static_assert.hpp (original)
+++ branches/CMake/release/boost/static_assert.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -28,6 +28,16 @@
 # define BOOST_SA_GCC_WORKAROUND
 #endif
 
+//
+// If the compiler issues warnings about old C style casts,
+// then enable this:
+//
+#if defined(__GNUC__) && ((__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 4)))
+# define BOOST_STATIC_ASSERT_BOOL_CAST( x ) ((x) == 0 ? false : true)
+#else
+# define BOOST_STATIC_ASSERT_BOOL_CAST(x) (bool)(x)
+#endif
+
 #ifdef BOOST_HAS_STATIC_ASSERT
 # define BOOST_STATIC_ASSERT( B ) static_assert(B, #B)
 #else
@@ -78,14 +88,14 @@
 #elif defined(BOOST_MSVC)
 #define BOOST_STATIC_ASSERT( B ) \
    typedef ::boost::static_assert_test<\
- sizeof(::boost::STATIC_ASSERTION_FAILURE< (bool)( B ) >)>\
+ sizeof(::boost::STATIC_ASSERTION_FAILURE< BOOST_STATIC_ASSERT_BOOL_CAST ( B ) >)>\
          BOOST_JOIN(boost_static_assert_typedef_, __COUNTER__)
 #elif defined(BOOST_INTEL_CXX_VERSION) || defined(BOOST_SA_GCC_WORKAROUND)
 // agurt 15/sep/02: a special care is needed to force Intel C++ issue an error
 // instead of warning in case of failure
 # define BOOST_STATIC_ASSERT( B ) \
     typedef char BOOST_JOIN(boost_static_assert_typedef_, __LINE__) \
- [ ::boost::STATIC_ASSERTION_FAILURE< (bool)( B ) >::value ]
+ [ ::boost::STATIC_ASSERTION_FAILURE< BOOST_STATIC_ASSERT_BOOL_CAST( B ) >::value ]
 #elif defined(__sgi)
 // special version for SGI MIPSpro compiler
 #define BOOST_STATIC_ASSERT( B ) \
@@ -100,12 +110,12 @@
 #define BOOST_STATIC_ASSERT( B ) \
    BOOST_STATIC_CONSTANT(int, \
      BOOST_JOIN(boost_static_assert_test_, __LINE__) = \
- sizeof(::boost::STATIC_ASSERTION_FAILURE< (bool)( B ) >) )
+ sizeof(::boost::STATIC_ASSERTION_FAILURE< BOOST_STATIC_ASSERT_BOOL_CAST( B ) >) )
 #else
 // generic version
 #define BOOST_STATIC_ASSERT( B ) \
    typedef ::boost::static_assert_test<\
- sizeof(::boost::STATIC_ASSERTION_FAILURE< (bool)( B ) >)>\
+ sizeof(::boost::STATIC_ASSERTION_FAILURE< BOOST_STATIC_ASSERT_BOOL_CAST( B ) >)>\
          BOOST_JOIN(boost_static_assert_typedef_, __LINE__)
 #endif
 

Modified: branches/CMake/release/boost/system/error_code.hpp
==============================================================================
--- branches/CMake/release/boost/system/error_code.hpp (original)
+++ branches/CMake/release/boost/system/error_code.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -47,11 +47,11 @@
     template< class T >
     struct is_error_condition_enum { static const bool value = false; };
 
- // portable error_conditions -------------------------------------------//
+ // generic error_conditions --------------------------------------------//
 
- namespace posix_error
+ namespace errc
     {
- enum posix_errno
+ enum errc_t
       {
         success = 0,
         address_family_not_supported = EAFNOSUPPORT,
@@ -134,13 +134,14 @@
         wrong_protocol_type = EPROTOTYPE
       };
 
- } // namespace posix_error
+ } // namespace errc
 
 # ifndef BOOST_SYSTEM_NO_DEPRECATED
- namespace posix = posix_error;
+ namespace posix = errc;
+ namespace posix_error = errc;
 # endif
 
- template<> struct is_error_condition_enum<posix_error::posix_errno>
+ template<> struct is_error_condition_enum<errc::errc_t>
       { static const bool value = true; };
 
 
@@ -199,15 +200,16 @@
     // predefined error categories -----------------------------------------//
 
     BOOST_SYSTEM_DECL const error_category & get_system_category();
- BOOST_SYSTEM_DECL const error_category & get_posix_category();
+ BOOST_SYSTEM_DECL const error_category & get_generic_category();
 
     static const error_category & system_category = get_system_category();
- static const error_category & posix_category = get_posix_category();
+ static const error_category & generic_category = get_generic_category();
     
 # ifndef BOOST_SYSTEM_NO_DEPRECATED
     // deprecated synonyms
- static const error_category & errno_ecat = get_posix_category();
- static const error_category & native_ecat = get_system_category();
+ static const error_category & posix_category = get_generic_category();
+ static const error_category & errno_ecat = get_generic_category();
+ static const error_category & native_ecat = get_system_category();
 # endif
 
     // class error_condition -----------------------------------------------//
@@ -219,7 +221,7 @@
     public:
 
       // constructors:
- error_condition() : m_val(0), m_cat(&get_posix_category()) {}
+ error_condition() : m_val(0), m_cat(&get_generic_category()) {}
       error_condition( int val, const error_category & cat ) : m_val(val), m_cat(&cat) {}
 
       template <class ConditionEnum>
@@ -248,7 +250,7 @@
       void clear()
       {
         m_val = 0;
- m_cat = &get_posix_category();
+ m_cat = &get_generic_category();
       }
 
       // observers:
@@ -436,17 +438,17 @@
         + reinterpret_cast<std::size_t>(&ec.category());
     }
 
- // make_* functions for posix_error::posix_errno -----------------------------//
+ // make_* functions for errc::errc_t -----------------------------//
 
- namespace posix_error
+ namespace errc
     {
       // explicit conversion:
- inline error_code make_error_code( posix_errno e )
- { return error_code( e, get_posix_category() ); }
+ inline error_code make_error_code( errc_t e )
+ { return error_code( e, get_generic_category() ); }
 
       // implicit conversion:
- inline error_condition make_error_condition( posix_errno e )
- { return error_condition( e, get_posix_category() ); }
+ inline error_condition make_error_condition( errc_t e )
+ { return error_condition( e, get_generic_category() ); }
     }
 
     // error_category default implementation -------------------------------//

Modified: branches/CMake/release/boost/system/system_error.hpp
==============================================================================
--- branches/CMake/release/boost/system/system_error.hpp (original)
+++ branches/CMake/release/boost/system/system_error.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -24,13 +24,23 @@
     public:
       system_error( error_code ec )
           : std::runtime_error(""), m_error_code(ec) {}
+
       system_error( error_code ec, const std::string & what_arg )
           : std::runtime_error(what_arg), m_error_code(ec) {}
+
+ system_error( error_code ec, const char* what_arg )
+ : std::runtime_error(what_arg), m_error_code(ec) {}
+
+ system_error( int ev, const error_category & ecat )
+ : std::runtime_error(""), m_error_code(ev,ecat) {}
+
       system_error( int ev, const error_category & ecat,
         const std::string & what_arg )
           : std::runtime_error(what_arg), m_error_code(ev,ecat) {}
- system_error( int ev, const error_category & ecat )
- : std::runtime_error(""), m_error_code(ev,ecat) {}
+
+ system_error( int ev, const error_category & ecat,
+ const char * what_arg )
+ : std::runtime_error(what_arg), m_error_code(ev,ecat) {}
 
       virtual ~system_error() throw() {}
 

Modified: branches/CMake/release/boost/thread/detail/platform.hpp
==============================================================================
--- branches/CMake/release/boost/thread/detail/platform.hpp (original)
+++ branches/CMake/release/boost/thread/detail/platform.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -42,9 +42,9 @@
 #elif defined(__QNXNTO__)
 # define BOOST_THREAD_QNXNTO
 #elif defined(unix) || defined(__unix) || defined(_XOPEN_SOURCE) || defined(_POSIX_SOURCE)
-# if defined(BOOST_HAS_PTHREADS) && !defined(BOOST_THREAD_POSIX)
-# define BOOST_THREAD_POSIX
-# endif
+# if defined(BOOST_HAS_PTHREADS) && !defined(BOOST_THREAD_POSIX)
+# define BOOST_THREAD_POSIX
+# endif
 #endif
 
 // For every supported platform add a new entry into the dispatch table below.

Modified: branches/CMake/release/boost/thread/detail/thread.hpp
==============================================================================
--- branches/CMake/release/boost/thread/detail/thread.hpp (original)
+++ branches/CMake/release/boost/thread/detail/thread.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -163,7 +163,7 @@
         thread& operator=(thread&& other)
         {
             thread_info=other.thread_info;
- other.thread_info.reset((detail::thread_data_base*)0);
+ other.thread_info.reset();
             return *this;
         }
 
@@ -190,7 +190,7 @@
         thread(detail::thread_move_t<thread> x)
         {
             thread_info=x->thread_info;
- x->thread_info.reset((detail::thread_data_base*)0);
+ x->thread_info.reset();
         }
         
         thread& operator=(detail::thread_move_t<thread> x)

Modified: branches/CMake/release/boost/thread/locks.hpp
==============================================================================
--- branches/CMake/release/boost/thread/locks.hpp (original)
+++ branches/CMake/release/boost/thread/locks.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,6 +16,8 @@
 
 namespace boost
 {
+ struct xtime;
+
     namespace detail
     {
         template<typename T>
@@ -126,8 +128,10 @@
     private:
         Mutex* m;
         bool is_locked;
- explicit unique_lock(unique_lock&);
+ unique_lock(unique_lock&);
+ explicit unique_lock(upgrade_lock<Mutex>&);
         unique_lock& operator=(unique_lock&);
+ unique_lock& operator=(upgrade_lock<Mutex>& other);
     public:
         unique_lock():
             m(0),is_locked(false)
@@ -154,6 +158,40 @@
         {
             timed_lock(target_time);
         }
+#ifdef BOOST_HAS_RVALUE_REFS
+ unique_lock(unique_lock&& other):
+ m(other.m),is_locked(other.is_locked)
+ {
+ other.is_locked=false;
+ other.m=0;
+ }
+ explicit unique_lock(upgrade_lock<Mutex>&& other);
+
+ unique_lock<Mutex>&& move()
+ {
+ return static_cast<unique_lock<Mutex>&&>(*this);
+ }
+
+
+ unique_lock& operator=(unique_lock<Mutex>&& other)
+ {
+ unique_lock temp(other);
+ swap(temp);
+ return *this;
+ }
+
+ unique_lock& operator=(upgrade_lock<Mutex>&& other)
+ {
+ unique_lock temp(other);
+ swap(temp);
+ return *this;
+ }
+ void swap(unique_lock&& other)
+ {
+ std::swap(m,other.m);
+ std::swap(is_locked,other.is_locked);
+ }
+#else
         unique_lock(detail::thread_move_t<unique_lock<Mutex> > other):
             m(other->m),is_locked(other->is_locked)
         {
@@ -185,7 +223,6 @@
             swap(temp);
             return *this;
         }
-
         void swap(unique_lock& other)
         {
             std::swap(m,other.m);
@@ -196,6 +233,7 @@
             std::swap(m,other->m);
             std::swap(is_locked,other->is_locked);
         }
+#endif
         
         ~unique_lock()
         {
@@ -234,6 +272,11 @@
             is_locked=m->timed_lock(absolute_time);
             return is_locked;
         }
+ bool timed_lock(::boost::xtime const& absolute_time)
+ {
+ is_locked=m->timed_lock(absolute_time);
+ return is_locked;
+ }
         void unlock()
         {
             if(!owns_lock())
@@ -275,11 +318,27 @@
         friend class upgrade_lock<Mutex>;
     };
 
+#ifdef BOOST_HAS_RVALUE_REFS
+ template<typename Mutex>
+ void swap(unique_lock<Mutex>&& lhs,unique_lock<Mutex>&& rhs)
+ {
+ lhs.swap(rhs);
+ }
+#else
     template<typename Mutex>
     void swap(unique_lock<Mutex>& lhs,unique_lock<Mutex>& rhs)
     {
         lhs.swap(rhs);
     }
+#endif
+
+#ifdef BOOST_HAS_RVALUE_REFS
+ template<typename Mutex>
+ inline unique_lock<Mutex>&& move(unique_lock<Mutex>&& ul)
+ {
+ return ul;
+ }
+#endif
 
     template<typename Mutex>
     class shared_lock
@@ -378,11 +437,29 @@
             return *this;
         }
 
+#ifdef BOOST_HAS_RVALUE_REFS
+ void swap(shared_lock&& other)
+ {
+ std::swap(m,other.m);
+ std::swap(is_locked,other.is_locked);
+ }
+#else
         void swap(shared_lock& other)
         {
             std::swap(m,other.m);
             std::swap(is_locked,other.is_locked);
         }
+ void swap(boost::detail::thread_move_t<shared_lock> other)
+ {
+ std::swap(m,other->m);
+ std::swap(is_locked,other->is_locked);
+ }
+#endif
+
+ Mutex* mutex() const
+ {
+ return m;
+ }
         
         ~shared_lock()
         {
@@ -418,6 +495,16 @@
             is_locked=m->timed_lock_shared(target_time);
             return is_locked;
         }
+ template<typename Duration>
+ bool timed_lock(Duration const& target_time)
+ {
+ if(owns_lock())
+ {
+ throw boost::lock_error();
+ }
+ is_locked=m->timed_lock_shared(target_time);
+ return is_locked;
+ }
         void unlock()
         {
             if(!owns_lock())
@@ -444,6 +531,20 @@
 
     };
 
+#ifdef BOOST_HAS_RVALUE_REFS
+ template<typename Mutex>
+ void swap(shared_lock<Mutex>&& lhs,shared_lock<Mutex>&& rhs)
+ {
+ lhs.swap(rhs);
+ }
+#else
+ template<typename Mutex>
+ void swap(shared_lock<Mutex>& lhs,shared_lock<Mutex>& rhs)
+ {
+ lhs.swap(rhs);
+ }
+#endif
+
     template<typename Mutex>
     class upgrade_lock
     {
@@ -576,6 +677,18 @@
     };
 
 
+#ifdef BOOST_HAS_RVALUE_REFS
+ template<typename Mutex>
+ unique_lock<Mutex>::unique_lock(upgrade_lock<Mutex>&& other):
+ m(other.m),is_locked(other.is_locked)
+ {
+ other.is_locked=false;
+ if(is_locked)
+ {
+ m.unlock_upgrade_and_lock();
+ }
+ }
+#else
     template<typename Mutex>
     unique_lock<Mutex>::unique_lock(detail::thread_move_t<upgrade_lock<Mutex> > other):
         m(other->m),is_locked(other->is_locked)
@@ -586,7 +699,7 @@
             m->unlock_upgrade_and_lock();
         }
     }
-
+#endif
     template <class Mutex>
     class upgrade_to_unique_lock
     {
@@ -685,6 +798,12 @@
                 return *this;
             }
 
+#ifdef BOOST_HAS_RVALUE_REFS
+ void swap(try_lock_wrapper&& other)
+ {
+ base::swap(other);
+ }
+#else
             void swap(try_lock_wrapper& other)
             {
                 base::swap(other);
@@ -693,6 +812,7 @@
             {
                 base::swap(*other);
             }
+#endif
 
             void lock()
             {
@@ -730,11 +850,19 @@
             }
         };
 
+#ifdef BOOST_HAS_RVALUE_REFS
+ template<typename Mutex>
+ void swap(try_lock_wrapper<Mutex>&& lhs,try_lock_wrapper<Mutex>&& rhs)
+ {
+ lhs.swap(rhs);
+ }
+#else
         template<typename Mutex>
         void swap(try_lock_wrapper<Mutex>& lhs,try_lock_wrapper<Mutex>& rhs)
         {
             lhs.swap(rhs);
         }
+#endif
         
         template<typename MutexType1,typename MutexType2>
         unsigned try_lock_internal(MutexType1& m1,MutexType2& m2)
@@ -1131,5 +1259,6 @@
 }
 
 #include <boost/config/abi_suffix.hpp>
+#include <boost/mpl/identity.hpp>
 
 #endif

Modified: branches/CMake/release/boost/thread/pthread/condition_variable.hpp
==============================================================================
--- branches/CMake/release/boost/thread/pthread/condition_variable.hpp (original)
+++ branches/CMake/release/boost/thread/pthread/condition_variable.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -121,6 +121,17 @@
             }
             return true;
         }
+ template<typename lock_type>
+ bool timed_wait(lock_type& m,xtime const& wait_until)
+ {
+ return timed_wait(m,system_time(wait_until));
+ }
+
+ template<typename lock_type,typename duration_type>
+ bool timed_wait(lock_type& m,duration_type const& wait_duration)
+ {
+ return timed_wait(m,get_system_time()+wait_duration);
+ }
 
         template<typename lock_type,typename predicate_type>
         bool timed_wait(lock_type& m,boost::system_time const& wait_until,predicate_type pred)

Modified: branches/CMake/release/boost/thread/pthread/condition_variable_fwd.hpp
==============================================================================
--- branches/CMake/release/boost/thread/pthread/condition_variable_fwd.hpp (original)
+++ branches/CMake/release/boost/thread/pthread/condition_variable_fwd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -47,6 +47,16 @@
         }
 
         bool timed_wait(unique_lock<mutex>& m,boost::system_time const& wait_until);
+ bool timed_wait(unique_lock<mutex>& m,xtime const& wait_until)
+ {
+ return timed_wait(m,system_time(wait_until));
+ }
+
+ template<typename duration_type>
+ bool timed_wait(unique_lock<mutex>& m,duration_type const& wait_duration)
+ {
+ return timed_wait(m,get_system_time()+wait_duration);
+ }
 
         template<typename predicate_type>
         bool timed_wait(unique_lock<mutex>& m,boost::system_time const& wait_until,predicate_type pred)

Modified: branches/CMake/release/boost/thread/pthread/mutex.hpp
==============================================================================
--- branches/CMake/release/boost/thread/pthread/mutex.hpp (original)
+++ branches/CMake/release/boost/thread/pthread/mutex.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,6 +10,7 @@
 #include <boost/thread/exceptions.hpp>
 #include <boost/thread/locks.hpp>
 #include <boost/thread/thread_time.hpp>
+#include <boost/thread/xtime.hpp>
 #include <boost/assert.hpp>
 #include <errno.h>
 #include "timespec.hpp"
@@ -113,6 +114,10 @@
         {
             return timed_lock(get_system_time()+relative_time);
         }
+ bool timed_lock(boost::xtime const & absolute_time)
+ {
+ return timed_lock(system_time(absolute_time));
+ }
 
 #ifdef BOOST_PTHREAD_HAS_TIMEDLOCK
         void lock()

Modified: branches/CMake/release/boost/thread/tss.hpp
==============================================================================
--- branches/CMake/release/boost/thread/tss.hpp (original)
+++ branches/CMake/release/boost/thread/tss.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,6 +5,7 @@
 // http://www.boost.org/LICENSE_1_0.txt)
 // (C) Copyright 2007-8 Anthony Williams
 
+#include <boost/thread/detail/config.hpp>
 #include <boost/shared_ptr.hpp>
 #include <boost/thread/detail/thread_heap_alloc.hpp>
 

Modified: branches/CMake/release/boost/thread/win32/basic_timed_mutex.hpp
==============================================================================
--- branches/CMake/release/boost/thread/win32/basic_timed_mutex.hpp (original)
+++ branches/CMake/release/boost/thread/win32/basic_timed_mutex.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,7 @@
 #include "thread_primitives.hpp"
 #include "interlocked_read.hpp"
 #include <boost/thread/thread_time.hpp>
+#include <boost/thread/xtime.hpp>
 #include <boost/detail/interlocked.hpp>
 
 #include <boost/config/abi_prefix.hpp>
@@ -117,6 +118,11 @@
                 return timed_lock(get_system_time()+timeout);
             }
 
+ bool timed_lock(boost::xtime const& timeout)
+ {
+ return timed_lock(system_time(timeout));
+ }
+
             long get_active_count()
             {
                 return ::boost::detail::interlocked_read_acquire(&active_count);

Modified: branches/CMake/release/boost/thread/win32/mutex.hpp
==============================================================================
--- branches/CMake/release/boost/thread/win32/mutex.hpp (original)
+++ branches/CMake/release/boost/thread/win32/mutex.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,7 +20,7 @@
     }
 
     class mutex:
- boost::noncopyable,
+ boost::noncopyable,
         public ::boost::detail::underlying_mutex
     {
     public:

Modified: branches/CMake/release/boost/thread/win32/shared_mutex.hpp
==============================================================================
--- branches/CMake/release/boost/thread/win32/shared_mutex.hpp (original)
+++ branches/CMake/release/boost/thread/win32/shared_mutex.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -91,7 +91,7 @@
         bool try_lock_shared()
         {
             state_data old_state=state;
- do
+ for(;;)
             {
                 state_data new_state=old_state;
                 if(!new_state.exclusive && !new_state.exclusive_waiting_blocked)
@@ -106,14 +106,6 @@
                 }
                 old_state=current_state;
             }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
             return !(old_state.exclusive| old_state.exclusive_waiting_blocked);
         }
 
@@ -130,17 +122,10 @@
 
         bool timed_lock_shared(boost::system_time const& wait_until)
         {
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true)
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
+ for(;;)
             {
                 state_data old_state=state;
- do
+ for(;;)
                 {
                     state_data new_state=old_state;
                     if(new_state.exclusive || new_state.exclusive_waiting_blocked)
@@ -159,14 +144,6 @@
                     }
                     old_state=current_state;
                 }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
 
                 if(!(old_state.exclusive| old_state.exclusive_waiting_blocked))
                 {
@@ -176,7 +153,7 @@
                 unsigned long const res=detail::win32::WaitForSingleObject(unlock_sem,::boost::detail::get_milliseconds_until(wait_until));
                 if(res==detail::win32::timeout)
                 {
- do
+ for(;;)
                     {
                         state_data new_state=old_state;
                         if(new_state.exclusive || new_state.exclusive_waiting_blocked)
@@ -198,14 +175,6 @@
                         }
                         old_state=current_state;
                     }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
 
                     if(!(old_state.exclusive| old_state.exclusive_waiting_blocked))
                     {
@@ -221,7 +190,7 @@
         void unlock_shared()
         {
             state_data old_state=state;
- do
+ for(;;)
             {
                 state_data new_state=old_state;
                 bool const last_reader=!--new_state.shared_count;
@@ -262,14 +231,6 @@
                 }
                 old_state=current_state;
             }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
         }
 
         void lock()
@@ -283,20 +244,39 @@
             return timed_lock(get_system_time()+relative_time);
         }
 
+ bool try_lock()
+ {
+ state_data old_state=state;
+ for(;;)
+ {
+ state_data new_state=old_state;
+ if(new_state.shared_count || new_state.exclusive)
+ {
+ return false;
+ }
+ else
+ {
+ new_state.exclusive=true;
+ }
+
+ state_data const current_state=interlocked_compare_exchange(&state,new_state,old_state);
+ if(current_state==old_state)
+ {
+ break;
+ }
+ old_state=current_state;
+ }
+ return true;
+ }
+
+
         bool timed_lock(boost::system_time const& wait_until)
         {
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true)
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
+ for(;;)
             {
                 state_data old_state=state;
 
- do
+ for(;;)
                 {
                     state_data new_state=old_state;
                     if(new_state.shared_count || new_state.exclusive)
@@ -316,14 +296,6 @@
                     }
                     old_state=current_state;
                 }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
 
                 if(!old_state.shared_count && !old_state.exclusive)
                 {
@@ -332,7 +304,7 @@
                 unsigned long const wait_res=detail::win32::WaitForMultipleObjects(2,semaphores,true,::boost::detail::get_milliseconds_until(wait_until));
                 if(wait_res==detail::win32::timeout)
                 {
- do
+ for(;;)
                     {
                         state_data new_state=old_state;
                         if(new_state.shared_count || new_state.exclusive)
@@ -357,14 +329,6 @@
                         }
                         old_state=current_state;
                     }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
                     if(!old_state.shared_count && !old_state.exclusive)
                     {
                         return true;
@@ -378,7 +342,7 @@
         void unlock()
         {
             state_data old_state=state;
- do
+ for(;;)
             {
                 state_data new_state=old_state;
                 new_state.exclusive=false;
@@ -396,30 +360,15 @@
                 }
                 old_state=current_state;
             }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
             release_waiters(old_state);
         }
 
         void lock_upgrade()
         {
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true)
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
+ for(;;)
             {
                 state_data old_state=state;
- do
+ for(;;)
                 {
                     state_data new_state=old_state;
                     if(new_state.exclusive || new_state.exclusive_waiting_blocked || new_state.upgrade)
@@ -439,14 +388,6 @@
                     }
                     old_state=current_state;
                 }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
 
                 if(!(old_state.exclusive|| old_state.exclusive_waiting_blocked|| old_state.upgrade))
                 {
@@ -457,10 +398,36 @@
             }
         }
 
+ bool try_lock_upgrade()
+ {
+ state_data old_state=state;
+ for(;;)
+ {
+ state_data new_state=old_state;
+ if(new_state.exclusive || new_state.exclusive_waiting_blocked || new_state.upgrade)
+ {
+ return false;
+ }
+ else
+ {
+ ++new_state.shared_count;
+ new_state.upgrade=true;
+ }
+
+ state_data const current_state=interlocked_compare_exchange(&state,new_state,old_state);
+ if(current_state==old_state)
+ {
+ break;
+ }
+ old_state=current_state;
+ }
+ return true;
+ }
+
         void unlock_upgrade()
         {
             state_data old_state=state;
- do
+ for(;;)
             {
                 state_data new_state=old_state;
                 new_state.upgrade=false;
@@ -487,20 +454,12 @@
                 }
                 old_state=current_state;
             }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
         }
 
         void unlock_upgrade_and_lock()
         {
             state_data old_state=state;
- do
+ for(;;)
             {
                 state_data new_state=old_state;
                 bool const last_reader=!--new_state.shared_count;
@@ -522,20 +481,12 @@
                 }
                 old_state=current_state;
             }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
         }
 
         void unlock_and_lock_upgrade()
         {
             state_data old_state=state;
- do
+ for(;;)
             {
                 state_data new_state=old_state;
                 new_state.exclusive=false;
@@ -555,21 +506,13 @@
                 }
                 old_state=current_state;
             }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
             release_waiters(old_state);
         }
         
         void unlock_and_lock_shared()
         {
             state_data old_state=state;
- do
+ for(;;)
             {
                 state_data new_state=old_state;
                 new_state.exclusive=false;
@@ -588,21 +531,13 @@
                 }
                 old_state=current_state;
             }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
             release_waiters(old_state);
         }
         
         void unlock_upgrade_and_lock_shared()
         {
             state_data old_state=state;
- do
+ for(;;)
             {
                 state_data new_state=old_state;
                 new_state.upgrade=false;
@@ -620,14 +555,6 @@
                 }
                 old_state=current_state;
             }
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
- while(true);
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
             release_waiters(old_state);
         }
         

Modified: branches/CMake/release/boost/thread/win32/thread_primitives.hpp
==============================================================================
--- branches/CMake/release/boost/thread/win32/thread_primitives.hpp (original)
+++ branches/CMake/release/boost/thread/win32/thread_primitives.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -64,7 +64,7 @@
 # ifdef UNDER_CE
 # ifndef WINAPI
 # ifndef _WIN32_WCE_EMULATION
-# define WINAPI __cdecl // Note this doesn't match the desktop definition
+# define WINAPI __cdecl // Note this doesn't match the desktop definition
 # else
 # define WINAPI __stdcall
 # endif
@@ -282,16 +282,6 @@
 }
 
 #if defined(BOOST_MSVC) && (_MSC_VER>=1400) && !defined(UNDER_CE)
-#if _MSC_VER==1400
-extern "C" unsigned char _interlockedbittestandset(long *a,long b);
-extern "C" unsigned char _interlockedbittestandreset(long *a,long b);
-#else
-extern "C" unsigned char _interlockedbittestandset(volatile long *a,long b);
-extern "C" unsigned char _interlockedbittestandreset(volatile long *a,long b);
-#endif
-
-#pragma intrinsic(_interlockedbittestandset)
-#pragma intrinsic(_interlockedbittestandreset)
 
 namespace boost
 {
@@ -299,6 +289,17 @@
     {
         namespace win32
         {
+#if _MSC_VER==1400
+ extern "C" unsigned char _interlockedbittestandset(long *a,long b);
+ extern "C" unsigned char _interlockedbittestandreset(long *a,long b);
+#else
+ extern "C" unsigned char _interlockedbittestandset(volatile long *a,long b);
+ extern "C" unsigned char _interlockedbittestandreset(volatile long *a,long b);
+#endif
+
+#pragma intrinsic(_interlockedbittestandset)
+#pragma intrinsic(_interlockedbittestandreset)
+
             inline bool interlocked_bit_test_and_set(long* x,long bit)
             {
                 return _interlockedbittestandset(x,bit)!=0;

Modified: branches/CMake/release/boost/tr1/detail/config.hpp
==============================================================================
--- branches/CMake/release/boost/tr1/detail/config.hpp (original)
+++ branches/CMake/release/boost/tr1/detail/config.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -112,7 +112,9 @@
 #if defined(_MSC_VER) && (_MSC_VER >= 1500) \
    && defined(_MSC_FULL_VER) && \
    !defined(__SGI_STL_PORT) && \
- !defined(_STLPORT_VERSION)
+ !defined(_STLPORT_VERSION) && \
+ !defined(_RWSTD_VER_STR) && \
+ !defined(_RWSTD_VER)
 //
 // MSVC-9.0 defines a not-quite TR1 conforming hash
 // function object in <functional>, so we must define

Modified: branches/CMake/release/boost/type_traits/alignment_of.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/alignment_of.hpp (original)
+++ branches/CMake/release/boost/type_traits/alignment_of.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,6 +12,7 @@
 #include <boost/config.hpp>
 #include <cstddef>
 
+#include <boost/type_traits/intrinsics.hpp>
 // should be the last #include
 #include <boost/type_traits/detail/size_t_trait_def.hpp>
 
@@ -30,6 +31,10 @@
 // get the alignment of some arbitrary type:
 namespace detail {
 
+#ifdef BOOST_MSVC
+#pragma warning(push)
+#pragma warning(disable:4324) // structure was padded due to __declspec(align())
+#endif
 template <typename T>
 struct alignment_of_hack
 {
@@ -37,7 +42,9 @@
     T t;
     alignment_of_hack();
 };
-
+#ifdef BOOST_MSVC
+#pragma warning(pop)
+#endif
 
 template <unsigned A, unsigned S>
 struct alignment_logic
@@ -49,11 +56,21 @@
 template< typename T >
 struct alignment_of_impl
 {
+#ifndef BOOST_ALIGNMENT_OF
     BOOST_STATIC_CONSTANT(std::size_t, value =
         (::boost::detail::alignment_logic<
             sizeof(::boost::detail::alignment_of_hack<T>) - sizeof(T),
             sizeof(T)
>::value));
+#else
+ //
+ // We put this here, rather than in the definition of
+ // alignment_of below, because MSVC's __alignof doesn't
+ // always work in that context for some unexplained reason.
+ // (See type_with_alignment tests for test cases).
+ //
+ BOOST_STATIC_CONSTANT(std::size_t, value = BOOST_ALIGNMENT_OF(T));
+#endif
 };
 
 } // namespace detail

Modified: branches/CMake/release/boost/type_traits/conversion_traits.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/conversion_traits.hpp (original)
+++ branches/CMake/release/boost/type_traits/conversion_traits.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 
 // Copyright 2000 John Maddock (john_at_[hidden])
 // Copyright 2000 Jeremy Siek (jsiek_at_[hidden])
-// Copyright 1999, 2000 Jaakko J„rvi (jaakko.jarvi_at_[hidden])
+// Copyright 1999, 2000 Jaakko Jarvi (jaakko.jarvi_at_[hidden])
 //
 // Use, modification and distribution are subject to the Boost Software License,
 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at

Modified: branches/CMake/release/boost/type_traits/intrinsics.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/intrinsics.hpp (original)
+++ branches/CMake/release/boost/type_traits/intrinsics.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -31,6 +31,18 @@
 // BOOST_HAS_NOTHROW_COPY(T) should evaluate to true if T(t) can not throw
 // BOOST_HAS_NOTHROW_ASSIGN(T) should evaluate to true if t = u can not throw
 // BOOST_HAS_VIRTUAL_DESTRUCTOR(T) should evaluate to true T has a virtual destructor
+//
+// The following can also be defined: when detected our implementation is greatly simplified.
+// Note that unlike the macros above these do not have default definitions, so we can use
+// #ifdef MACRONAME to detect when these are available.
+//
+// BOOST_IS_ABSTRACT(T) true if T is an abstract type
+// BOOST_IS_BASE_OF(T,U) true if T is a base class of U
+// BOOST_IS_CLASS(T) true if T is a class type
+// BOOST_IS_CONVERTIBLE(T,U) true if T is convertible to U
+// BOOST_IS_ENUM(T) true is T is an enum
+// BOOST_IS_POLYMORPHIC(T) true if T is a polymorphic type
+// BOOST_ALIGNMENT_OF(T) should evaluate to the alignment requirements of type T.
 
 #ifdef BOOST_HAS_SGI_TYPE_TRAITS
     // Hook into SGI's __type_traits class, this will pick up user supplied
@@ -71,6 +83,8 @@
 #endif
 
 #if defined(BOOST_MSVC) && defined(_MSC_FULL_VER) && (_MSC_FULL_VER >=140050215)
+# include <boost/type_traits/is_same.hpp>
+
 # define BOOST_IS_UNION(T) __is_union(T)
 # define BOOST_IS_POD(T) (__is_pod(T) && __has_trivial_constructor(T))
 # define BOOST_IS_EMPTY(T) __is_empty(T)
@@ -82,6 +96,17 @@
 # define BOOST_HAS_NOTHROW_COPY(T) __has_nothrow_copy(T)
 # define BOOST_HAS_NOTHROW_ASSIGN(T) __has_nothrow_assign(T)
 # define BOOST_HAS_VIRTUAL_DESTRUCTOR(T) __has_virtual_destructor(T)
+
+# define BOOST_IS_ABSTRACT(T) __is_abstract(T)
+# define BOOST_IS_BASE_OF(T,U) (__is_base_of(T,U) && !is_same<T,U>::value)
+# define BOOST_IS_CLASS(T) __is_class(T)
+// This one doesn't quite always do the right thing:
+// # define BOOST_IS_CONVERTIBLE(T,U) __is_convertible_to(T,U)
+# define BOOST_IS_ENUM(T) __is_enum(T)
+// This one doesn't quite always do the right thing:
+// # define BOOST_IS_POLYMORPHIC(T) __is_polymorphic(T)
+# define BOOST_ALIGNMENT_OF(T) __alignof(T)
+
 # define BOOST_HAS_TYPE_TRAITS_INTRINSICS
 #endif
 
@@ -101,6 +126,33 @@
 # define BOOST_HAS_TYPE_TRAITS_INTRINSICS
 #endif
 
+#if defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)))
+# include <boost/type_traits/is_same.hpp>
+# include <boost/type_traits/is_reference.hpp>
+# include <boost/type_traits/is_volatile.hpp>
+
+# define BOOST_IS_UNION(T) __is_union(T)
+# define BOOST_IS_POD(T) __is_pod(T)
+# define BOOST_IS_EMPTY(T) __is_empty(T)
+# define BOOST_HAS_TRIVIAL_CONSTRUCTOR(T) __has_trivial_constructor(T)
+# define BOOST_HAS_TRIVIAL_COPY(T) (__has_trivial_copy(T) && !is_reference<T>::value)
+# define BOOST_HAS_TRIVIAL_ASSIGN(T) __has_trivial_assign(T)
+# define BOOST_HAS_TRIVIAL_DESTRUCTOR(T) __has_trivial_destructor(T)
+# define BOOST_HAS_NOTHROW_CONSTRUCTOR(T) __has_nothrow_constructor(T)
+# define BOOST_HAS_NOTHROW_COPY(T) (__has_nothrow_copy(T) && !is_volatile<T>::value && !is_reference<T>::value)
+# define BOOST_HAS_NOTHROW_ASSIGN(T) (__has_nothrow_assign(T) && !is_volatile<T>::value)
+# define BOOST_HAS_VIRTUAL_DESTRUCTOR(T) __has_virtual_destructor(T)
+
+# define BOOST_IS_ABSTRACT(T) __is_abstract(T)
+# define BOOST_IS_BASE_OF(T,U) (__is_base_of(T,U) && !is_same<T,U>::value)
+# define BOOST_IS_CLASS(T) __is_class(T)
+# define BOOST_IS_ENUM(T) __is_enum(T)
+# define BOOST_IS_POLYMORPHIC(T) __is_polymorphic(T)
+# define BOOST_ALIGNMENT_OF(T) __alignof__(T)
+
+# define BOOST_HAS_TYPE_TRAITS_INTRINSICS
+#endif
+
 #ifndef BOOST_IS_UNION
 # define BOOST_IS_UNION(T) false
 #endif

Modified: branches/CMake/release/boost/type_traits/is_abstract.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/is_abstract.hpp (original)
+++ branches/CMake/release/boost/type_traits/is_abstract.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -48,6 +48,8 @@
 // to degrade gracefully, rather than trash the compiler (John Maddock).
 //
 
+#include <boost/type_traits/intrinsics.hpp>
+#ifndef BOOST_IS_ABSTRACT
 #include <boost/static_assert.hpp>
 #include <boost/type_traits/detail/yes_no_type.hpp>
 #include <boost/type_traits/is_class.hpp>
@@ -55,6 +57,7 @@
 #ifdef BOOST_NO_IS_ABSTRACT
 #include <boost/type_traits/is_polymorphic.hpp>
 #endif
+#endif
 // should be the last #include
 #include <boost/type_traits/detail/bool_trait_def.hpp>
 
@@ -62,7 +65,13 @@
 namespace boost {
 namespace detail{
 
-#ifndef BOOST_NO_IS_ABSTRACT
+#ifdef BOOST_IS_ABSTRACT
+template <class T>
+struct is_abstract_imp
+{
+ BOOST_STATIC_CONSTANT(bool, value = BOOST_IS_ABSTRACT(T));
+};
+#elif !defined(BOOST_NO_IS_ABSTRACT)
 template<class T>
 struct is_abstract_imp2
 {

Modified: branches/CMake/release/boost/type_traits/is_base_and_derived.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/is_base_and_derived.hpp (original)
+++ branches/CMake/release/boost/type_traits/is_base_and_derived.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,6 +9,8 @@
 #ifndef BOOST_TT_IS_BASE_AND_DERIVED_HPP_INCLUDED
 #define BOOST_TT_IS_BASE_AND_DERIVED_HPP_INCLUDED
 
+#include <boost/type_traits/intrinsics.hpp>
+#ifndef BOOST_IS_BASE_OF
 #include <boost/type_traits/is_class.hpp>
 #include <boost/type_traits/is_same.hpp>
 #include <boost/type_traits/is_convertible.hpp>
@@ -16,6 +18,7 @@
 #include <boost/type_traits/remove_cv.hpp>
 #include <boost/config.hpp>
 #include <boost/static_assert.hpp>
+#endif
 
 // should be the last #include
 #include <boost/type_traits/detail/bool_trait_def.hpp>
@@ -24,6 +27,7 @@
 
 namespace detail {
 
+#ifndef BOOST_IS_BASE_OF
 #if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581)) \
  && !BOOST_WORKAROUND(__SUNPRO_CC , <= 0x540) \
  && !BOOST_WORKAROUND(__EDG_VERSION__, <= 243) \
@@ -214,7 +218,13 @@
 
     BOOST_STATIC_CONSTANT(bool, value = bound_type::value);
 };
-
+#else
+template <typename B, typename D>
+struct is_base_and_derived_impl
+{
+ BOOST_STATIC_CONSTANT(bool, value = BOOST_IS_BASE_OF(B,D));
+};
+#endif
 } // namespace detail
 
 BOOST_TT_AUX_BOOL_TRAIT_DEF2(

Modified: branches/CMake/release/boost/type_traits/is_class.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/is_class.hpp (original)
+++ branches/CMake/release/boost/type_traits/is_class.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,6 +11,8 @@
 #define BOOST_TT_IS_CLASS_HPP_INCLUDED
 
 #include <boost/type_traits/config.hpp>
+#include <boost/type_traits/intrinsics.hpp>
+#ifndef BOOST_IS_CLASS
 # include <boost/type_traits/is_union.hpp>
 # include <boost/type_traits/detail/ice_and.hpp>
 # include <boost/type_traits/detail/ice_not.hpp>
@@ -28,6 +30,7 @@
 #ifdef __EDG_VERSION__
 # include <boost/type_traits/remove_cv.hpp>
 #endif
+#endif // BOOST_IS_CLASS
 
 // should be the last #include
 #include <boost/type_traits/detail/bool_trait_def.hpp>
@@ -36,6 +39,7 @@
 
 namespace detail {
 
+#ifndef BOOST_IS_CLASS
 #ifdef BOOST_TT_HAS_CONFORMING_IS_CLASS_IMPLEMENTATION
 
 // This is actually the conforming implementation which works with
@@ -111,6 +115,13 @@
 };
 
 # endif // BOOST_TT_HAS_CONFORMING_IS_CLASS_IMPLEMENTATION
+# else // BOOST_IS_CLASS
+template <typename T>
+struct is_class_impl
+{
+ BOOST_STATIC_CONSTANT(bool, value = BOOST_IS_CLASS(T));
+};
+# endif // BOOST_IS_CLASS
 
 } // namespace detail
 

Modified: branches/CMake/release/boost/type_traits/is_convertible.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/is_convertible.hpp (original)
+++ branches/CMake/release/boost/type_traits/is_convertible.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 
 // Copyright 2000 John Maddock (john_at_[hidden])
 // Copyright 2000 Jeremy Siek (jsiek_at_[hidden])
-// Copyright 1999, 2000 Jaakko J„rvi (jaakko.jarvi_at_[hidden])
+// Copyright 1999, 2000 Jaakko Jarvi (jaakko.jarvi_at_[hidden])
 //
 // Use, modification and distribution are subject to the Boost Software License,
 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
@@ -12,6 +12,8 @@
 #ifndef BOOST_TT_IS_CONVERTIBLE_HPP_INCLUDED
 #define BOOST_TT_IS_CONVERTIBLE_HPP_INCLUDED
 
+#include <boost/type_traits/intrinsics.hpp>
+#ifndef BOOST_IS_CONVERTIBLE
 #include <boost/type_traits/detail/yes_no_type.hpp>
 #include <boost/type_traits/config.hpp>
 #include <boost/type_traits/is_array.hpp>
@@ -28,11 +30,15 @@
 #include <boost/type_traits/remove_reference.hpp>
 #endif
 
+#endif // BOOST_IS_CONVERTIBLE
+
 // should be always the last #include directive
 #include <boost/type_traits/detail/bool_trait_def.hpp>
 
 namespace boost {
 
+#ifndef BOOST_IS_CONVERTIBLE
+
 // is one type convertable to another?
 //
 // there are multiple versions of the is_convertible
@@ -411,6 +417,12 @@
 
 BOOST_TT_AUX_BOOL_TRAIT_DEF2(is_convertible,From,To,(::boost::detail::is_convertible_impl_dispatch<From,To>::value))
 
+#else
+
+BOOST_TT_AUX_BOOL_TRAIT_DEF2(is_convertible,From,To,BOOST_IS_CONVERTIBLE(From,To))
+
+#endif
+
 } // namespace boost
 
 #include <boost/type_traits/detail/bool_trait_undef.hpp>

Modified: branches/CMake/release/boost/type_traits/is_enum.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/is_enum.hpp (original)
+++ branches/CMake/release/boost/type_traits/is_enum.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,6 +11,8 @@
 #ifndef BOOST_TT_IS_ENUM_HPP_INCLUDED
 #define BOOST_TT_IS_ENUM_HPP_INCLUDED
 
+#include <boost/type_traits/intrinsics.hpp>
+#ifndef BOOST_IS_ENUM
 #include <boost/type_traits/add_reference.hpp>
 #include <boost/type_traits/is_arithmetic.hpp>
 #include <boost/type_traits/is_reference.hpp>
@@ -24,13 +26,14 @@
 # include <boost/type_traits/is_class.hpp>
 # include <boost/type_traits/is_union.hpp>
 #endif
-
+#endif
 
 // should be the last #include
 #include <boost/type_traits/detail/bool_trait_def.hpp>
 
 namespace boost {
 
+#ifndef BOOST_IS_ENUM
 #if !(defined(__BORLANDC__) && (__BORLANDC__ <= 0x551))
 
 namespace detail {
@@ -173,6 +176,12 @@
 
 #endif
 
+#else // BOOST_IS_ENUM
+
+BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_enum,T,BOOST_IS_ENUM(T))
+
+#endif
+
 } // namespace boost
 
 #include <boost/type_traits/detail/bool_trait_undef.hpp>

Modified: branches/CMake/release/boost/type_traits/is_polymorphic.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/is_polymorphic.hpp (original)
+++ branches/CMake/release/boost/type_traits/is_polymorphic.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,13 +8,19 @@
 #ifndef BOOST_TT_IS_POLYMORPHIC_HPP
 #define BOOST_TT_IS_POLYMORPHIC_HPP
 
+#include <boost/type_traits/intrinsics.hpp>
+#ifndef BOOST_IS_POLYMORPHIC
 #include <boost/type_traits/is_class.hpp>
 #include <boost/type_traits/remove_cv.hpp>
+#endif
 // should be the last #include
 #include <boost/type_traits/detail/bool_trait_def.hpp>
 #include <boost/detail/workaround.hpp>
 
 namespace boost{
+
+#ifndef BOOST_IS_POLYMORPHIC
+
 namespace detail{
 
 template <class T>
@@ -95,6 +101,12 @@
 
 BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_polymorphic,T,::boost::detail::is_polymorphic_imp<T>::value)
 
+#else // BOOST_IS_POLYMORPHIC
+
+BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_polymorphic,T,BOOST_IS_POLYMORPHIC(T))
+
+#endif
+
 } // namespace boost
 
 #include <boost/type_traits/detail/bool_trait_undef.hpp>

Modified: branches/CMake/release/boost/type_traits/make_signed.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/make_signed.hpp (original)
+++ branches/CMake/release/boost/type_traits/make_signed.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -72,7 +72,7 @@
                      is_same<t_no_cv, unsigned long>,
                      long,
 #if defined(BOOST_HAS_LONG_LONG)
- long long
+ boost::long_long_type
 #elif defined(BOOST_HAS_MS_INT64)
                      __int64
 #else
@@ -96,7 +96,7 @@
                      sizeof(t_no_cv) == sizeof(unsigned long),
                      long,
 #if defined(BOOST_HAS_LONG_LONG)
- long long
+ boost::long_long_type
 #elif defined(BOOST_HAS_MS_INT64)
                      __int64
 #else

Modified: branches/CMake/release/boost/type_traits/make_unsigned.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/make_unsigned.hpp (original)
+++ branches/CMake/release/boost/type_traits/make_unsigned.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -72,7 +72,7 @@
                      is_same<t_no_cv, long>,
                      unsigned long,
 #if defined(BOOST_HAS_LONG_LONG)
- unsigned long long
+ boost::ulong_long_type
 #elif defined(BOOST_HAS_MS_INT64)
                      unsigned __int64
 #else
@@ -96,7 +96,7 @@
                      sizeof(t_no_cv) == sizeof(unsigned long),
                      unsigned long,
 #if defined(BOOST_HAS_LONG_LONG)
- unsigned long long
+ boost::ulong_long_type
 #elif defined(BOOST_HAS_MS_INT64)
                      unsigned __int64
 #else

Modified: branches/CMake/release/boost/type_traits/type_with_alignment.hpp
==============================================================================
--- branches/CMake/release/boost/type_traits/type_with_alignment.hpp (original)
+++ branches/CMake/release/boost/type_traits/type_with_alignment.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -189,8 +189,10 @@
 
 // This alignment method originally due to Brian Parker, implemented by David
 // Abrahams, and then ported here by Doug Gregor.
+namespace detail{
+
 template <std::size_t Align>
-class type_with_alignment
+class type_with_alignment_imp
 {
     typedef ::boost::detail::lower_alignment<Align> t1;
     typedef typename mpl::if_c<
@@ -208,6 +210,14 @@
     typedef align_t type;
 };
 
+}
+
+template <std::size_t Align>
+class type_with_alignment
+ : public ::boost::detail::type_with_alignment_imp<Align>
+{
+};
+
 #if defined(__GNUC__)
 namespace align {
 struct __attribute__((__aligned__(2))) a2 {};
@@ -232,6 +242,99 @@
 BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::boost::align::a32,true)
 }
 #endif
+#if (defined(BOOST_MSVC) || (defined(BOOST_INTEL) && defined(_MSC_VER))) && _MSC_VER >= 1300
+//
+// MSVC supports types which have alignments greater than the normal
+// maximum: these are used for example in the types __m64 and __m128
+// to provide types with alignment requirements which match the SSE
+// registers. Therefore we extend type_with_alignment<> to support
+// such types, however, we have to be careful to use a builtin type
+// whenever possible otherwise we break previously working code:
+// see http://article.gmane.org/gmane.comp.lib.boost.devel/173011
+// for an example and test case. Thus types like a8 below will
+// be used *only* if the existing implementation can't provide a type
+// with suitable alignment. This does mean however, that type_with_alignment<>
+// may return a type which cannot be passed through a function call
+// by value (and neither can any type containing such a type like
+// Boost.Optional). However, this only happens when we have no choice
+// in the matter because no other "ordinary" type is available.
+//
+namespace align {
+struct __declspec(align(8)) a8 {
+ char m[8];
+ typedef a8 type;
+};
+struct __declspec(align(16)) a16 {
+ char m[16];
+ typedef a16 type;
+};
+struct __declspec(align(32)) a32 {
+ char m[32];
+ typedef a32 type;
+};
+struct __declspec(align(64)) a64
+{
+ char m[64];
+ typedef a64 type;
+};
+struct __declspec(align(128)) a128 {
+ char m[128];
+ typedef a128 type;
+};
+}
+
+template<> class type_with_alignment<8>
+{
+ typedef mpl::if_c<
+ ::boost::alignment_of<detail::max_align>::value < 8,
+ align::a8,
+ detail::type_with_alignment_imp<8> >::type t1;
+public:
+ typedef t1::type type;
+};
+template<> class type_with_alignment<16>
+{
+ typedef mpl::if_c<
+ ::boost::alignment_of<detail::max_align>::value < 16,
+ align::a16,
+ detail::type_with_alignment_imp<16> >::type t1;
+public:
+ typedef t1::type type;
+};
+template<> class type_with_alignment<32>
+{
+ typedef mpl::if_c<
+ ::boost::alignment_of<detail::max_align>::value < 32,
+ align::a32,
+ detail::type_with_alignment_imp<32> >::type t1;
+public:
+ typedef t1::type type;
+};
+template<> class type_with_alignment<64> {
+ typedef mpl::if_c<
+ ::boost::alignment_of<detail::max_align>::value < 64,
+ align::a64,
+ detail::type_with_alignment_imp<64> >::type t1;
+public:
+ typedef t1::type type;
+};
+template<> class type_with_alignment<128> {
+ typedef mpl::if_c<
+ ::boost::alignment_of<detail::max_align>::value < 128,
+ align::a128,
+ detail::type_with_alignment_imp<128> >::type t1;
+public:
+ typedef t1::type type;
+};
+
+namespace detail {
+BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::boost::align::a8,true)
+BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::boost::align::a16,true)
+BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::boost::align::a32,true)
+BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::boost::align::a64,true)
+BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::boost::align::a128,true)
+}
+#endif
 
 #else
 

Modified: branches/CMake/release/boost/units/absolute.hpp
==============================================================================
--- branches/CMake/release/boost/units/absolute.hpp (original)
+++ branches/CMake/release/boost/units/absolute.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -133,6 +133,7 @@
         reduce_unit<From::unit_type>::type, \
         reduce_unit<To::unit_type>::type> \
     { \
+ static const bool is_defined = true; \
         typedef type_ type; \
         static type value() { return(value_); } \
     }; \

Modified: branches/CMake/release/boost/units/conversion.hpp
==============================================================================
--- branches/CMake/release/boost/units/conversion.hpp (original)
+++ branches/CMake/release/boost/units/conversion.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -70,6 +70,7 @@
     template<> \
     struct base_unit_converter<Source, reduce_unit<Destination::unit_type>::type> \
     { \
+ static const bool is_defined = true; \
         typedef type_ type; \
         static type value() { return(value_); } \
     }; \
@@ -95,6 +96,7 @@
         BOOST_UNITS_MAKE_HETEROGENEOUS_UNIT(Destination, typename Source::dimension_type)\
> \
     { \
+ static const bool is_defined = true; \
         typedef type_ type; \
         static type value() { return(value_); } \
     }; \
@@ -112,6 +114,7 @@
     template<> \
     struct unscaled_get_default_conversion<unscale<Source>::type> \
     { \
+ static const bool is_defined = true; \
         typedef Dest type; \
     }; \
     } \
@@ -130,6 +133,7 @@
     template<BOOST_PP_SEQ_ENUM(Params)> \
     struct unscaled_get_default_conversion<Source> \
     { \
+ static const bool is_defined = true; \
         typedef Dest type; \
     }; \
     } \

Modified: branches/CMake/release/boost/units/derived_dimension.hpp
==============================================================================
--- branches/CMake/release/boost/units/derived_dimension.hpp (original)
+++ branches/CMake/release/boost/units/derived_dimension.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,8 +11,6 @@
 #ifndef BOOST_UNITS_DERIVED_DIMENSION_HPP
 #define BOOST_UNITS_DERIVED_DIMENSION_HPP
 
-#include <boost/mpl/list.hpp>
-
 #include <boost/units/dim.hpp>
 #include <boost/units/dimension.hpp>
 #include <boost/units/static_rational.hpp>
@@ -38,14 +36,14 @@
     typedef detail::unspecified type;
 #else
     typedef typename
- make_dimension_list< mpl::list< dim< DT1,static_rational<E1> >,
- dim< DT2,static_rational<E2> >,
- dim< DT3,static_rational<E3> >,
- dim< DT4,static_rational<E4> >,
- dim< DT5,static_rational<E5> >,
- dim< DT6,static_rational<E6> >,
- dim< DT7,static_rational<E7> >,
- dim< DT8,static_rational<E8> > > >::type type;
+ make_dimension_list< list< dim< DT1,static_rational<E1> >,
+ list< dim< DT2,static_rational<E2> >,
+ list< dim< DT3,static_rational<E3> >,
+ list< dim< DT4,static_rational<E4> >,
+ list< dim< DT5,static_rational<E5> >,
+ list< dim< DT6,static_rational<E6> >,
+ list< dim< DT7,static_rational<E7> >,
+ list< dim< DT8,static_rational<E8> >, dimensionless_type > > > > > > > > >::type type;
 #endif
 };
 
@@ -62,7 +60,7 @@
     dimensionless_type,0>
 {
     typedef typename
- make_dimension_list< mpl::list< dim< DT1,static_rational<E1> > > >::type type;
+ make_dimension_list< list< dim< DT1,static_rational<E1> >, dimensionless_type > >::type type;
 };
 
 /// INTERNAL ONLY
@@ -79,8 +77,8 @@
     dimensionless_type,0>
 {
     typedef typename
- make_dimension_list< mpl::list< dim< DT1,static_rational<E1> >,
- dim< DT2,static_rational<E2> > > >::type type;
+ make_dimension_list< list< dim< DT1,static_rational<E1> >,
+ list< dim< DT2,static_rational<E2> >, dimensionless_type > > >::type type;
 };
 
 /// INTERNAL ONLY
@@ -98,9 +96,9 @@
     dimensionless_type,0>
 {
     typedef typename
- make_dimension_list< mpl::list< dim< DT1,static_rational<E1> >,
- dim< DT2,static_rational<E2> >,
- dim< DT3,static_rational<E3> > > >::type type;
+ make_dimension_list< list< dim< DT1,static_rational<E1> >,
+ list< dim< DT2,static_rational<E2> >,
+ list< dim< DT3,static_rational<E3> >, dimensionless_type > > > >::type type;
 };
 
 /// INTERNAL ONLY
@@ -119,10 +117,10 @@
     dimensionless_type,0>
 {
     typedef typename
- make_dimension_list< mpl::list< dim< DT1,static_rational<E1> >,
- dim< DT2,static_rational<E2> >,
- dim< DT3,static_rational<E3> >,
- dim< DT4,static_rational<E4> > > >::type type;
+ make_dimension_list< list< dim< DT1,static_rational<E1> >,
+ list< dim< DT2,static_rational<E2> >,
+ list< dim< DT3,static_rational<E3> >,
+ list< dim< DT4,static_rational<E4> >, dimensionless_type > > > > >::type type;
 };
 
 /// INTERNAL ONLY
@@ -142,11 +140,11 @@
     dimensionless_type,0>
 {
     typedef typename
- make_dimension_list< mpl::list< dim< DT1,static_rational<E1> >,
- dim< DT2,static_rational<E2> >,
- dim< DT3,static_rational<E3> >,
- dim< DT4,static_rational<E4> >,
- dim< DT5,static_rational<E5> > > >::type type;
+ make_dimension_list< list< dim< DT1,static_rational<E1> >,
+ list< dim< DT2,static_rational<E2> >,
+ list< dim< DT3,static_rational<E3> >,
+ list< dim< DT4,static_rational<E4> >,
+ list< dim< DT5,static_rational<E5> >, dimensionless_type > > > > > >::type type;
 };
 
 /// INTERNAL ONLY
@@ -167,12 +165,12 @@
     dimensionless_type,0>
 {
     typedef typename
- make_dimension_list< mpl::list< dim< DT1,static_rational<E1> >,
- dim< DT2,static_rational<E2> >,
- dim< DT3,static_rational<E3> >,
- dim< DT4,static_rational<E4> >,
- dim< DT5,static_rational<E5> >,
- dim< DT6,static_rational<E6> > > >::type type;
+ make_dimension_list< list< dim< DT1,static_rational<E1> >,
+ list< dim< DT2,static_rational<E2> >,
+ list< dim< DT3,static_rational<E3> >,
+ list< dim< DT4,static_rational<E4> >,
+ list< dim< DT5,static_rational<E5> >,
+ list< dim< DT6,static_rational<E6> >, dimensionless_type > > > > > > >::type type;
 };
 
 /// INTERNAL ONLY
@@ -194,13 +192,13 @@
     dimensionless_type,0>
 {
     typedef typename
- make_dimension_list< mpl::list< dim< DT1,static_rational<E1> >,
- dim< DT2,static_rational<E2> >,
- dim< DT3,static_rational<E3> >,
- dim< DT4,static_rational<E4> >,
- dim< DT5,static_rational<E5> >,
- dim< DT6,static_rational<E6> >,
- dim< DT7,static_rational<E7> > > >::type type;
+ make_dimension_list< list< dim< DT1,static_rational<E1> >,
+ list< dim< DT2,static_rational<E2> >,
+ list< dim< DT3,static_rational<E3> >,
+ list< dim< DT4,static_rational<E4> >,
+ list< dim< DT5,static_rational<E5> >,
+ list< dim< DT6,static_rational<E6> >,
+ list< dim< DT7,static_rational<E7> >, dimensionless_type > > > > > > > >::type type;
 };
 
 } // namespace units

Modified: branches/CMake/release/boost/units/detail/absolute_impl.hpp
==============================================================================
--- branches/CMake/release/boost/units/detail/absolute_impl.hpp (original)
+++ branches/CMake/release/boost/units/detail/absolute_impl.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,8 +13,6 @@
 
 #include <iosfwd>
 
-#include <boost/type_traits/is_base_and_derived.hpp>
-
 #include <boost/units/config.hpp>
 #include <boost/units/conversion.hpp>
 #include <boost/units/heterogeneous_system.hpp>
@@ -33,7 +31,9 @@
 
 namespace detail {
 
-struct undefined_affine_conversion_base { };
+struct undefined_affine_conversion_base {
+ static const bool is_defined = false;
+};
 
 } // namespace detail
 
@@ -89,14 +89,8 @@
         return(
             to_quantity_type::from_value(
                 detail::affine_conversion_impl<
- !boost::is_base_and_derived<
- detail::undefined_affine_conversion_base,
- affine_conversion_helper<typename reduce_unit<Unit1>::type, typename reduce_unit<Unit2>::type>
- >::value,
- !boost::is_base_and_derived<
- detail::undefined_affine_conversion_base,
- affine_conversion_helper<typename reduce_unit<Unit2>::type, typename reduce_unit<Unit1>::type>
- >::value
+ affine_conversion_helper<typename reduce_unit<Unit1>::type, typename reduce_unit<Unit2>::type>::is_defined,
+ affine_conversion_helper<typename reduce_unit<Unit2>::type, typename reduce_unit<Unit1>::type>::is_defined
>::template apply<Unit1, Unit2, T1, T2>::value(source.value())
             )
         );

Modified: branches/CMake/release/boost/units/detail/conversion_impl.hpp
==============================================================================
--- branches/CMake/release/boost/units/detail/conversion_impl.hpp (original)
+++ branches/CMake/release/boost/units/detail/conversion_impl.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,14 +12,10 @@
 #define BOOST_UNITS_DETAIL_CONVERSION_IMPL_HPP
 
 #include <boost/mpl/bool.hpp>
-#include <boost/mpl/size.hpp>
-#include <boost/mpl/begin.hpp>
-#include <boost/mpl/next.hpp>
-#include <boost/mpl/deref.hpp>
+#include <boost/mpl/and.hpp>
 #include <boost/mpl/divides.hpp>
 #include <boost/preprocessor/seq/enum.hpp>
 #include <boost/type_traits/is_same.hpp>
-#include <boost/type_traits/is_base_and_derived.hpp>
 
 #include <boost/units/heterogeneous_system.hpp>
 #include <boost/units/homogeneous_system.hpp>
@@ -49,10 +45,14 @@
 }
 
 /// INTERNAL ONLY
-struct undefined_base_unit_converter_base { };
+struct undefined_base_unit_converter_base {
+ static const bool is_defined = false;
+};
 
 /// INTERNAL ONLY
-struct no_default_conversion { };
+struct no_default_conversion {
+ static const bool is_defined = false;
+};
 
 /// INTERNAL ONLY
 template<class BaseUnit>
@@ -89,7 +89,7 @@
 struct get_default_conversion
 {
     typedef typename unscaled_get_default_conversion_impl<
- !boost::is_base_and_derived<no_default_conversion, unscaled_get_default_conversion<typename unscale<BaseUnit>::type> >::value
+ unscaled_get_default_conversion<typename unscale<BaseUnit>::type>::is_defined
>::template apply<BaseUnit>::type type;
 };
 
@@ -103,12 +103,14 @@
 
 /// INTERNAL ONLY
 template<class Source, class Dest>
-struct base_unit_converter_base : undefined_base_unit_converter_base { };
+struct base_unit_converter_base : undefined_base_unit_converter_base {
+};
 
 /// INTERNAL ONLY
 template<class Source>
 struct base_unit_converter_base<Source, BOOST_UNITS_MAKE_HETEROGENEOUS_UNIT(Source, typename Source::dimension_type)>
 {
+ static const bool is_defined = true;
     typedef one type;
     static type value() {
         return(one());
@@ -121,45 +123,22 @@
 
 namespace detail {
 
-template<bool is_defined>
-struct do_call_base_unit_converter_impl;
-
-template<>
-struct do_call_base_unit_converter_impl<true>
-{
- template<class Source, class Dest>
- struct apply : base_unit_converter<Source, Dest> { };
-};
-
-template<>
-struct do_call_base_unit_converter_impl<false>
-{
- template<class Source, class Dest>
- struct apply {
- typedef select_base_unit_converter<typename unscale<Source>::type, typename unscale<Dest>::type> selector;
- typedef typename selector::source_type source_type;
- typedef typename selector::destination_type destination_type;
- typedef base_unit_converter<source_type, destination_type> converter;
- typedef typename mpl::divides<typename get_scale_list<Source>::type, typename get_scale_list<source_type>::type>::type source_factor;
- typedef typename mpl::divides<typename get_scale_list<Dest>::type, typename get_scale_list<destination_type>::type>::type destination_factor;
- typedef typename mpl::divides<source_factor, destination_factor>::type factor;
- typedef eval_scale_list<factor> eval_factor;
- typedef typename multiply_typeof_helper<typename converter::type, typename eval_factor::type>::type type;
- static type value()
- {
- return(converter::value() * eval_factor::value());
- }
- };
-};
-
 template<class Source, class Dest>
-struct do_call_base_unit_converter :
- do_call_base_unit_converter_impl<
- !boost::is_base_and_derived<
- undefined_base_unit_converter_base,
- base_unit_converter<Source, Dest>
- >::value
- >::template apply<Source, Dest> {};
+struct do_call_base_unit_converter {
+ typedef select_base_unit_converter<typename unscale<Source>::type, typename unscale<Dest>::type> selector;
+ typedef typename selector::source_type source_type;
+ typedef typename selector::destination_type destination_type;
+ typedef base_unit_converter<source_type, destination_type> converter;
+ typedef typename mpl::divides<typename get_scale_list<Source>::type, typename get_scale_list<source_type>::type>::type source_factor;
+ typedef typename mpl::divides<typename get_scale_list<Dest>::type, typename get_scale_list<destination_type>::type>::type destination_factor;
+ typedef typename mpl::divides<source_factor, destination_factor>::type factor;
+ typedef eval_scale_list<factor> eval_factor;
+ typedef typename multiply_typeof_helper<typename converter::type, typename eval_factor::type>::type type;
+ static type value()
+ {
+ return(converter::value() * eval_factor::value());
+ }
+};
 
 template<bool forward_is_defined, bool reverse_is_defined>
 struct call_base_unit_converter_base_unit_impl;
@@ -168,7 +147,8 @@
 struct call_base_unit_converter_base_unit_impl<true, true>
 {
     template<class Source, class Dest>
- struct apply : do_call_base_unit_converter<Source, typename Dest::unit_type>
+ struct apply
+ : do_call_base_unit_converter<Source, typename Dest::unit_type>
     {
     };
 };
@@ -177,7 +157,8 @@
 struct call_base_unit_converter_base_unit_impl<true, false>
 {
     template<class Source, class Dest>
- struct apply : do_call_base_unit_converter<Source, typename Dest::unit_type>
+ struct apply
+ : do_call_base_unit_converter<Source, typename Dest::unit_type>
     {
     };
 };
@@ -229,11 +210,11 @@
     template<class Begin>
     struct apply
     {
- typedef typename mpl::deref<Begin>::type source_pair;
+ typedef typename Begin::item source_pair;
         typedef typename source_pair::value_type exponent;
         typedef typename source_pair::tag_type source;
         typedef typename get_default_conversion<source>::type new_source;
- typedef typename get_default_conversion_impl<N-1>::template apply<typename mpl::next<Begin>::type> next_iteration;
+ typedef typename get_default_conversion_impl<N-1>::template apply<typename Begin::next> next_iteration;
         typedef typename multiply_typeof_helper<typename power_typeof_helper<new_source, exponent>::type, typename next_iteration::unit_type>::type unit_type;
         typedef call_base_unit_converter<source, new_source> conversion;
         typedef typename multiply_typeof_helper<typename conversion::type, typename next_iteration::type>::type type;
@@ -264,7 +245,8 @@
 struct call_base_unit_converter_impl<true>
 {
     template<class Source, class Dest>
- struct apply : do_call_base_unit_converter<Source, Dest>
+ struct apply
+ : do_call_base_unit_converter<Source, Dest>
     {
     };
 };
@@ -276,7 +258,7 @@
     struct apply {
         typedef typename reduce_unit<typename get_default_conversion<Source>::type>::type new_source;
         typedef typename Dest::system_type::type system_list;
- typedef typename get_default_conversion_impl<mpl::size<system_list>::value>::template apply<typename mpl::begin<system_list>::type> impl;
+ typedef typename get_default_conversion_impl<system_list::size::value>::template apply<system_list> impl;
         typedef typename impl::unit_type new_dest;
         typedef call_base_unit_converter<Source, new_source> start;
         typedef conversion_factor_helper<new_source, new_dest> conversion;
@@ -293,36 +275,22 @@
     };
 };
 
-template<class Source, class Dest>
-struct base_unit_converter_scaled_is_undefined :
- boost::is_base_and_derived<
- undefined_base_unit_converter_base,
- base_unit_converter<
- typename select_base_unit_converter<typename unscale<Source>::type, typename unscale<Dest>::type>::source_type,
- typename select_base_unit_converter<typename unscale<Source>::type, typename unscale<Dest>::type>::destination_type
- >
- > {};
-
-template<class Source, class Dest>
-struct base_unit_converter_is_undefined :
- mpl::and_<
- boost::is_base_and_derived<
- undefined_base_unit_converter_base,
- base_unit_converter<Source, Dest>
- >,
- base_unit_converter_scaled_is_undefined<Source, Dest>
- > {};
+#define BOOST_UNITS_DETAIL_BASE_UNIT_CONVERTER_IS_DEFINED(Source, Dest)\
+ base_unit_converter<\
+ typename select_base_unit_converter<typename unscale<Source>::type, typename unscale<Dest>::type>::source_type,\
+ typename select_base_unit_converter<typename unscale<Source>::type, typename unscale<Dest>::type>::destination_type\
+ >::is_defined
 
 template<class Source, class Dest>
-struct call_base_unit_converter : call_base_unit_converter_impl<!base_unit_converter_is_undefined<Source, Dest>::value>::template apply<Source, Dest>
+struct call_base_unit_converter : call_base_unit_converter_impl<BOOST_UNITS_DETAIL_BASE_UNIT_CONVERTER_IS_DEFINED(Source, Dest)>::template apply<Source, Dest>
 {
 };
 
 template<class Source, class Dest>
 struct call_base_unit_converter<Source, BOOST_UNITS_MAKE_HETEROGENEOUS_UNIT(Dest, typename Source::dimension_type)> :
     call_base_unit_converter_base_unit_impl<
- !base_unit_converter_is_undefined<Source, typename Dest::unit_type>::value,
- !base_unit_converter_is_undefined<Dest, typename Source::unit_type>::value
+ BOOST_UNITS_DETAIL_BASE_UNIT_CONVERTER_IS_DEFINED(Source, typename Dest::unit_type),
+ BOOST_UNITS_DETAIL_BASE_UNIT_CONVERTER_IS_DEFINED(Dest, typename Source::unit_type)
>::template apply<Source, Dest>
 {
 };
@@ -334,10 +302,10 @@
     struct apply
     {
         typedef typename conversion_impl<N-1>::template apply<
- typename mpl::next<Begin>::type,
+ typename Begin::next,
             DestinationSystem
> next_iteration;
- typedef typename mpl::deref<Begin>::type unit_pair;
+ typedef typename Begin::item unit_pair;
         typedef typename unit_pair::tag_type unit;
         typedef typename unit::dimension_type dimensions;
         typedef typename reduce_unit<units::unit<dimensions, DestinationSystem> >::type reduced_unit;
@@ -374,8 +342,8 @@
     static destination_type convert(const quantity<unit<D, homogeneous_system<L1> >, T1>& source)
     {
         return(destination_type::from_value(source.value() *
- detail::conversion_impl<mpl::size<unit_list>::value>::template apply<
- typename mpl::begin<unit_list>::type,
+ detail::conversion_impl<unit_list::size::value>::template apply<
+ unit_list,
                 homogeneous_system<L2>
>::value()
             ));
@@ -392,8 +360,8 @@
     static destination_type convert(const quantity<unit<D, heterogeneous_system<L1> >, T1>& source)
     {
         return(destination_type::from_value(source.value() *
- detail::conversion_impl<mpl::size<typename L1::type>::value>::template apply<
- typename mpl::begin<typename L1::type>::type,
+ detail::conversion_impl<L1::type::size::value>::template apply<
+ typename L1::type,
                 homogeneous_system<L2>
>::value() *
             eval_scale_list<typename L1::scale>::value()
@@ -414,8 +382,8 @@
     static destination_type convert(const quantity<unit<D, homogeneous_system<L1> >, T1>& source)
     {
         return(destination_type::from_value(source.value() /
- (detail::conversion_impl<mpl::size<typename L2::type>::value>::template apply<
- typename mpl::begin<typename L2::type>::type,
+ (detail::conversion_impl<L2::type::size::value>::template apply<
+ typename L2::type,
                 homogeneous_system<L1>
>::value() *
             eval_scale_list<typename L2::scale>::value()
@@ -435,13 +403,13 @@
     /// INTERNAL ONLY
     typedef quantity<unit<D, heterogeneous_system<S2> >, T2> destination_type;
     /// INTERNAL ONLY
- typedef typename detail::extract_base_units<mpl::size<typename S1::type>::value>::template apply<
- typename mpl::begin<typename S1::type>::type,
- mpl::list0<>
+ typedef typename detail::extract_base_units<S1::type::size::value>::template apply<
+ typename S1::type,
+ dimensionless_type
>::type from_base_units;
     /// INTERNAL ONLY
- typedef typename detail::extract_base_units<mpl::size<typename S2::type>::value>::template apply<
- typename mpl::begin<typename S2::type>::type,
+ typedef typename detail::extract_base_units<S2::type::size::value>::template apply<
+ typename S2::type,
         from_base_units
>::type all_base_units;
     /// INTERNAL ONLY
@@ -451,12 +419,12 @@
     static destination_type convert(const source_type& source)
     {
         return(destination_type::from_value(source.value() *
- (detail::conversion_impl<mpl::size<typename S1::type>::value>::template apply<
- typename mpl::begin<typename S1::type>::type,
+ (detail::conversion_impl<S1::type::size::value>::template apply<
+ typename S1::type,
                 system
>::value() * eval_scale_list<result_scale>::value() /
- detail::conversion_impl<mpl::size<typename S2::type>::value>::template apply<
- typename mpl::begin<typename S2::type>::type,
+ detail::conversion_impl<S2::type::size::value>::template apply<
+ typename S2::type,
                 system
>::value()
             )
@@ -474,8 +442,8 @@
 {
     typedef typename reduce_unit<unit<D, homogeneous_system<L1> > >::type source_unit;
     typedef typename source_unit::system_type::type unit_list;
- typedef typename detail::conversion_impl<mpl::size<unit_list>::value>::template apply<
- typename mpl::begin<unit_list>::type,
+ typedef typename detail::conversion_impl<unit_list::size::value>::template apply<
+ unit_list,
         homogeneous_system<L2>
> impl;
     typedef typename impl::type type;
@@ -488,8 +456,8 @@
 template<class D, class L1, class L2>
 struct conversion_factor_helper<unit<D, heterogeneous_system<L1> >, unit<D, homogeneous_system<L2> > >
 {
- typedef typename detail::conversion_impl<mpl::size<typename L1::type>::value>::template apply<
- typename mpl::begin<typename L1::type>::type,
+ typedef typename detail::conversion_impl<L1::type::size::value>::template apply<
+ typename L1::type,
         homogeneous_system<L2>
> impl;
     typedef eval_scale_list<typename L1::scale> scale;
@@ -506,8 +474,8 @@
 template<class D, class L1, class L2>
 struct conversion_factor_helper<unit<D, homogeneous_system<L1> >, unit<D, heterogeneous_system<L2> > >
 {
- typedef typename detail::conversion_impl<mpl::size<typename L2::type>::value>::template apply<
- typename mpl::begin<typename L2::type>::type,
+ typedef typename detail::conversion_impl<L2::type::size::value>::template apply<
+ typename L2::type,
         homogeneous_system<L1>
> impl;
     typedef eval_scale_list<typename L2::scale> scale;
@@ -524,23 +492,23 @@
 struct conversion_factor_helper<unit<D, heterogeneous_system<S1> >, unit<D, heterogeneous_system<S2> > >
 {
     /// INTERNAL ONLY
- typedef typename detail::extract_base_units<mpl::size<typename S1::type>::value>::template apply<
- typename mpl::begin<typename S1::type>::type,
- mpl::list0<>
+ typedef typename detail::extract_base_units<S1::type::size::value>::template apply<
+ typename S1::type,
+ dimensionless_type
>::type from_base_units;
     /// INTERNAL ONLY
- typedef typename detail::extract_base_units<mpl::size<typename S2::type>::value>::template apply<
- typename mpl::begin<typename S2::type>::type,
+ typedef typename detail::extract_base_units<S2::type::size::value>::template apply<
+ typename S2::type,
         from_base_units
>::type all_base_units;
     /// INTERNAL ONLY
     typedef typename detail::make_homogeneous_system<all_base_units>::type system;
- typedef typename detail::conversion_impl<mpl::size<typename S1::type>::value>::template apply<
- typename mpl::begin<typename S1::type>::type,
+ typedef typename detail::conversion_impl<S1::type::size::value>::template apply<
+ typename S1::type,
         system
> conversion1;
- typedef typename detail::conversion_impl<mpl::size<typename S2::type>::value>::template apply<
- typename mpl::begin<typename S2::type>::type,
+ typedef typename detail::conversion_impl<S2::type::size::value>::template apply<
+ typename S2::type,
         system
> conversion2;
     typedef eval_scale_list<typename mpl::divides<typename S1::scale, typename S2::scale>::type> scale;

Modified: branches/CMake/release/boost/units/detail/dimension_impl.hpp
==============================================================================
--- branches/CMake/release/boost/units/detail/dimension_impl.hpp (original)
+++ branches/CMake/release/boost/units/detail/dimension_impl.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,7 +16,6 @@
 #include <boost/mpl/if.hpp>
 #include <boost/mpl/list.hpp>
 #include <boost/mpl/next.hpp>
-#include <boost/mpl/push_front.hpp>
 #include <boost/mpl/size.hpp>
 #include <boost/mpl/less.hpp>
 
@@ -37,118 +36,102 @@
 
 namespace detail {
 
-template<bool second_is_less>
-struct sort_dims_conditional_swap;
+template<int N>
+struct insertion_sort_dims_insert;
+
+template<bool is_greater>
+struct insertion_sort_dims_comparison_impl;
 
+// have to recursively add the element to the next sequence.
 template<>
-struct sort_dims_conditional_swap<true>
-{
- template<class T0, class T1>
- struct apply
- {
- typedef T1 first;
- typedef T0 second;
+struct insertion_sort_dims_comparison_impl<true> {
+ template<class Begin, int N, class T>
+ struct apply {
+ typedef list<
+ typename Begin::item,
+ typename insertion_sort_dims_insert<N - 1>::template apply<
+ typename Begin::next,
+ T
+ >::type
+ > type;
     };
 };
 
+// either prepend the current element or join it to
+// the first remaining element of the sequence.
 template<>
-struct sort_dims_conditional_swap<false>
-{
- template<class T0, class T1>
- struct apply
- {
- typedef T0 first;
- typedef T1 second;
+struct insertion_sort_dims_comparison_impl<false> {
+ template<class Begin, int N, class T>
+ struct apply {
+ typedef typename push_front_or_add<Begin, T>::type type;
     };
 };
 
 template<int N>
-struct sort_dims_pass_impl
-{
- template<class Begin, class Current>
- struct apply
- {
- typedef typename mpl::deref<Begin>::type val;
- typedef typename sort_dims_conditional_swap<mpl::less<val, Current>::value>::template apply<Current, val> pair;
- typedef typename sort_dims_pass_impl<N-1>::template apply<typename mpl::next<Begin>::type, typename pair::second> next;
- typedef typename push_front_or_add<typename next::type, typename pair::first>::type type;
- enum { value = next::value || mpl::less<val, Current>::value };
+struct insertion_sort_dims_insert {
+ template<class Begin, class T>
+ struct apply {
+ typedef typename insertion_sort_dims_comparison_impl<mpl::less<typename Begin::item, T>::value>::template apply<
+ Begin,
+ N,
+ T
+ >::type type;
     };
 };
 
 template<>
-struct sort_dims_pass_impl<0>
-{
- template<class Begin, class Current>
- struct apply
- {
- typedef typename mpl::push_front<dimensionless_type, Current>::type type;
- enum { value = false };
+struct insertion_sort_dims_insert<0> {
+ template<class Begin, class T>
+ struct apply {
+ typedef list<T, dimensionless_type> type;
     };
 };
 
-template<bool>
-struct sort_dims_impl;
-
-template<>
-struct sort_dims_impl<true>
-{
- template<class T>
- struct apply
- {
- typedef typename mpl::begin<T>::type begin;
- typedef typename sort_dims_pass_impl<mpl::size<T>::value - 1>::template apply<
- typename mpl::next<begin>::type,
- typename mpl::deref<begin>::type
- > single_pass;
- typedef typename sort_dims_impl<(single_pass::value)>::template apply<typename single_pass::type>::type type;
+template<int N>
+struct insertion_sort_dims_mpl_sequence {
+ template<class Begin>
+ struct apply {
+ typedef typename insertion_sort_dims_mpl_sequence<N - 1>::template apply<typename mpl::next<Begin>::type>::type next;
+ typedef typename insertion_sort_dims_insert<(next::size::value)>::template apply<next, typename mpl::deref<Begin>::type>::type type;
     };
 };
 
 template<>
-struct sort_dims_impl<false>
-{
- template<class T>
- struct apply
- {
- typedef T type;
+struct insertion_sort_dims_mpl_sequence<0> {
+ template<class Begin>
+ struct apply {
+ typedef dimensionless_type type;
     };
 };
 
 template<int N>
-struct sort_dims_one_or_zero
-{
- template<class T>
- struct apply
- {
- typedef typename sort_dims_impl<true>::template apply<T>::type type;
+struct insertion_sort_dims_impl {
+ template<class Begin>
+ struct apply {
+ typedef typename insertion_sort_dims_impl<N - 1>::template apply<typename Begin::next>::type next;
+ typedef typename insertion_sort_dims_insert<(next::size::value)>::template apply<next, typename Begin::item>::type type;
     };
 };
 
 template<>
-struct sort_dims_one_or_zero<0>
-{
- template<class T>
- struct apply
- {
+struct insertion_sort_dims_impl<0> {
+ template<class Begin>
+ struct apply {
         typedef dimensionless_type type;
     };
 };
 
-template<>
-struct sort_dims_one_or_zero<1>
+template<class T>
+struct sort_dims
 {
- template<class T>
- struct apply
- {
- typedef typename mpl::push_front<dimensionless_type, typename mpl::front<T>::type>::type type;
- };
+ typedef typename insertion_sort_dims_mpl_sequence<mpl::size<T>::value>::template apply<typename mpl::begin<T>::type>::type type;
 };
 
-template<class T>
-struct sort_dims
+
+template<class T, class Next>
+struct sort_dims<list<T, Next> >
 {
- typedef typename sort_dims_one_or_zero<mpl::size<T>::value>::template apply<T>::type type;
+ typedef typename insertion_sort_dims_impl<list<T, Next>::size::value>::template apply<list<T, Next> >::type type;
 };
 
 /// sorted sequences can be merged in linear time
@@ -164,13 +147,13 @@
     template<typename Begin1, typename Begin2, int N1, int N2>
     struct apply
     {
- typedef typename mpl::push_front<
+ typedef list<
+ typename Begin1::item,
             typename merge_dimensions_impl<N1 - 1, N2>::template apply<
- typename boost::mpl::next<Begin1>::type,
+ typename Begin1::next,
                 Begin2
- >::type,
- typename boost::mpl::deref<Begin1>::type
- >::type type;
+ >::type
+ > type;
     };
 };
 
@@ -179,13 +162,13 @@
     template<typename Begin1, typename Begin2, int N1, int N2>
     struct apply
     {
- typedef typename mpl::push_front<
+ typedef list<
+ typename Begin2::item,
             typename merge_dimensions_impl<N2 - 1, N1>::template apply<
- typename boost::mpl::next<Begin2>::type,
+ typename Begin2::next,
                 Begin1
- >::type,
- typename boost::mpl::deref<Begin2>::type
- >::type type;
+ >::type
+ > type;
     };
 };
 
@@ -194,11 +177,11 @@
     template<typename Begin1, typename Begin2, int N1, int N2>
     struct apply
     {
- typedef typename mpl::plus<typename boost::mpl::deref<Begin1>::type, typename boost::mpl::deref<Begin2>::type>::type combined;
+ typedef typename mpl::plus<typename Begin1::item, typename Begin2::item>::type combined;
         typedef typename push_front_if<!is_empty_dim<combined>::value>::template apply<
             typename merge_dimensions_impl<N1 - 1, N2 - 1>::template apply<
- typename boost::mpl::next<Begin1>::type,
- typename boost::mpl::next<Begin2>::type
+ typename Begin1::next,
+ typename Begin2::next
>::type,
             combined
>::type type;
@@ -210,8 +193,8 @@
     template<typename Begin1, typename Begin2>
     struct apply
     {
- typedef typename boost::mpl::deref<Begin1>::type dim1;
- typedef typename boost::mpl::deref<Begin2>::type dim2;
+ typedef typename Begin1::item dim1;
+ typedef typename Begin2::item dim2;
 
         typedef typename merge_dimensions_func<(mpl::less<dim1,dim2>::value == true),
                 (mpl::less<dim2,dim1>::value == true)>::template apply<
@@ -226,11 +209,11 @@
 template<typename Sequence1, typename Sequence2>
 struct merge_dimensions
 {
- typedef typename detail::merge_dimensions_impl<boost::mpl::size<Sequence1>::value,
- boost::mpl::size<Sequence2>::value>::template
+ typedef typename detail::merge_dimensions_impl<Sequence1::size::value,
+ Sequence2::size::value>::template
         apply<
- typename boost::mpl::begin<Sequence1>::type,
- typename boost::mpl::begin<Sequence2>::type
+ Sequence1,
+ Sequence2
>::type type;
 };
 
@@ -240,12 +223,12 @@
     template<typename Begin>
     struct apply
     {
- typedef typename mpl::push_front<
+ typedef list<
+ typename Begin::item,
             typename iterator_to_list<N - 1>::template apply<
- typename boost::mpl::next<Begin>::type
- >::type,
- typename boost::mpl::deref<Begin>::type
- >::type type;
+ typename Begin::next
+ >::type
+ > type;
     };
 };
 
@@ -293,12 +276,12 @@
 {
     template<typename Begin>
     struct apply {
- typedef typename boost::mpl::push_front<
+ typedef list<
+ typename mpl::negate<typename Begin::item>::type,
             typename static_inverse_impl<N - 1>::template apply<
- typename boost::mpl::next<Begin>::type
- >::type,
- typename mpl::negate<typename boost::mpl::deref<Begin>::type>::type
- >::type type;
+ typename Begin::next
+ >::type
+ > type;
     };
 };
 
@@ -318,10 +301,10 @@
     template<typename Begin, typename Ex>
     struct apply
     {
- typedef typename mpl::push_front<
- typename detail::static_power_impl<N - 1>::template apply<typename mpl::next<Begin>::type, Ex>::type,
- typename mpl::times<typename mpl::deref<Begin>::type, Ex>::type
- >::type type;
+ typedef list<
+ typename mpl::times<typename Begin::item, Ex>::type,
+ typename detail::static_power_impl<N - 1>::template apply<typename Begin::next, Ex>::type
+ > type;
     };
 };
 
@@ -339,10 +322,10 @@
 struct static_root_impl {
     template<class Begin, class Ex>
     struct apply {
- typedef typename mpl::push_front<
- typename detail::static_root_impl<N - 1>::template apply<typename mpl::next<Begin>::type, Ex>::type,
- typename mpl::divides<typename mpl::deref<Begin>::type, Ex>::type
- >::type type;
+ typedef list<
+ typename mpl::divides<typename Begin::item, Ex>::type,
+ typename detail::static_root_impl<N - 1>::template apply<typename Begin::next, Ex>::type
+ > type;
     };
 };
 

Modified: branches/CMake/release/boost/units/detail/heterogeneous_conversion.hpp
==============================================================================
--- branches/CMake/release/boost/units/detail/heterogeneous_conversion.hpp (original)
+++ branches/CMake/release/boost/units/detail/heterogeneous_conversion.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,14 +11,8 @@
 #ifndef BOOST_UNITS_DETAIL_HETEROGENEOUS_CONVERSION_HPP
 #define BOOST_UNITS_DETAIL_HETEROGENEOUS_CONVERSION_HPP
 
-#include <boost/mpl/list/list0.hpp>
-#include <boost/mpl/next.hpp>
-#include <boost/mpl/deref.hpp>
-#include <boost/mpl/size.hpp>
-#include <boost/mpl/begin.hpp>
-#include <boost/mpl/push_front.hpp>
-
-#include <boost/mpl/print.hpp>
+#include <boost/mpl/minus.hpp>
+#include <boost/mpl/times.hpp>
 
 #include <boost/units/static_rational.hpp>
 #include <boost/units/homogeneous_system.hpp>
@@ -33,7 +27,7 @@
 struct solve_end {
     template<class Begin, class Y>
     struct apply {
- typedef mpl::list0<> type;
+ typedef dimensionless_type type;
     };
 };
 
@@ -43,14 +37,14 @@
 struct solve_normal {
     template<class Begin, class Y>
     struct apply {
- typedef typename mpl::next<Begin>::type next;
- typedef typename mpl::push_front<
- typename Next::template apply<next, Y>::type,
+ typedef typename Begin::next next;
+ typedef list<
             typename mpl::minus<
                 typename mpl::times<X1, Y>::type,
- typename mpl::times<X2, typename mpl::deref<Begin>::type>::type
- >::type
- >::type type;
+ typename mpl::times<X2, typename Begin::item>::type
+ >::type,
+ typename Next::template apply<next, Y>::type
+ > type;
     };
 };
 
@@ -58,10 +52,10 @@
 struct solve_leading_zeroes {
     template<class Begin>
     struct apply {
- typedef typename mpl::push_front<
- typename Next::template apply<typename mpl::next<Begin>::type>::type,
- typename mpl::deref<Begin>::type
- >::type type;
+ typedef list<
+ typename Begin::item,
+ typename Next::template apply<typename Begin::next>::type
+ > type;
     };
     typedef solve_leading_zeroes type;
 };
@@ -76,8 +70,8 @@
     template<class Begin>
     struct apply {
         typedef typename Next::template apply<
- typename mpl::next<Begin>::type,
- typename mpl::deref<Begin>::type
+ typename Begin::next,
+ typename Begin::item
>::type type;
     };
 };
@@ -86,10 +80,10 @@
 struct solve_internal_zero {
     template<class Begin, class Y>
     struct apply {
- typedef typename mpl::push_front<
- typename Next::template apply<typename mpl::next<Begin>::type, Y>::type,
- typename mpl::deref<Begin>::type
- >::type type;
+ typedef list<
+ typename Begin::item,
+ typename Next::template apply<typename Begin::next, Y>::type
+ > type;
     };
 };
 
@@ -114,9 +108,9 @@
     template<class Begin, class X>
     struct apply {
         typedef typename make_solve_list_internal_zero<
- typename mpl::deref<Begin>::type
+ typename Begin::item
>::template apply<
- typename make_solve_list_normal<N-1>::template apply<typename mpl::next<Begin>::type, X>::type,
+ typename make_solve_list_normal<N-1>::template apply<typename Begin::next, X>::type,
             X
>::type type;
     };
@@ -139,8 +133,8 @@
     struct apply {
         typedef solve_first_non_zero<
             typename make_solve_list_normal<N-1>::template apply<
- typename mpl::next<Begin>::type,
- typename mpl::deref<Begin>::type
+ typename Begin::next,
+ typename Begin::item
>::type
> type;
     };
@@ -152,7 +146,7 @@
     struct apply {
         typedef typename solve_leading_zeroes<
             typename make_solve_list_leading_zeroes<N-1>::template apply<
- typename mpl::next<Begin>::type
+ typename Begin::next
>::type
>::type type;
     };
@@ -162,7 +156,7 @@
 struct make_solve_list_leading_zeroes {
     template<class Begin>
     struct apply {
- typedef typename make_solve_list_first_non_zero<typename mpl::deref<Begin>::type>::template apply<Begin, N>::type type;
+ typedef typename make_solve_list_first_non_zero<typename Begin::item>::template apply<Begin, N>::type type;
     };
 };
 
@@ -178,9 +172,9 @@
 struct try_add_unit_impl {
     template<class Begin, class L>
     struct apply {
- typedef typename try_add_unit_impl<N-1>::template apply<typename mpl::next<Begin>::type, L>::type next;
- typedef typename mpl::deref<Begin>::type::template apply<typename mpl::begin<next>::type>::type type;
- BOOST_STATIC_ASSERT((mpl::size<next>::value - 1 == mpl::size<type>::value));
+ typedef typename try_add_unit_impl<N-1>::template apply<typename Begin::next, L>::type next;
+ typedef typename Begin::item::template apply<next>::type type;
+ BOOST_STATIC_ASSERT((next::size::value - 1 == type::size::value));
     };
 };
 
@@ -203,9 +197,9 @@
     template<class Begin, class Current, class Units, class Dimensions, int N>
     struct apply {
         typedef typename make_homogeneous_system_impl<N-1>::template apply<
- typename mpl::next<Begin>::type,
- typename mpl::push_front<Current, T>::type,
- typename mpl::push_front<Units, typename mpl::deref<Begin>::type>::type,
+ typename Begin::next,
+ list<T, Current>,
+ list<typename Begin::item, Units>,
             Dimensions
>::type type;
     };
@@ -215,7 +209,7 @@
 struct make_homogeneous_system_func<T, true> {
     template<class Begin, class Current, class Units, class Dimensions, int N>
     struct apply {
- typedef typename mpl::push_front<Units, typename mpl::deref<Begin>::type>::type type;
+ typedef list<typename Begin::item, Units> type;
     };
 };
 
@@ -224,7 +218,7 @@
     template<class Begin, class Current, class Units, class Dimensions, int N>
     struct apply {
         typedef typename make_homogeneous_system_impl<N-1>::template apply<
- typename mpl::next<Begin>::type,
+ typename Begin::next,
             Current,
             Units,
             Dimensions
@@ -237,7 +231,7 @@
     template<class Begin, class Current, class Units, class Dimensions, int N>
     struct apply {
         typedef typename make_homogeneous_system_impl<N-1>::template apply<
- typename mpl::next<Begin>::type,
+ typename Begin::next,
             Current,
             Units,
             Dimensions
@@ -249,15 +243,15 @@
 struct make_homogeneous_system_impl {
     template<class Begin, class Current, class Units, class Dimensions>
     struct apply {
- typedef typename expand_dimensions<mpl::size<Dimensions>::value>::template apply<
- typename mpl::begin<Dimensions>::type,
- typename mpl::begin<typename mpl::deref<Begin>::type::dimension_type>::type
+ typedef typename expand_dimensions<Dimensions::size::value>::template apply<
+ Dimensions,
+ typename Begin::item::dimension_type
>::type dimensions;
- typedef typename try_add_unit_impl<mpl::size<Current>::value>::template apply<typename mpl::begin<Current>::type, dimensions>::type new_element;
- typedef typename make_solve_list_leading_zeroes<mpl::size<new_element>::value>::template apply<typename mpl::begin<new_element>::type>::type new_func;
+ typedef typename try_add_unit_impl<Current::size::value>::template apply<Current, dimensions>::type new_element;
+ typedef typename make_solve_list_leading_zeroes<new_element::size::value>::template apply<new_element>::type new_func;
         typedef typename make_homogeneous_system_func<
             new_func,
- ((mpl::size<Current>::value)+1) == (mpl::size<Dimensions>::value)
+ ((Current::size::value)+1) == (Dimensions::size::value)
>::template apply<Begin, Current, Units, Dimensions, N>::type type;
     };
 };
@@ -274,13 +268,13 @@
 struct make_homogeneous_system {
     typedef typename find_base_dimensions<Units>::type base_dimensions;
     typedef homogeneous_system<
- typename bubble_sort<
+ typename insertion_sort<
             typename make_homogeneous_system_impl<
- mpl::size<Units>::value
+ Units::size::value
>::template apply<
- typename mpl::begin<Units>::type,
- mpl::list0<>,
- mpl::list0<>,
+ Units,
+ dimensionless_type,
+ dimensionless_type,
                 base_dimensions
>::type
>::type
@@ -291,10 +285,10 @@
 struct extract_base_units {
     template<class Begin, class T>
     struct apply {
- typedef typename mpl::push_front<
- typename extract_base_units<N-1>::template apply<typename mpl::next<Begin>::type, T>::type,
- typename mpl::deref<Begin>::type::tag_type
- >::type type;
+ typedef list<
+ typename Begin::item::tag_type,
+ typename extract_base_units<N-1>::template apply<typename Begin::next, T>::type
+ > type;
     };
 };
 

Modified: branches/CMake/release/boost/units/detail/linear_algebra.hpp
==============================================================================
--- branches/CMake/release/boost/units/detail/linear_algebra.hpp (original)
+++ branches/CMake/release/boost/units/detail/linear_algebra.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,22 +12,8 @@
 #define BOOST_UNITS_DETAIL_LINEAR_ALGEBRA_HPP
 
 #include <boost/units/static_rational.hpp>
-#include <boost/mpl/list.hpp>
-#include <boost/mpl/push_front.hpp>
-#include <boost/mpl/pop_front.hpp>
-#include <boost/mpl/deref.hpp>
-#include <boost/mpl/begin.hpp>
-#include <boost/mpl/size.hpp>
 #include <boost/mpl/next.hpp>
 #include <boost/mpl/arithmetic.hpp>
-#include <boost/mpl/front_inserter.hpp>
-#include <boost/mpl/set.hpp>
-#include <boost/mpl/insert.hpp>
-#include <boost/mpl/greater.hpp>
-#include <boost/mpl/reverse.hpp>
-#include <boost/mpl/advance.hpp>
-#include <boost/mpl/erase.hpp>
-#include <boost/mpl/front.hpp>
 #include <boost/mpl/and.hpp>
 #include <boost/mpl/assert.hpp>
 
@@ -77,6 +63,24 @@
 
 struct inconsistent {};
 
+// generally useful utilies.
+
+template<int N>
+struct divide_equation {
+ template<class Begin, class Divisor>
+ struct apply {
+ typedef list<typename mpl::divides<typename Begin::item, Divisor>::type, typename divide_equation<N - 1>::template apply<typename Begin::next, Divisor>::type> type;
+ };
+};
+
+template<>
+struct divide_equation<0> {
+ template<class Begin, class Divisor>
+ struct apply {
+ typedef dimensionless_type type;
+ };
+};
+
 // eliminate_from_pair_of_equations takes a pair of
 // equations and eliminates the first variable.
 //
@@ -90,18 +94,18 @@
 struct eliminate_from_pair_of_equations_impl {
     template<class Begin1, class Begin2, class X1, class X2>
     struct apply {
- typedef typename mpl::push_front<
+ typedef list<
+ typename mpl::minus<
+ typename mpl::times<typename Begin1::item, X2>::type,
+ typename mpl::times<typename Begin2::item, X1>::type
+ >::type,
             typename eliminate_from_pair_of_equations_impl<N - 1>::template apply<
- typename mpl::next<Begin1>::type,
- typename mpl::next<Begin2>::type,
+ typename Begin1::next,
+ typename Begin2::next,
                 X1,
                 X2
- >::type,
- typename mpl::minus<
- typename mpl::times<typename mpl::deref<Begin1>::type, X2>::type,
- typename mpl::times<typename mpl::deref<Begin2>::type, X1>::type
>::type
- >::type type;
+ > type;
     };
 };
 
@@ -109,295 +113,436 @@
 struct eliminate_from_pair_of_equations_impl<0> {
     template<class Begin1, class Begin2, class X1, class X2>
     struct apply {
- typedef mpl::list0<> type;
+ typedef dimensionless_type type;
     };
 };
 
 template<class E1, class E2>
 struct eliminate_from_pair_of_equations {
- typedef typename mpl::begin<E1>::type begin1;
- typedef typename mpl::begin<E2>::type begin2;
- typedef typename eliminate_from_pair_of_equations_impl<mpl::size<E1>::value - 1>::template apply<
- typename mpl::next<begin1>::type,
- typename mpl::next<begin2>::type,
- typename mpl::deref<begin1>::type,
- typename mpl::deref<begin2>::type
+ typedef E1 begin1;
+ typedef E2 begin2;
+ typedef typename eliminate_from_pair_of_equations_impl<(E1::size::value - 1)>::template apply<
+ typename begin1::next,
+ typename begin2::next,
+ typename begin1::item,
+ typename begin2::item
>::type type;
 };
 
-// Eliminates the first variable from a list of equations
-// returns inconsistent if all its coefficients are 0. Otherwise
-// recursively calls solve to find the remaining variables
-//
-// list<rational> eliminate(list<equation> system) {
-// list<equation> result;
-// equation eliminate_against = null;
-// for_each(equation e : system) {
-// if(eliminate_against == null) {
-// if(e.front() == 0) {
-// result = push_front(result, pop_front(e));
-// } else {
-// eliminate_against = e;
-// }
-// } else {
-// result = push_back(result, eliminate_from_pair_of_equations(e,eliminate_against));
-// }
-// }
-// if(eliminate_against == null) {
-// return(inconsistent);
-// } else {
-// list<rational> solution = solve(result);
-// return(push_front(solution, substitute(eliminate_against,solution)));
-// }
-// }
+
+
+// Stage 1. Determine which dimensions should
+// have dummy base units. For this purpose
+// row reduce the matrix.
 
 template<int N>
-struct elimination_impl {
- template<class Begin, class Prev, class L>
+struct make_zero_vector {
+ typedef list<static_rational<0>, typename make_zero_vector<N - 1>::type> type;
+};
+template<>
+struct make_zero_vector<0> {
+ typedef dimensionless_type type;
+};
+
+template<int Column, int TotalColumns>
+struct create_row_of_identity {
+ typedef list<static_rational<0>, typename create_row_of_identity<Column - 1, TotalColumns - 1>::type> type;
+};
+template<int TotalColumns>
+struct create_row_of_identity<0, TotalColumns> {
+ typedef list<static_rational<1>, typename make_zero_vector<TotalColumns - 1>::type> type;
+};
+template<int Column>
+struct create_row_of_identity<Column, 0> {
+ // error
+};
+
+template<int RemainingRows>
+struct determine_extra_equations_impl;
+
+template<bool first_is_zero, bool is_last>
+struct determine_extra_equations_skip_zeros_impl;
+
+// not the last row and not zero.
+template<>
+struct determine_extra_equations_skip_zeros_impl<false, false> {
+ template<class RowsBegin, int RemainingRows, int CurrentColumn, int TotalColumns, class Result>
     struct apply {
- typedef typename mpl::push_front<
- typename elimination_impl<N-1>::template apply<typename mpl::next<Begin>::type, Prev, L>::type,
- typename eliminate_from_pair_of_equations<typename mpl::deref<Begin>::type,Prev>::type
- >::type type;
+ // remove the equation being eliminated against from the set of equations.
+ typedef typename determine_extra_equations_impl<RemainingRows - 1>::template apply<typename RowsBegin::next, typename RowsBegin::item>::type next_equations;
+ // since this column was present, strip it out.
+ typedef Result type;
     };
 };
 
+// the last row but not zero.
 template<>
-struct elimination_impl<0> {
- template<class Begin, class Prev, class L>
+struct determine_extra_equations_skip_zeros_impl<false, true> {
+ template<class RowsBegin, int RemainingRows, int CurrentColumn, int TotalColumns, class Result>
     struct apply {
- typedef L type;
+ // remove this equation.
+ typedef dimensionless_type next_equations;
+ // since this column was present, strip it out.
+ typedef Result type;
     };
 };
 
+
+// the first columns is zero but it is not the last column.
+// continue with the same loop.
 template<>
-struct elimination_skip_leading_zeros_impl<true, true> {
- template<class Begin, int N, class L>
+struct determine_extra_equations_skip_zeros_impl<true, false> {
+ template<class RowsBegin, int RemainingRows, int CurrentColumn, int TotalColumns, class Result>
     struct apply {
- typedef inconsistent type;
+ typedef typename RowsBegin::item current_row;
+ typedef typename determine_extra_equations_skip_zeros_impl<
+ current_row::item::Numerator == 0,
+ RemainingRows == 2 // the next one will be the last.
+ >::template apply<
+ typename RowsBegin::next,
+ RemainingRows - 1,
+ CurrentColumn,
+ TotalColumns,
+ Result
+ > next;
+ typedef list<typename RowsBegin::item::next, typename next::next_equations> next_equations;
+ typedef typename next::type type;
     };
 };
 
+// all the elements in this column are zero.
 template<>
-struct elimination_skip_leading_zeros_impl<true, false> {
- template<class Begin, int N, class L>
+struct determine_extra_equations_skip_zeros_impl<true, true> {
+ template<class RowsBegin, int RemainingRows, int CurrentColumn, int TotalColumns, class MatrixWithFirstColumnStripped, class Result>
     struct apply {
- typedef typename mpl::next<Begin>::type next;
- typedef typename elimination_skip_leading_zeros_impl<
- boost::is_same<
- typename mpl::deref<
- typename mpl::begin<typename mpl::deref<next>::type>::type
- >::type,
- static_rational<0>
- >::value,
- N == 2
- >::template apply<
- next,
- N-1,
- typename mpl::push_front<
- L,
- typename mpl::pop_front<typename mpl::deref<Begin>::type>::type
- >::type
- >::type type;
+ typedef list<typename RowsBegin::item::next, dimensionless_type> next_equations;
+ typedef list<typename create_row_of_identity<CurrentColumn, TotalColumns>::type, Result> type;
     };
 };
 
-template<class S>
-struct combine_solutions {
- template<class Iterator>
+template<int RemainingRows>
+struct determine_extra_equations_impl {
+ template<class RowsBegin, class EliminateAgainst>
     struct apply {
- typedef typename substitute<typename mpl::deref<Iterator>::type, S>::type x;
- typedef typename mpl::push_front<S, x>::type type;
+ typedef list<
+ typename eliminate_from_pair_of_equations<typename RowsBegin::item, EliminateAgainst>::type,
+ typename determine_extra_equations_impl<RemainingRows-1>::template apply<typename RowsBegin::next, EliminateAgainst>::type
+ > type;
     };
 };
 
 template<>
-struct combine_solutions<inconsistent> {
- template<class Iterator>
+struct determine_extra_equations_impl<0> {
+ template<class RowsBegin, class EliminateAgainst>
     struct apply {
- typedef inconsistent type;
+ typedef dimensionless_type type;
     };
 };
 
-template<>
-struct elimination_skip_leading_zeros_impl<false, true> {
- template<class Begin, int N, class L>
+template<int RemainingColumns, bool is_done>
+struct determine_extra_equations {
+ template<class RowsBegin, int TotalColumns, class Result>
     struct apply {
- typedef typename elimination_impl<N - 1>::template apply<
- typename mpl::next<Begin>::type,
- typename mpl::deref<Begin>::type,
- L
- >::type list_type;
- typedef typename solve<list_type>::type next;
- typedef typename combine_solutions<next>::template apply<Begin>::type type;
+ typedef typename RowsBegin::item top_row;
+ typedef typename determine_extra_equations_skip_zeros_impl<
+ top_row::item::Numerator == 0,
+ RowsBegin::item::size::value == 1
+ >::template apply<
+ RowsBegin,
+ RowsBegin::size::value,
+ TotalColumns - RemainingColumns,
+ TotalColumns,
+ Result
+ > column_info;
+ typedef typename determine_extra_equations<
+ RemainingColumns - 1,
+ column_info::next_equations::size::value == 0
+ >::template apply<
+ typename column_info::next_equations,
+ TotalColumns,
+ typename column_info::type
+ >::type type;
+ };
+};
+
+template<int RemainingColumns>
+struct determine_extra_equations<RemainingColumns, true> {
+ template<class RowsBegin, int TotalColumns, class Result>
+ struct apply {
+ typedef typename determine_extra_equations<RemainingColumns - 1, true>::template apply<
+ RowsBegin,
+ TotalColumns,
+ list<typename create_row_of_identity<TotalColumns - RemainingColumns, TotalColumns>::type, Result>
+ >::type type;
     };
 };
 
 template<>
-struct elimination_skip_leading_zeros_impl<false, false> {
- template<class Begin, int N, class L>
+struct determine_extra_equations<0, true> {
+ template<class RowsBegin, int TotalColumns, class Result>
     struct apply {
- typedef typename elimination_impl<N - 1>::template apply<
- typename mpl::next<Begin>::type,
- typename mpl::deref<Begin>::type,
- L
- >::type list_type;
- typedef typename solve<list_type>::type next;
- typedef typename combine_solutions<next>::template apply<Begin>::type type;
+ typedef Result type;
     };
 };
 
-// finds the vaue of the first variable given the
-// values of all the other variables.
-//
-// rational substitute(equation e, list<rational> solutions) {
-// rational value = e.back();
-// for_each(rational x : solutions, rational a : pop_front(pop_back(e))) {
-// value -= a * x;
-// }
-// return(e.front() / value);
-// }
+// Stage 2
+// invert the matrix using Gauss-Jordan elimination
+
+
+template<bool is_zero, bool is_last>
+struct invert_strip_leading_zeroes;
 
 template<int N>
-struct substitute_impl {
- template<class Begin1, class Begin2>
+struct invert_handle_after_pivot_row;
+
+// When processing column N, none of the first N rows
+// can be the pivot column.
+template<int N>
+struct invert_handle_inital_rows {
+ template<class RowsBegin, class IdentityBegin>
     struct apply {
- typedef typename mpl::minus<
- typename substitute_impl<N-1>::template apply<
- typename mpl::next<Begin1>::type,
- typename mpl::next<Begin2>::type
+ typedef typename invert_handle_inital_rows<N - 1>::template apply<
+ typename RowsBegin::next,
+ typename IdentityBegin::next
+ > next;
+ typedef typename RowsBegin::item current_row;
+ typedef typename IdentityBegin::item current_identity_row;
+ typedef typename next::pivot_row pivot_row;
+ typedef typename next::identity_pivot_row identity_pivot_row;
+ typedef list<
+ typename eliminate_from_pair_of_equations_impl<(current_row::size::value) - 1>::template apply<
+ typename current_row::next,
+ pivot_row,
+ typename current_row::item,
+ static_rational<1>
>::type,
- typename mpl::times<
- typename mpl::deref<Begin1>::type,
- typename mpl::deref<Begin2>::type
- >::type
- >::type type;
+ typename next::new_matrix
+ > new_matrix;
+ typedef list<
+ typename eliminate_from_pair_of_equations_impl<(current_identity_row::size::value)>::template apply<
+ current_identity_row,
+ identity_pivot_row,
+ typename current_row::item,
+ static_rational<1>
+ >::type,
+ typename next::identity_result
+ > identity_result;
     };
 };
 
+// This handles the switch to searching for a pivot column.
+// The pivot row will be propagated up in the typedefs
+// pivot_row and identity_pivot_row. It is inserted here.
 template<>
-struct substitute_impl<0> {
- template<class Begin1, class Begin2>
+struct invert_handle_inital_rows<0> {
+ template<class RowsBegin, class IdentityBegin>
     struct apply {
- typedef typename mpl::deref<Begin1>::type type;
+ typedef typename RowsBegin::item current_row;
+ typedef typename invert_strip_leading_zeroes<
+ (current_row::item::Numerator == 0),
+ (RowsBegin::size::value == 1)
+ >::template apply<
+ RowsBegin,
+ IdentityBegin
+ > next;
+ // results
+ typedef list<typename next::pivot_row, typename next::new_matrix> new_matrix;
+ typedef list<typename next::identity_pivot_row, typename next::identity_result> identity_result;
+ typedef typename next::pivot_row pivot_row;
+ typedef typename next::identity_pivot_row identity_pivot_row;
     };
 };
 
-template<class Equation, class Vars>
-struct substitute {
- typedef typename mpl::begin<Equation>::type begin;
- typedef typename mpl::divides<
- typename substitute_impl<mpl::size<Vars>::value>::template apply<
- typename mpl::next<begin>::type,
- typename mpl::begin<Vars>::type
- >::type,
- typename mpl::deref<begin>::type
- >::type type;
+// The first internal element which is not zero.
+template<>
+struct invert_strip_leading_zeroes<false, false> {
+ template<class RowsBegin, class IdentityBegin>
+ struct apply {
+ typedef typename RowsBegin::item current_row;
+ typedef typename current_row::item current_value;
+ typedef typename divide_equation<(current_row::size::value - 1)>::template apply<typename current_row::next, current_value>::type new_equation;
+ typedef typename divide_equation<(IdentityBegin::item::size::value)>::template apply<typename IdentityBegin::item, current_value>::type transformed_identity_equation;
+ typedef typename invert_handle_after_pivot_row<(RowsBegin::size::value - 1)>::template apply<
+ typename RowsBegin::next,
+ typename IdentityBegin::next,
+ new_equation,
+ transformed_identity_equation
+ > next;
+
+ // results
+ // Note that we don't add the pivot row to the
+ // results here, because it needs to propagated up
+ // to the diagonal.
+ typedef typename next::new_matrix new_matrix;
+ typedef typename next::identity_result identity_result;
+ typedef new_equation pivot_row;
+ typedef transformed_identity_equation identity_pivot_row;
+ };
 };
 
+// The one and only non-zero element--at the end
 template<>
-struct solve_impl<true> {
- template<class T>
+struct invert_strip_leading_zeroes<false, true> {
+ template<class RowsBegin, class IdentityBegin>
     struct apply {
- typedef mpl::list0<> type;
+ typedef typename RowsBegin::item current_row;
+ typedef typename current_row::item current_value;
+ typedef typename divide_equation<(current_row::size::value - 1)>::template apply<typename current_row::next, current_value>::type new_equation;
+ typedef typename divide_equation<(IdentityBegin::item::size::value)>::template apply<typename IdentityBegin::item, current_value>::type transformed_identity_equation;
+
+ // results
+ // Note that we don't add the pivot row to the
+ // results here, because it needs to propagated up
+ // to the diagonal.
+ typedef dimensionless_type identity_result;
+ typedef dimensionless_type new_matrix;
+ typedef new_equation pivot_row;
+ typedef transformed_identity_equation identity_pivot_row;
     };
 };
 
-// check_extra_equations verifies that the
-// after all the variables have been eliminated
-// the remaining equations are all 0=0.
-
-template<class T>
-struct check_extra_equations_func {
- template<class Begin, int N>
+// One of the initial zeroes
+template<>
+struct invert_strip_leading_zeroes<true, false> {
+ template<class RowsBegin, class IdentityBegin>
     struct apply {
- typedef inconsistent type;
+ typedef typename RowsBegin::item current_row;
+ typedef typename RowsBegin::next::item next_row;
+ typedef typename invert_strip_leading_zeroes<
+ next_row::item::Numerator == 0,
+ RowsBegin::size::value == 2
+ >::template apply<
+ typename RowsBegin::next,
+ typename IdentityBegin::next
+ > next;
+ typedef typename IdentityBegin::item current_identity_row;
+ // these are propagated up.
+ typedef typename next::pivot_row pivot_row;
+ typedef typename next::identity_pivot_row identity_pivot_row;
+ typedef list<
+ typename eliminate_from_pair_of_equations_impl<(current_row::size::value - 1)>::template apply<
+ typename current_row::next,
+ pivot_row,
+ typename current_row::item,
+ static_rational<1>
+ >::type,
+ typename next::new_matrix
+ > new_matrix;
+ typedef list<
+ typename eliminate_from_pair_of_equations_impl<(current_identity_row::size::value)>::template apply<
+ current_identity_row,
+ identity_pivot_row,
+ typename current_row::item,
+ static_rational<1>
+ >::type,
+ typename next::identity_result
+ > identity_result;
     };
 };
 
+// the last element, and is zero.
+// Should never happen.
 template<>
-struct check_extra_equations_func<static_rational<0> > {
- template<class Begin, int N>
- struct apply {
- typedef typename check_extra_equations_impl<N - 1>::template apply<typename mpl::next<Begin>::type>::type type;
- };
+struct invert_strip_leading_zeroes<true, true> {
 };
 
 template<int N>
-struct check_extra_equations_impl {
- template<class Begin>
+struct invert_handle_after_pivot_row {
+ template<class RowsBegin, class IdentityBegin, class MatrixPivot, class IdentityPivot>
     struct apply {
- typedef typename check_extra_equations_func<
- typename mpl::deref<typename mpl::begin<typename mpl::deref<Begin>::type>::type>::type
- >::template apply<Begin, N>::type type;
+ typedef typename invert_handle_after_pivot_row<N - 1>::template apply<
+ typename RowsBegin::next,
+ typename IdentityBegin::next,
+ MatrixPivot,
+ IdentityPivot
+ > next;
+ typedef typename RowsBegin::item current_row;
+ typedef typename IdentityBegin::item current_identity_row;
+ typedef MatrixPivot pivot_row;
+ typedef IdentityPivot identity_pivot_row;
+
+ // results
+ typedef list<
+ typename eliminate_from_pair_of_equations_impl<(current_row::size::value - 1)>::template apply<
+ typename current_row::next,
+ pivot_row,
+ typename current_row::item,
+ static_rational<1>
+ >::type,
+ typename next::new_matrix
+ > new_matrix;
+ typedef list<
+ typename eliminate_from_pair_of_equations_impl<(current_identity_row::size::value)>::template apply<
+ current_identity_row,
+ identity_pivot_row,
+ typename current_row::item,
+ static_rational<1>
+ >::type,
+ typename next::identity_result
+ > identity_result;
     };
 };
 
 template<>
-struct check_extra_equations_impl<0> {
- template<class Begin>
+struct invert_handle_after_pivot_row<0> {
+ template<class RowsBegin, class IdentityBegin, class MatrixPivot, class IdentityPivot>
     struct apply {
- typedef mpl::list0<> type;
+ typedef dimensionless_type new_matrix;
+ typedef dimensionless_type identity_result;
     };
 };
 
-template<bool is_end>
-struct check_extra_equations;
-
-template<>
-struct check_extra_equations<true> {
- template<class T>
+template<int N>
+struct invert_impl {
+ template<class RowsBegin, class IdentityBegin>
     struct apply {
- typedef typename check_extra_equations_impl<mpl::size<T>::value>::template apply<
- typename mpl::begin<T>::type
+ typedef typename invert_handle_inital_rows<RowsBegin::size::value - N>::template apply<RowsBegin, IdentityBegin> process_column;
+ typedef typename invert_impl<N - 1>::template apply<
+ typename process_column::new_matrix,
+ typename process_column::identity_result
>::type type;
     };
 };
 
 template<>
-struct check_extra_equations<false> {
- template<class T>
+struct invert_impl<0> {
+ template<class RowsBegin, class IdentityBegin>
     struct apply {
- typedef typename mpl::begin<T>::type begin;
- typedef typename elimination_skip_leading_zeros_impl<
- boost::is_same<
- typename mpl::deref<
- typename mpl::begin<typename mpl::deref<begin>::type>::type
- >::type,
- static_rational<0>
- >::value,
- mpl::size<T>::value == 1
- >::template apply<
- begin,
- mpl::size<T>::value,
- mpl::list0<>
- >::type type;
+ typedef IdentityBegin type;
     };
 };
 
-template<>
-struct solve_impl<false> {
- template<class T>
+template<int N>
+struct make_identity {
+ template<int Size>
     struct apply {
- typedef typename mpl::begin<T>::type begin;
- typedef typename check_extra_equations<
- mpl::size<typename mpl::deref<begin>::type>::value == 1
- >::template apply<
- T
- >::type type;
+ typedef list<typename create_row_of_identity<Size - N, Size>::type, typename make_identity<N - 1>::template apply<Size>::type> type;
     };
 };
 
-// solve takes a list of equations and returns the solutions
-// as a vector. Each equation is interpreted as a sequence
-// of coefficients with the last item being the value e.g.
-// list<1, 2, 3> is 1 * x0 + 2 * x1 = 3
+template<>
+struct make_identity<0> {
+ template<int Size>
+ struct apply {
+ typedef dimensionless_type type;
+ };
+};
 
-template<class T>
-struct solve {
- typedef typename solve_impl<mpl::size<T>::value == 0>::template apply<T>::type type;
+template<class Matrix>
+struct make_square_and_invert {
+ typedef typename Matrix::item top_row;
+ typedef typename determine_extra_equations<(top_row::size::value), false>::template apply<
+ Matrix, // RowsBegin
+ top_row::size::value, // TotalColumns
+ Matrix // Result
+ >::type invertible;
+ typedef typename invert_impl<invertible::size::value>::template apply<
+ invertible,
+ typename make_identity<invertible::size::value>::template apply<invertible::size::value>::type
+ >::type type;
 };
 
+
 // find_base_dimensions takes a list of
 // base_units and returns a sorted list
 // of all the base_dimensions they use.
@@ -412,16 +557,65 @@
 // return(sort(dimensions, _1 > _2, front_inserter(list<base_dimension>())));
 // }
 
+typedef char set_no;
+struct set_yes { set_no dummy[2]; };
+
+template<class T>
+struct wrap {};
+
+struct set_end {
+ static set_no lookup(...);
+ typedef mpl::long_<0> size;
+};
+
+template<class T, class Next>
+struct set : Next {
+ using Next::lookup;
+ static set_yes lookup(wrap<T>*);
+ typedef T item;
+ typedef Next next;
+ typedef typename mpl::next<typename Next::size>::type size;
+};
+
+template<bool has_key>
+struct set_insert;
+
+template<>
+struct set_insert<true> {
+ template<class Set, class T>
+ struct apply {
+ typedef Set type;
+ };
+};
+
+template<>
+struct set_insert<false> {
+ template<class Set, class T>
+ struct apply {
+ typedef set<T, Set> type;
+ };
+};
+
+template<class Set, class T>
+struct has_key {
+ static const long size = sizeof(Set::lookup((wrap<T>*)0));
+ static const bool value = (size == sizeof(set_yes));
+};
+
 template<int N>
 struct find_base_dimensions_impl_impl {
     template<class Begin, class S>
     struct apply {
- typedef typename mpl::insert<
- typename find_base_dimensions_impl_impl<N-1>::template apply<
- typename mpl::next<Begin>::type,
- S
- >::type,
- typename mpl::deref<Begin>::type::tag_type
+ typedef typename find_base_dimensions_impl_impl<N-1>::template apply<
+ typename Begin::next,
+ S
+ >::type next;
+
+ typedef typename set_insert<
+ (has_key<next, typename Begin::item::tag_type>::value)
+ >::template apply<
+ next,
+ typename Begin::item::tag_type
>::type type;
     };
 };
@@ -438,9 +632,9 @@
 struct find_base_dimensions_impl {
     template<class Begin>
     struct apply {
- typedef typename find_base_dimensions_impl_impl<mpl::size<typename mpl::deref<Begin>::type::dimension_type>::value>::template apply<
- typename mpl::begin<typename mpl::deref<Begin>::type::dimension_type>::type,
- typename find_base_dimensions_impl<N-1>::template apply<typename mpl::next<Begin>::type>::type
+ typedef typename find_base_dimensions_impl_impl<(Begin::item::dimension_type::size::value)>::template apply<
+ typename Begin::item::dimension_type,
+ typename find_base_dimensions_impl<N-1>::template apply<typename Begin::next>::type
>::type type;
     };
 };
@@ -449,16 +643,16 @@
 struct find_base_dimensions_impl<0> {
     template<class Begin>
     struct apply {
- typedef mpl::set0<> type;
+ typedef set_end type;
     };
 };
 
 template<class T>
 struct find_base_dimensions {
- typedef typename bubble_sort<
+ typedef typename insertion_sort<
         typename find_base_dimensions_impl<
- mpl::size<T>::value
- >::template apply<typename mpl::begin<T>::type>::type
+ (T::size::value)
+ >::template apply<T>::type
>::type type;
 };
 
@@ -480,8 +674,8 @@
 struct calculate_base_dimension_coefficients_func<true> {
     template<class T>
     struct apply {
- typedef typename mpl::deref<T>::type::value_type type;
- typedef typename mpl::next<T>::type next;
+ typedef typename T::item::value_type type;
+ typedef typename T::next next;
     };
 };
 
@@ -504,7 +698,7 @@
     struct apply :
         boost::is_same<
             Dim,
- typename mpl::deref<Iterator>::type::tag_type
+ typename Iterator::item::tag_type
> {};
 };
 
@@ -519,19 +713,19 @@
     template<class BaseUnitDimensions,class Dim,class T>
     struct apply {
         typedef typename calculate_base_dimension_coefficients_func<
- begins_with_dimension<typename mpl::deref<BaseUnitDimensions>::type>::template apply<
+ begins_with_dimension<typename BaseUnitDimensions::item>::template apply<
                 Dim
>::value
>::template apply<
- typename mpl::deref<BaseUnitDimensions>::type
+ typename BaseUnitDimensions::item
> result;
         typedef typename calculate_base_dimension_coefficients_impl<N-1>::template apply<
- typename mpl::next<BaseUnitDimensions>::type,
+ typename BaseUnitDimensions::next,
             Dim,
- typename mpl::push_front<T, typename result::type>::type
+ list<typename result::type, T>
> next_;
         typedef typename next_::type type;
- typedef typename mpl::push_front<typename next_::next, typename result::next>::type next;
+ typedef list<typename result::next, typename next_::next> next;
     };
 };
 
@@ -540,87 +734,7 @@
     template<class Begin, class BaseUnitDimensions, class T>
     struct apply {
         typedef T type;
- typedef mpl::list0<> next;
- };
-};
-
-// solve_for_base_dimension_impl computes the
-// coefficients of each unit for all the base_dimensions.
-// the inner lists are in reverse order.
-
-template<int N>
-struct get_equations_for_base_dimension_impl {
- template<class Begin, class Units>
- struct apply {
- typedef typename calculate_base_dimension_coefficients_impl<mpl::size<Units>::value>::template apply<
- typename mpl::begin<Units>::type,
- typename mpl::deref<Begin>::type,
- mpl::list0<>
- > x;
- typedef typename mpl::push_front<
- typename get_equations_for_base_dimension_impl<N-1>::template apply<
- typename mpl::next<Begin>::type,
- typename x::next
- >::type,
- typename x::type
- >::type type;
- };
-};
-
-template<>
-struct get_equations_for_base_dimension_impl<0> {
- template<class Begin, class Units>
- struct apply {
- typedef mpl::list0<> type;
- };
-};
-
-// get_dimension_iterators_impl takes a list of base_units
-// and returns a list of the begin iterators of their
-// dimensions
-
-template<int N>
-struct get_dimension_iterators_impl {
- template<class Begin>
- struct apply {
- typedef typename mpl::push_front<
- typename get_dimension_iterators_impl<N-1>::template apply<typename mpl::next<Begin>::type>::type,
- typename mpl::begin<typename mpl::deref<Begin>::type::dimension_type>::type
- >::type type;
- };
-};
-
-template<>
-struct get_dimension_iterators_impl<0> {
- template<class Begin>
- struct apply {
- typedef mpl::list0<> type;
- };
-};
-
-// prepare_equations takes the result of
-// solve_for_base_dimension_impl and an index.
-// it sets the equation at the index equal to
-// one and all the others to zero. In the process
-// it reverses the inner lists thus yielding
-// a matrix that can be passed to solve.
-
-template<int N>
-struct prepare_equations_impl {
- template<class Begin, int M>
- struct apply {
- typedef typename mpl::push_front<
- typename prepare_equations_impl<N-1>::template apply<typename mpl::next<Begin>::type, M - 1>::type,
- typename mpl::reverse<typename mpl::push_front<typename mpl::deref<Begin>::type, static_rational<(M == 0 ? 1 : 0)> >::type>::type
- >::type type;
- };
-};
-
-template<>
-struct prepare_equations_impl<0> {
- template<class Begin, int M>
- struct apply {
- typedef mpl::list0<> type;
+ typedef dimensionless_type next;
     };
 };
 
@@ -642,10 +756,10 @@
     BOOST_MPL_ASSERT_MSG((N > 0), base_units_are_probably_not_linearly_independent, (void));
     template<class T>
     struct apply {
- typedef typename mpl::push_front<
- typename add_zeroes_impl<N-1>::template apply<T>::type,
- static_rational<0>
- >::type type;
+ typedef list<
+ static_rational<0>,
+ typename add_zeroes_impl<N-1>::template apply<T>::type
+ > type;
     };
 };
 
@@ -657,205 +771,6 @@
     };
 };
 
-// add_solutions takes a list of equations
-// for the extra dummy units and a list
-// of the values of all the regular units.
-// It find the coefficients of all the dummy
-// units and pushes them onto the begining
-// of the list in reverse order (since the
-// dummy equations are reversed).
-
-template<int N>
-struct add_solutions_impl {
- template<class Begin, class T, class Solution>
- struct apply {
- typedef typename add_solutions_impl<N-1>::template apply<
- typename mpl::next<Begin>::type,
- typename mpl::push_front<
- T,
- typename substitute_impl<mpl::size<Solution>::value>::template apply<
- typename mpl::begin<typename mpl::deref<Begin>::type>::type,
- typename mpl::begin<Solution>::type
- >::type
- >::type,
- Solution
- >::type type;
- };
-};
-
-template<>
-struct add_solutions_impl<0> {
- template<class Begin, class T, class Solution>
- struct apply {
- typedef T type;
- };
-};
-
-// normalize_units finds the units corresponding
-// to each base dimension. The form of the result is
-// a two dimensional list. list<list<rational> >.
-// each of the inner lists represents a single
-// base dimension. There may be extra units added
-// to the front of the inner list if there are
-// more base dimensions than base units. The
-// number such units is returned as a long called
-// extra. For example list<pound, foot> will yield
-// list<list<0, 0, 1>,list<1, 0, 0>,list<1/2,-1/2,1/2> > meaning
-//
-// length = 0 * mass + 0 * force + 1 * length
-// mass = 1 * mass + 0 * force + 0 * length
-// time = 1/2 * mass - 1/2 * force + 1/2 * length
-//
-// Why is there a dummy mass unit? It isn't
-// possible to represent three base dimensions
-// with only two base units. So we need some
-// kind of dummy. Why mass? Well, a base
-// unit of length doesn't help us since we
-// already have one. Mass is before time
-// so we use mass.
-
-// S is the solution for this particular base dimension.
-// if the base dimension cannot be represented then
-// solve will return inconsistent hence the two specializations.
-
-template<class S>
-struct normalize_units_func {
- template<class ReverseEquations, int M, class DimensionIterator, int N, int Extra, int I,class ExtraEquations>
- struct apply {
- // first add zeroes for all the extra units that
- // are not needed.
- typedef typename add_zeroes_impl<Extra-mpl::size<ExtraEquations>::value>::template apply<S>::type result1;
- // then find the values for the extra units that /are/ needed.
- typedef typename add_solutions_impl<mpl::size<ExtraEquations>::value>::template apply<
- typename mpl::begin<ExtraEquations>::type,
- result1,
- S
- >::type result;
- // recurse back to the primary loop putting
- // push_front outside since we wish to maintain
- // the original ordering of dimensions
- typedef typename mpl::push_front<
- typename normalize_units_impl<N-1>::template apply<
- // The coefficient are still the same
- // and we don't need to remove any equations
- ReverseEquations,
- // increment the number of equations that
- // need to be skipped when we add another
- // dummy unit.
- M+1,
- typename mpl::next<DimensionIterator>::type,
- Extra,
- // increment the number of dimensions we've seen
- I+1,
- // pass the equations for the dummy
- // units on without modification.
- ExtraEquations
- >::type,
- result
- >::type type;
- };
-};
-
-// handles the case when this base dimension
-// cannot be represented with the base units
-// and the dummies allready added.
-template<>
-struct normalize_units_func<inconsistent> {
- template<class ReverseEquations, int M, class DimensionIterator, int N, int Extra, int I, class ExtraEquations>
- struct apply {
- // Find the position that needs to be erased. (Since this
- // equation can always be adjusted by adjusting the
- // dummy unit we are adding now, independently of
- // other units, we don't need it anymore.)
- typedef typename mpl::advance_c<typename mpl::begin<ReverseEquations>::type, M>::type pos;
- // Continue with the main loop.
- typedef typename normalize_units_impl<N-1>::template apply<
- // Remove current_equation
- typename mpl::erase<
- ReverseEquations,
- pos
- >::type,
- M,
- typename mpl::next<DimensionIterator>::type,
- Extra,
- // Increment the number of dimensions we've seen
- I+1,
- // Add "current_equation == 0" to the list of equations
- // for the dummy units. (For all base dimensions
- // except this the current dimension must sum to
- // zero.)
- typename mpl::push_front<
- ExtraEquations,
- // Remember it's backwards
- typename mpl::reverse<
- typename mpl::push_front<typename mpl::deref<pos>::type, static_rational<0> >::type
- >::type
- >::type
- > next;
- // this dimension is (0, ..., 0, 1, 0, ..., 0)
- typedef typename mpl::push_front<
- typename add_zeroes_impl<N-1>::template apply<mpl::list0<> >::type,
- static_rational<1>
- >::type result1;
- typedef typename add_zeroes_impl<I>::template apply<result1>::type result;
- // Push the result onto the list.
- typedef typename mpl::push_front<typename next::type, result>::type type;
- };
-};
-
-template<int N>
-struct normalize_units_impl {
- template<class ReverseEquations, int M, class DimensionIterator, int Extra, int I, class ExtraEquations>
- struct apply {
- typedef typename solve<
- typename prepare_equations_impl<
- mpl::size<ReverseEquations>::value
- >::template apply<
- typename mpl::begin<ReverseEquations>::type,
- M
- >::type
- >::type solution;
- typedef typename normalize_units_func<solution>::template apply<
- ReverseEquations,
- M,
- DimensionIterator,
- N,
- Extra,
- I,
- ExtraEquations
- >::type type;
- };
-};
-
-template<>
-struct normalize_units_impl<0> {
- template<class ReverseEquations, int M, class DimensionIterator, int Extra, int I, class ExtraEquations>
- struct apply {
- typedef mpl::list0<> type;
- };
-};
-
-template<class T>
-struct normalize_units {
- typedef typename find_base_dimensions<T>::type dimensions;
- typedef typename get_dimension_iterators_impl<mpl::size<T>::value>::template apply<typename mpl::begin<T>::type>::type iterators;
- typedef typename get_equations_for_base_dimension_impl<
- mpl::size<dimensions>::value
- >::template apply<
- typename mpl::begin<dimensions>::type,
- iterators
- >::type reverse_equations;
- static const long extra = mpl::size<reverse_equations>::value - mpl::size<T>::value;
- typedef typename normalize_units_impl<mpl::size<reverse_equations>::value>::template apply<
- reverse_equations,
- 0,
- typename mpl::begin<dimensions>::type,
- extra,
- 0,
- mpl::list0<>
- >::type type;
-};
-
 // expand_dimensions finds the exponents of
 // a set of dimensions in a dimension_list.
 // the second parameter is assumed to be
@@ -869,12 +784,12 @@
     template<class Begin, class DimensionIterator>
     struct apply {
         typedef typename calculate_base_dimension_coefficients_func<
- begins_with_dimension<DimensionIterator>::template apply<typename mpl::deref<Begin>::type>::value
+ begins_with_dimension<DimensionIterator>::template apply<typename Begin::item>::value
>::template apply<DimensionIterator> result;
- typedef typename mpl::push_front<
- typename expand_dimensions<N-1>::template apply<typename mpl::next<Begin>::type, typename result::next>::type,
- typename result::type
- >::type type;
+ typedef list<
+ typename result::type,
+ typename expand_dimensions<N-1>::template apply<typename Begin::next, typename result::next>::type
+ > type;
     };
 };
 
@@ -882,10 +797,38 @@
 struct expand_dimensions<0> {
     template<class Begin, class DimensionIterator>
     struct apply {
- typedef mpl::list0<> type;
+ typedef dimensionless_type type;
+ };
+};
+
+template<int N>
+struct create_unit_matrix {
+ template<class Begin, class Dimensions>
+ struct apply {
+ typedef typename create_unit_matrix<N - 1>::template apply<typename Begin::next, Dimensions>::type next;
+ typedef list<typename expand_dimensions<Dimensions::size::value>::template apply<Dimensions, typename Begin::item::dimension_type>::type, next> type;
     };
 };
 
+template<>
+struct create_unit_matrix<0> {
+ template<class Begin, class Dimensions>
+ struct apply {
+ typedef dimensionless_type type;
+ };
+};
+
+template<class T>
+struct normalize_units {
+ typedef typename find_base_dimensions<T>::type dimensions;
+ typedef typename create_unit_matrix<(T::size::value)>::template apply<
+ T,
+ dimensions
+ >::type matrix;
+ typedef typename make_square_and_invert<matrix>::type type;
+ static const long extra = (type::size::value) - (T::size::value);
+};
+
 // multiply_add_units computes M x V
 // where M is a matrix and V is a horizontal
 // vector
@@ -896,20 +839,20 @@
 struct multiply_add_units_impl {
     template<class Begin1, class Begin2 ,class X>
     struct apply {
- typedef typename mpl::push_front<
- typename multiply_add_units_impl<N-1>::template apply<
- typename mpl::next<Begin1>::type,
- typename mpl::next<Begin2>::type,
- X
- >::type,
+ typedef list<
             typename mpl::plus<
                 typename mpl::times<
- typename mpl::deref<Begin2>::type,
+ typename Begin2::item,
                     X
>::type,
- typename mpl::deref<Begin1>::type
+ typename Begin1::item
+ >::type,
+ typename multiply_add_units_impl<N-1>::template apply<
+ typename Begin1::next,
+ typename Begin2::next,
+ X
>::type
- >::type type;
+ > type;
     };
 };
 
@@ -917,7 +860,7 @@
 struct multiply_add_units_impl<0> {
     template<class Begin1, class Begin2 ,class X>
     struct apply {
- typedef mpl::list0<> type;
+ typedef dimensionless_type type;
     };
 };
 
@@ -926,16 +869,14 @@
     template<class Begin1, class Begin2>
     struct apply {
         typedef typename multiply_add_units_impl<
- mpl::size<typename mpl::deref<Begin2>::type>::value
+ (Begin2::item::size::value)
>::template apply<
- typename mpl::begin<
- typename multiply_add_units<N-1>::template apply<
- typename mpl::next<Begin1>::type,
- typename mpl::next<Begin2>::type
- >::type
+ typename multiply_add_units<N-1>::template apply<
+ typename Begin1::next,
+ typename Begin2::next
>::type,
- typename mpl::begin<typename mpl::deref<Begin2>::type>::type,
- typename mpl::deref<Begin1>::type
+ typename Begin2::item,
+ typename Begin1::item
>::type type;
     };
 };
@@ -945,16 +886,14 @@
     template<class Begin1, class Begin2>
     struct apply {
         typedef typename add_zeroes_impl<
- mpl::size<typename mpl::deref<Begin2>::type>::value
- >::template apply<mpl::list0<> >::type type1;
+ (Begin2::item::size::value)
+ >::template apply<dimensionless_type>::type type1;
         typedef typename multiply_add_units_impl<
- mpl::size<typename mpl::deref<Begin2>::type>::value
+ (Begin2::item::size::value)
>::template apply<
- typename mpl::begin<
- type1
- >::type,
- typename mpl::begin<typename mpl::deref<Begin2>::type>::type,
- typename mpl::deref<Begin1>::type
+ type1,
+ typename Begin2::item,
+ typename Begin1::item
>::type type;
     };
 };
@@ -988,7 +927,7 @@
 struct strip_zeroes_func<static_rational<0> > {
     template<class L, int N>
     struct apply {
- typedef typename strip_zeroes_impl<N-1>::template apply<typename mpl::pop_front<L>::type>::type type;
+ typedef typename strip_zeroes_impl<N-1>::template apply<typename L::next>::type type;
     };
 };
 
@@ -996,7 +935,7 @@
 struct strip_zeroes_impl {
     template<class T>
     struct apply {
- typedef typename strip_zeroes_func<typename mpl::front<T>::type>::template apply<T, N>::type type;
+ typedef typename strip_zeroes_func<typename T::item>::template apply<T, N>::type type;
     };
 };
 
@@ -1043,12 +982,12 @@
 struct is_simple_system_impl {
     template<class Begin, class Prev>
     struct apply {
- typedef is_base_dimension_unit<typename mpl::deref<Begin>::type::dimension_type> test;
+ typedef is_base_dimension_unit<typename Begin::item::dimension_type> test;
         typedef mpl::and_<
             typename test::type,
             mpl::less<Prev, typename test::base_dimension_type>,
             typename is_simple_system_impl<N-1>::template apply<
- typename mpl::next<Begin>::type,
+ typename Begin::next,
                 typename test::base_dimension_type
>
> type;
@@ -1065,14 +1004,14 @@
 
 template<class T>
 struct is_simple_system {
- typedef typename mpl::begin<T>::type Begin;
- typedef is_base_dimension_unit<typename mpl::deref<Begin>::type::dimension_type> test;
+ typedef T Begin;
+ typedef is_base_dimension_unit<typename Begin::item::dimension_type> test;
     typedef typename mpl::and_<
         typename test::type,
         typename is_simple_system_impl<
- mpl::size<T>::value - 1
+ T::size::value - 1
>::template apply<
- typename mpl::next<Begin>::type,
+ typename Begin::next::type,
             typename test::base_dimension_type
>
>::type type;
@@ -1086,9 +1025,9 @@
 struct calculate_base_unit_exponents_impl<true> {
     template<class T, class Dimensions>
     struct apply {
- typedef typename expand_dimensions<mpl::size<T>::value>::template apply<
- typename mpl::begin<typename find_base_dimensions<T>::type>::type,
- typename mpl::begin<Dimensions>::type
+ typedef typename expand_dimensions<(T::size::value)>::template apply<
+ typename find_base_dimensions<T>::type,
+ Dimensions
>::type type;
     };
 };
@@ -1104,16 +1043,16 @@
         // e.g. if the arguments are list<pound, foot> and
         // list<mass,time^-2> then this step will
         // yield list<0,1,-2>
- typedef typename expand_dimensions<mpl::size<typename base_solutions::dimensions>::value>::template apply<
- typename mpl::begin<typename base_solutions::dimensions>::type,
- typename mpl::begin<Dimensions>::type
+ typedef typename expand_dimensions<(base_solutions::dimensions::size::value)>::template apply<
+ typename base_solutions::dimensions,
+ Dimensions
>::type dimensions;
         // take the unit corresponding to each base unit
         // multiply each of its exponents by the exponent
         // of the base_dimension in the result and sum.
- typedef typename multiply_add_units<mpl::size<dimensions>::value>::template apply<
- typename mpl::begin<dimensions>::type,
- typename mpl::begin<typename base_solutions::type>::type
+ typedef typename multiply_add_units<dimensions::size::value>::template apply<
+ dimensions,
+ typename base_solutions::type
>::type units;
         // Now, verify that the dummy units really
         // cancel out and remove them.

Modified: branches/CMake/release/boost/units/detail/push_front_if.hpp
==============================================================================
--- branches/CMake/release/boost/units/detail/push_front_if.hpp (original)
+++ branches/CMake/release/boost/units/detail/push_front_if.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,12 +11,13 @@
 #ifndef BOOST_UNITS_DETAIL_PUSH_FRONT_IF_HPP
 #define BOOST_UNITS_DETAIL_PUSH_FRONT_IF_HPP
 
-#include <boost/mpl/push_front.hpp>
-
 namespace boost {
 
 namespace units {
 
+template<class T, class Next>
+struct list;
+
 namespace detail {
 
 template<bool>
@@ -26,7 +27,7 @@
 struct push_front_if<true> {
     template<class L, class T>
     struct apply {
- typedef typename mpl::push_front<L, T>::type type;
+ typedef list<T, L> type;
     };
 };
 

Modified: branches/CMake/release/boost/units/detail/push_front_or_add.hpp
==============================================================================
--- branches/CMake/release/boost/units/detail/push_front_or_add.hpp (original)
+++ branches/CMake/release/boost/units/detail/push_front_or_add.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -24,6 +24,9 @@
 
 namespace units {
 
+template<class Item, class Next>
+struct list;
+
 namespace detail {
 
 template<class T>
@@ -39,9 +42,9 @@
     template<typename Sequence, typename T>
     struct apply
     {
- typedef typename mpl::plus<T, typename mpl::front<Sequence>::type>::type item;
+ typedef typename mpl::plus<T, typename Sequence::item>::type item;
         typedef typename push_front_if<!is_empty_dim<item>::value>::template apply<
- typename mpl::pop_front<Sequence>::type,
+ typename Sequence::next,
             item
> type;
     };
@@ -53,14 +56,14 @@
     template<typename Sequence, typename T>
     struct apply
     {
- typedef typename mpl::push_front<Sequence, T>::type type;
+ typedef list<T, Sequence> type;
     };
 };
 
 template<typename Sequence, typename T>
 struct push_front_or_add
 {
- typedef typename push_front_or_add_impl<boost::is_same<typename T::tag_type, typename mpl::front<Sequence>::type::tag_type>::value>::template apply<
+ typedef typename push_front_or_add_impl<boost::is_same<typename T::tag_type, typename Sequence::item::tag_type>::value>::template apply<
         Sequence,
         T
>::type type;
@@ -69,7 +72,7 @@
 template<typename T>
 struct push_front_or_add<dimensionless_type, T>
 {
- typedef typename mpl::push_front<dimensionless_type, T>::type type;
+ typedef list<T, dimensionless_type> type;
 };
 
 } // namespace detail

Modified: branches/CMake/release/boost/units/detail/sort.hpp
==============================================================================
--- branches/CMake/release/boost/units/detail/sort.hpp (original)
+++ branches/CMake/release/boost/units/detail/sort.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -27,118 +27,77 @@
 
 namespace detail {
 
-template<bool second_is_less>
-struct bubble_sort_conditional_swap;
+template<int N>
+struct insertion_sort_insert;
 
-template<>
-struct bubble_sort_conditional_swap<true>
-{
- template<class T0, class T1>
- struct apply
- {
- typedef T1 first;
- typedef T0 second;
- };
-};
+template<bool is_greater>
+struct insertion_sort_comparison_impl;
 
+// have to recursively add the element to the next sequence.
 template<>
-struct bubble_sort_conditional_swap<false>
-{
- template<class T0, class T1>
- struct apply
- {
- typedef T0 first;
- typedef T1 second;
- };
-};
-
-template<int N>
-struct bubble_sort_pass_impl
-{
- template<class Begin, class Current>
- struct apply
- {
- typedef typename mpl::deref<Begin>::type val;
- typedef typename bubble_sort_conditional_swap<mpl::less<val, Current>::value>::template apply<Current, val> pair;
- typedef typename bubble_sort_pass_impl<N-1>::template apply<typename mpl::next<Begin>::type, typename pair::second> next;
- typedef typename mpl::push_front<typename next::type, typename pair::first>::type type;
- enum { value = next::value || mpl::less<val, Current>::value };
+struct insertion_sort_comparison_impl<true> {
+ template<class Begin, int N, class T>
+ struct apply {
+ typedef list<
+ typename Begin::item,
+ typename insertion_sort_insert<N - 1>::template apply<
+ typename Begin::next,
+ T
+ >::type
+ > type;
     };
 };
 
+// prepend the current element
 template<>
-struct bubble_sort_pass_impl<0>
-{
- template<class Begin, class Current>
- struct apply
- {
- typedef typename mpl::push_front<dimensionless_type, Current>::type type;
- enum { value = false };
+struct insertion_sort_comparison_impl<false> {
+ template<class Begin, int N, class T>
+ struct apply {
+ typedef list<T, Begin> type;
     };
 };
 
-template<bool>
-struct bubble_sort_impl;
-
-template<>
-struct bubble_sort_impl<true>
-{
- template<class T>
- struct apply
- {
- typedef typename mpl::begin<T>::type begin;
- typedef typename bubble_sort_pass_impl<mpl::size<T>::value - 1>::template apply<
- typename mpl::next<begin>::type,
- typename mpl::deref<begin>::type
- > single_pass;
- typedef typename bubble_sort_impl<(single_pass::value)>::template apply<typename single_pass::type>::type type;
+template<int N>
+struct insertion_sort_insert {
+ template<class Begin, class T>
+ struct apply {
+ typedef typename insertion_sort_comparison_impl<mpl::less<typename Begin::item, T>::value>::template apply<
+ Begin,
+ N,
+ T
+ >::type type;
     };
 };
 
 template<>
-struct bubble_sort_impl<false>
-{
- template<class T>
- struct apply
- {
- typedef T type;
+struct insertion_sort_insert<0> {
+ template<class Begin, class T>
+ struct apply {
+ typedef list<T, dimensionless_type> type;
     };
 };
 
 template<int N>
-struct bubble_sort_one_or_zero
-{
- template<class T>
- struct apply
- {
- typedef typename bubble_sort_impl<true>::template apply<T>::type type;
+struct insertion_sort_impl {
+ template<class Begin>
+ struct apply {
+ typedef typename insertion_sort_impl<N - 1>::template apply<typename Begin::next>::type next;
+ typedef typename insertion_sort_insert<(next::size::value)>::template apply<next, typename Begin::item>::type type;
     };
 };
 
 template<>
-struct bubble_sort_one_or_zero<0>
-{
- template<class T>
- struct apply
- {
+struct insertion_sort_impl<0> {
+ template<class Begin>
+ struct apply {
         typedef dimensionless_type type;
     };
 };
 
-template<>
-struct bubble_sort_one_or_zero<1>
-{
- template<class T>
- struct apply
- {
- typedef typename mpl::push_front<dimensionless_type, typename mpl::front<T>::type>::type type;
- };
-};
-
 template<class T>
-struct bubble_sort
+struct insertion_sort
 {
- typedef typename bubble_sort_one_or_zero<mpl::size<T>::value>::template apply<T>::type type;
+ typedef typename insertion_sort_impl<T::size::value>::template apply<T>::type type;
 };
 
 } // namespace detail

Modified: branches/CMake/release/boost/units/detail/unscale.hpp
==============================================================================
--- branches/CMake/release/boost/units/detail/unscale.hpp (original)
+++ branches/CMake/release/boost/units/detail/unscale.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -141,11 +141,11 @@
     template<class Begin>
     struct apply
     {
- typedef typename eval_scale_list_impl<N-1>::template apply<typename mpl::next<Begin>::type> next_iteration;
- typedef typename multiply_typeof_helper<typename next_iteration::type, typename mpl::deref<Begin>::type::value_type>::type type;
+ typedef typename eval_scale_list_impl<N-1>::template apply<typename Begin::next> next_iteration;
+ typedef typename multiply_typeof_helper<typename next_iteration::type, typename Begin::item::value_type>::type type;
         static type value()
         {
- return(next_iteration::value() * mpl::deref<Begin>::type::value());
+ return(next_iteration::value() * Begin::item::value());
         }
     };
 };
@@ -168,7 +168,7 @@
 
 /// INTERNAL ONLY
 template<class T>
-struct eval_scale_list : detail::eval_scale_list_impl<mpl::size<T>::value>::template apply<typename mpl::begin<T>::type> {};
+struct eval_scale_list : detail::eval_scale_list_impl<T::size::value>::template apply<T> {};
 
 } // namespace units
 

Modified: branches/CMake/release/boost/units/dimension.hpp
==============================================================================
--- branches/CMake/release/boost/units/dimension.hpp (original)
+++ branches/CMake/release/boost/units/dimension.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,8 +16,6 @@
 #include <boost/type_traits/is_same.hpp>
 
 #include <boost/mpl/arithmetic.hpp>
-#include <boost/mpl/begin.hpp>
-#include <boost/mpl/size.hpp>
 
 #include <boost/units/static_rational.hpp>
 #include <boost/units/detail/dimension_list.hpp>
@@ -62,8 +60,8 @@
 template<typename DL,typename Ex>
 struct static_power
 {
- typedef typename detail::static_power_impl<mpl::size<DL>::value>::template apply<
- typename mpl::begin<DL>::type,
+ typedef typename detail::static_power_impl<DL::size::value>::template apply<
+ DL,
         Ex
>::type type;
 };
@@ -72,8 +70,8 @@
 template<typename DL,typename Rt>
 struct static_root
 {
- typedef typename detail::static_root_impl<mpl::size<DL>::value>::template apply<
- typename mpl::begin<DL>::type,
+ typedef typename detail::static_root_impl<DL::size::value>::template apply<
+ DL,
         Rt
>::type type;
 };
@@ -125,9 +123,9 @@
         typedef typename boost::units::detail::merge_dimensions<
             T0,
             typename boost::units::detail::static_inverse_impl<
- mpl::size<T1>::value
+ T1::size::value
>::template apply<
- typename mpl::begin<T1>::type
+ T1
>::type
>::type type;
     };

Modified: branches/CMake/release/boost/units/heterogeneous_system.hpp
==============================================================================
--- branches/CMake/release/boost/units/heterogeneous_system.hpp (original)
+++ branches/CMake/release/boost/units/heterogeneous_system.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -214,12 +214,12 @@
     template<class UnitsBegin, class ExponentsBegin>
     struct apply
     {
- typedef typename push_front_if<!(is_zero<typename mpl::deref<ExponentsBegin>::type>::value)>::template apply<
+ typedef typename push_front_if<!(is_zero<typename ExponentsBegin::item>::value)>::template apply<
             typename make_heterogeneous_system_impl<N-1>::template apply<
- typename mpl::next<UnitsBegin>::type,
- typename mpl::next<ExponentsBegin>::type
+ typename UnitsBegin::next,
+ typename ExponentsBegin::next
>::type,
- heterogeneous_system_dim<typename mpl::deref<UnitsBegin>::type, typename mpl::deref<ExponentsBegin>::type>
+ heterogeneous_system_dim<typename UnitsBegin::item, typename ExponentsBegin::item>
>::type type;
     };
 };
@@ -239,9 +239,9 @@
 {
     typedef typename calculate_base_unit_exponents<typename System::type, Dimensions>::type exponents;
     BOOST_MPL_ASSERT_MSG((!boost::is_same<exponents, inconsistent>::value), the_specified_dimension_is_not_representible_in_the_given_system, (types<Dimensions, System>));
- typedef typename make_heterogeneous_system_impl<mpl::size<typename System::type>::value>::template apply<
- typename mpl::begin<typename System::type>::type,
- typename mpl::begin<exponents>::type
+ typedef typename make_heterogeneous_system_impl<System::type::size::value>::template apply<
+ typename System::type,
+ exponents
>::type unit_list;
     typedef heterogeneous_system<heterogeneous_system_impl<unit_list, Dimensions, no_scale> > type;
 };
@@ -314,9 +314,9 @@
     {
         typedef typename push_front_or_add<
             typename unscale_heterogeneous_system_impl<N-1>::template apply<
- typename mpl::next<Begin>::type
+ typename Begin::next
>::type,
- typename unscale<typename mpl::deref<Begin>::type>::type
+ typename unscale<typename Begin::item>::type
>::type type;
     };
 };
@@ -343,9 +343,9 @@
     typedef heterogeneous_system<
         heterogeneous_system_impl<
             typename detail::unscale_heterogeneous_system_impl<
- mpl::size<typename T::type>::value
+ T::type::size::value
>::template apply<
- typename mpl::begin<typename T::type>::type
+ typename T::type
>::type,
             typename T::dimensions,
             no_scale
@@ -370,9 +370,9 @@
     {
         typedef typename mpl::times<
             typename get_scale_list_of_heterogeneous_system_impl<N-1>::template apply<
- typename mpl::next<Begin>::type
+ typename Begin::next
>::type,
- typename get_scale_list<typename mpl::deref<Begin>::type>::type
+ typename get_scale_list<typename Begin::item>::type
>::type type;
     };
 };
@@ -395,7 +395,7 @@
 {
     typedef typename mpl::times<
         typename detail::get_scale_list_of_heterogeneous_system_impl<
- mpl::size<typename T::type>::value
+ T::type::size::value
>::template apply<typename T::type>::type,
         typename T::scale
>::type type;

Modified: branches/CMake/release/boost/units/io.hpp
==============================================================================
--- branches/CMake/release/boost/units/io.hpp (original)
+++ branches/CMake/release/boost/units/io.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -208,10 +208,10 @@
     template<class Begin>
     struct apply
     {
- typedef typename symbol_string_impl<N-1>::template apply<typename mpl::next<Begin>::type> next;
+ typedef typename symbol_string_impl<N-1>::template apply<typename Begin::next> next;
         static void value(std::string& str)
         {
- str += base_unit_symbol_string(typename mpl::deref<Begin>::type()) + ' ';
+ str += base_unit_symbol_string(typename Begin::item()) + ' ';
             next::value(str);
         }
     };
@@ -225,7 +225,7 @@
     {
         static void value(std::string& str)
         {
- str += base_unit_symbol_string(typename mpl::deref<Begin>::type());
+ str += base_unit_symbol_string(typename Begin::item());
         };
     };
 };
@@ -252,8 +252,8 @@
     {
         static void value(std::string& str)
         {
- str += mpl::deref<Begin>::type::symbol();
- scale_symbol_string_impl<N - 1>::template apply<typename mpl::next<Begin>::type>::value(str);
+ str += Begin::item::symbol();
+ scale_symbol_string_impl<N - 1>::template apply<typename Begin::next>::value(str);
         }
     };
 };
@@ -275,10 +275,10 @@
     template<class Begin>
     struct apply
     {
- typedef typename name_string_impl<N-1>::template apply<typename mpl::next<Begin>::type> next;
+ typedef typename name_string_impl<N-1>::template apply<typename Begin::next> next;
         static void value(std::string& str)
         {
- str += base_unit_name_string(typename mpl::deref<Begin>::type()) + ' ';
+ str += base_unit_name_string(typename Begin::item()) + ' ';
             next::value(str);
         }
     };
@@ -292,7 +292,7 @@
     {
         static void value(std::string& str)
         {
- str += base_unit_name_string(typename mpl::deref<Begin>::type());
+ str += base_unit_name_string(typename Begin::item());
         };
     };
 };
@@ -318,8 +318,8 @@
     {
         static void value(std::string& str)
         {
- str += mpl::deref<Begin>::type::name();
- scale_name_string_impl<N - 1>::template apply<typename mpl::next<Begin>::type>::value(str);
+ str += Begin::item::name();
+ scale_name_string_impl<N - 1>::template apply<typename Begin::next>::value(str);
         }
     };
 };
@@ -476,13 +476,11 @@
 struct format_raw_symbol_impl {
     template<class Units>
     void append_units_to(std::string& str) {
- detail::symbol_string_impl<mpl::size<Units>::value>::template apply<
- typename mpl::begin<Units>::type>::value(str);
+ detail::symbol_string_impl<Units::size::value>::template apply<Units>::value(str);
     }
     template<class Scale>
     void append_scale_to(std::string& str) {
- detail::scale_symbol_string_impl<mpl::size<Scale>::value>::template apply<
- typename mpl::begin<Scale>::type>::value(str);
+ detail::scale_symbol_string_impl<Scale::size::value>::template apply<Scale>::value(str);
     }
     template<class Unit>
     std::string operator()(const Unit& unit) {
@@ -508,13 +506,11 @@
 struct format_raw_name_impl {
     template<class Units>
     void append_units_to(std::string& str) {
- detail::name_string_impl<mpl::size<Units>::value>::template apply<
- typename mpl::begin<Units>::type>::value(str);
+ detail::name_string_impl<(Units::size::value)>::template apply<Units>::value(str);
     }
     template<class Scale>
     void append_scale_to(std::string& str) {
- detail::scale_name_string_impl<mpl::size<Scale>::value>::template apply<
- typename mpl::begin<Scale>::type>::value(str);
+ detail::scale_name_string_impl<Scale::size::value>::template apply<Scale>::value(str);
     }
     template<class Unit>
     std::string operator()(const Unit& unit) {

Modified: branches/CMake/release/boost/units/lambda.hpp
==============================================================================
--- branches/CMake/release/boost/units/lambda.hpp (original)
+++ branches/CMake/release/boost/units/lambda.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -56,7 +56,7 @@
 
     template<typename System, typename Dim, typename Arg>
     struct multiply_typeof_helper<boost::units::unit<Dim, System>, boost::lambda::lambda_functor<Arg> > {
- typename boost::lambda::lambda_functor<
+ typedef boost::lambda::lambda_functor<
           boost::lambda::lambda_functor_base<
               boost::lambda::arithmetic_action<boost::lambda::multiply_action>,
               tuple<typename boost::lambda::const_copy_argument<const boost::units::unit<Dim, System> >::type, boost::lambda::lambda_functor<Arg> >

Modified: branches/CMake/release/boost/units/make_system.hpp
==============================================================================
--- branches/CMake/release/boost/units/make_system.hpp (original)
+++ branches/CMake/release/boost/units/make_system.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,8 +11,6 @@
 #ifndef BOOST_UNITS_MAKE_SYSTEM_HPP
 #define BOOST_UNITS_MAKE_SYSTEM_HPP
 
-#include <boost/mpl/list/list10.hpp>
-
 #include <boost/units/config.hpp>
 #include <boost/units/dimensionless_type.hpp>
 #include <boost/units/homogeneous_system.hpp>
@@ -77,55 +75,55 @@
 template<class T0, class T1>
 struct make_system<T0, T1, na, na, na, na, na, na, na, na>
 {
- typedef homogeneous_system<typename detail::bubble_sort<mpl::list2<T0, T1> >::type> type;
+ typedef homogeneous_system<typename detail::insertion_sort<list<T0, list<T1, dimensionless_type> > >::type> type;
 };
 
 template<class T0, class T1, class T2>
 struct make_system<T0, T1, T2, na, na, na, na, na, na, na>
 {
- typedef homogeneous_system<typename detail::bubble_sort<mpl::list3<T0, T1, T2> >::type> type;
+ typedef homogeneous_system<typename detail::insertion_sort<list<T0, list<T1, list<T2, dimensionless_type> > > >::type> type;
 };
 
 template<class T0, class T1, class T2, class T3>
 struct make_system<T0, T1, T2, T3, na, na, na, na, na, na>
 {
- typedef homogeneous_system<typename detail::bubble_sort<mpl::list4<T0, T1, T2, T3> >::type> type;
+ typedef homogeneous_system<typename detail::insertion_sort<list<T0, list<T1, list<T2, list<T3, dimensionless_type> > > > >::type> type;
 };
 
 template<class T0, class T1, class T2, class T3, class T4>
 struct make_system<T0, T1, T2, T3, T4, na, na, na, na, na>
 {
- typedef homogeneous_system<typename detail::bubble_sort<mpl::list5<T0, T1, T2, T3, T4> >::type> type;
+ typedef homogeneous_system<typename detail::insertion_sort<list<T0, list<T1, list<T2, list<T3, list<T4, dimensionless_type> > > > > >::type> type;
 };
 
 template<class T0, class T1, class T2, class T3, class T4, class T5>
 struct make_system<T0, T1, T2, T3, T4, T5, na, na, na, na>
 {
- typedef homogeneous_system<typename detail::bubble_sort<mpl::list6<T0, T1, T2, T3, T4, T5> >::type> type;
+ typedef homogeneous_system<typename detail::insertion_sort<list<T0, list<T1, list<T2, list<T3, list<T4, list<T5, dimensionless_type> > > > > > >::type> type;
 };
 
 template<class T0, class T1, class T2, class T3, class T4, class T5, class T6>
 struct make_system<T0, T1, T2, T3, T4, T5, T6, na, na, na>
 {
- typedef homogeneous_system<typename detail::bubble_sort<mpl::list7<T0, T1, T2, T3, T4, T5, T6> >::type> type;
+ typedef homogeneous_system<typename detail::insertion_sort<list<T0, list<T1, list<T2, list<T3, list<T4, list<T5, list<T6, dimensionless_type> > > > > > > >::type> type;
 };
 
 template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7>
 struct make_system<T0, T1, T2, T3, T4, T5, T6, T7, na, na>
 {
- typedef homogeneous_system<typename detail::bubble_sort<mpl::list8<T0, T1, T2, T3, T4, T5, T6, T7> >::type> type;
+ typedef homogeneous_system<typename detail::insertion_sort<list<T0, list<T1, list<T2, list<T3, list<T4, list<T5, list<T6, list<T7, dimensionless_type> > > > > > > > >::type> type;
 };
 
 template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8>
 struct make_system<T0, T1, T2, T3, T4, T5, T6, T7, T8, na>
 {
- typedef homogeneous_system<typename detail::bubble_sort<mpl::list9<T0, T1, T2, T3, T4, T5, T6, T7, T8> >::type> type;
+ typedef homogeneous_system<typename detail::insertion_sort<list<T0, list<T1, list<T2, list<T3, list<T4, list<T5, list<T6, list<T7, list<T8, dimensionless_type> > > > > > > > > >::type> type;
 };
 
 template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9>
 struct make_system
 {
- typedef homogeneous_system<typename detail::bubble_sort<mpl::list10<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> >::type> type;
+ typedef homogeneous_system<typename detail::insertion_sort<list<T0, list<T1, list<T2, list<T3, list<T4, list<T5, list<T6, list<T7, list<T8, list<T9, dimensionless_type> > > > > > > > > > >::type> type;
 };
 
 #endif

Modified: branches/CMake/release/boost/units/quantity.hpp
==============================================================================
--- branches/CMake/release/boost/units/quantity.hpp (original)
+++ branches/CMake/release/boost/units/quantity.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -107,6 +107,15 @@
             BOOST_UNITS_CHECK_LAYOUT_COMPATIBILITY(this_type, Y);
         }
         
+ // Need to make sure that the destructor of
+ // Unit which contains the checking is instantiated,
+ // on sun.
+ #ifdef __SUNPRO_CC
+ ~quantity() {
+ unit_type force_unit_instantiation;
+ }
+ #endif
+
         //~quantity() { }
         
         this_type& operator=(const this_type& source)
@@ -314,6 +323,7 @@
                 
             return *this;
         }
+
         #ifndef BOOST_NO_SFINAE
 
         /// implicit conversion between value types is allowed if allowed for value types themselves
@@ -358,14 +368,24 @@
             return *this;
         }
 
- #ifndef BOOST_NO_SFINAE
+ #if 1
 
         /// implicit conversion between different unit systems is allowed
         template<class System2, class Y2>
         quantity(const quantity<unit<dimensionless_type, System2>,Y2>& source,
- typename boost::enable_if<detail::is_non_narrowing_conversion<Y2, Y>,
- typename detail::disable_if_is_same<System, System2>::type>::type* = 0,
- typename boost::enable_if<detail::is_dimensionless_system<System2> >::type* = 0) :
+ #ifdef __SUNPRO_CC
+ typename boost::enable_if<
+ boost::mpl::and_<
+ detail::is_non_narrowing_conversion<Y2, Y>,
+ detail::is_dimensionless_system<System2>
+ >
+ >::type* = 0
+ #else
+ typename boost::enable_if<detail::is_non_narrowing_conversion<Y2, Y> >::type* = 0,
+ typename detail::disable_if_is_same<System, System2>::type* = 0,
+ typename boost::enable_if<detail::is_dimensionless_system<System2> >::type* = 0
+ #endif
+ ) :
             val_(source.value())
         {
             BOOST_UNITS_CHECK_LAYOUT_COMPATIBILITY(this_type, Y);
@@ -374,9 +394,19 @@
         /// implicit conversion between different unit systems is allowed
         template<class System2, class Y2>
         explicit quantity(const quantity<unit<dimensionless_type, System2>,Y2>& source,
- typename boost::disable_if<detail::is_non_narrowing_conversion<Y2, Y>,
- typename detail::disable_if_is_same<System, System2>::type>::type* = 0,
- typename boost::enable_if<detail::is_dimensionless_system<System2> >::type* = 0) :
+ #ifdef __SUNPRO_CC
+ typename boost::enable_if<
+ boost::mpl::and_<
+ boost::mpl::not_<detail::is_non_narrowing_conversion<Y2, Y> >,
+ detail::is_dimensionless_system<System2>
+ >
+ >::type* = 0
+ #else
+ typename boost::disable_if<detail::is_non_narrowing_conversion<Y2, Y> >::type* = 0,
+ typename detail::disable_if_is_same<System, System2>::type* = 0,
+ typename boost::enable_if<detail::is_dimensionless_system<System2> >::type* = 0
+ #endif
+ ) :
             val_(static_cast<Y>(source.value()))
         {
             BOOST_UNITS_CHECK_LAYOUT_COMPATIBILITY(this_type, Y);
@@ -404,6 +434,8 @@
         {
             BOOST_UNITS_CHECK_LAYOUT_COMPATIBILITY(this_type, Y);
         }
+
+ #ifndef __SUNPRO_CC
 
         /// implicit assignment between different unit systems is allowed
         template<class System2>
@@ -414,6 +446,8 @@
             return *this;
         }
         
+ #endif
+
         /// implicit conversion to @c value_type is allowed
         operator value_type() const { return val_; }
         
@@ -549,6 +583,28 @@
     typedef quantity<unit_type,value_type> type;
 };
 
+/// for sun CC we need to invoke SFINAE at
+/// the top level, otherwise it will silently
+/// return int.
+template<class Dim1, class System1,
+ class Dim2, class System2,
+ class X,
+ class Y>
+struct add_typeof_helper< quantity<unit<Dim1, System1>,X>,quantity<unit<Dim2, System2>,Y> >
+{
+};
+
+template<class Dim,
+ class System,
+ class X,
+ class Y>
+struct add_typeof_helper< quantity<unit<Dim, System>,X>,quantity<unit<Dim, System>,Y> >
+{
+ typedef typename add_typeof_helper<X,Y>::type value_type;
+ typedef unit<Dim, System> unit_type;
+ typedef quantity<unit_type,value_type> type;
+};
+
 /// specialize subtract typeof helper
 /// INTERNAL ONLY
 template<class Unit1,
@@ -562,6 +618,26 @@
     typedef quantity<unit_type,value_type> type;
 };
 
+// Force adding different units to fail on sun.
+template<class Dim1, class System1,
+ class Dim2, class System2,
+ class X,
+ class Y>
+struct subtract_typeof_helper< quantity<unit<Dim1, System1>,X>,quantity<unit<Dim2, System2>,Y> >
+{
+};
+
+template<class Dim,
+ class System,
+ class X,
+ class Y>
+struct subtract_typeof_helper< quantity<unit<Dim, System>,X>,quantity<unit<Dim, System>,Y> >
+{
+ typedef typename subtract_typeof_helper<X,Y>::type value_type;
+ typedef unit<Dim, System> unit_type;
+ typedef quantity<unit_type,value_type> type;
+};
+
 /// scalar times unit typeof helper
 /// INTERNAL ONLY
 template<class System,

Modified: branches/CMake/release/boost/units/unit.hpp
==============================================================================
--- branches/CMake/release/boost/units/unit.hpp (original)
+++ branches/CMake/release/boost/units/unit.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,7 @@
 
 #include <boost/static_assert.hpp>
 #include <boost/mpl/bool.hpp>
+#include <boost/mpl/assert.hpp>
 #include <boost/type_traits/is_same.hpp>
 
 #include <boost/units/config.hpp>
@@ -47,9 +48,20 @@
        
         this_type& operator=(const this_type&) { }
         
+ // sun will ignore errors resulting from templates
+ // instantiated in the return type of a function.
+ // Make sure that we get an error anyway by putting.
+ // the check in the destructor.
+ #ifdef __SUNPRO_CC
+ ~unit() {
+ BOOST_MPL_ASSERT((detail::check_system<System, Dim>));
+ BOOST_MPL_ASSERT((is_dimension_list<Dim>));
+ }
+ #else
     private:
- BOOST_STATIC_ASSERT((detail::check_system<System, Dim>::value == true));
- BOOST_STATIC_ASSERT((is_dimension_list<Dim>::value == true));
+ BOOST_MPL_ASSERT((detail::check_system<System, Dim>));
+ BOOST_MPL_ASSERT((is_dimension_list<Dim>));
+ #endif
 };
 
 }
@@ -105,28 +117,20 @@
 
 /// unit add typeof helper
 /// INTERNAL ONLY
-template<class Dim1,
- class Dim2,
+template<class Dim,
          class System>
-struct add_typeof_helper< unit<Dim1,System>,unit<Dim2,System> >
+struct add_typeof_helper< unit<Dim,System>,unit<Dim,System> >
 {
- // ensure dimension lists are commensurate
- BOOST_STATIC_ASSERT((is_same<Dim1,Dim2>::value == true));
-
- typedef unit<Dim1,System> type;
+ typedef unit<Dim,System> type;
 };
 
 /// unit subtract typeof helper
 /// INTERNAL ONLY
-template<class Dim1,
- class Dim2,
+template<class Dim,
          class System>
-struct subtract_typeof_helper< unit<Dim1,System>,unit<Dim2,System> >
+struct subtract_typeof_helper< unit<Dim,System>,unit<Dim,System> >
 {
- // ensure dimension lists are commensurate
- BOOST_STATIC_ASSERT((is_same<Dim1,Dim2>::value == true));
-
- typedef unit<Dim1,System> type;
+ typedef unit<Dim,System> type;
 };
 
 /// unit multiply typeof helper for two identical homogeneous systems

Modified: branches/CMake/release/boost/wave/cpplexer/cpp_lex_token.hpp
==============================================================================
--- branches/CMake/release/boost/wave/cpplexer/cpp_lex_token.hpp (original)
+++ branches/CMake/release/boost/wave/cpplexer/cpp_lex_token.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -21,6 +21,7 @@
 #include <boost/wave/token_ids.hpp>
 #include <boost/wave/language_support.hpp>
 
+#include <boost/throw_exception.hpp>
 #include <boost/pool/singleton_pool.hpp>
 
 // this must occur after all of the includes and before any code appears
@@ -147,7 +148,7 @@
         
     void *ret = pool_type::malloc();
     if (0 == ret)
- throw std::bad_alloc();
+ boost::throw_exception(std::bad_alloc());
     return ret;
 }
 

Modified: branches/CMake/release/boost/wave/grammars/cpp_expression_grammar.hpp
==============================================================================
--- branches/CMake/release/boost/wave/grammars/cpp_expression_grammar.hpp (original)
+++ branches/CMake/release/boost/wave/grammars/cpp_expression_grammar.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -755,7 +755,10 @@
     parse_info<iterator_type> hit(first);
     closure_value result; // expression result
     
- try {
+#if !defined(BOOST_NO_EXCEPTIONS)
+ try
+#endif
+ {
         expression_grammar g; // expression grammar
         hit = parse (first, last, g[spirit_assign_actor(result)],
                      ch_p(T_SPACE) | ch_p(T_CCOMMENT) | ch_p(T_CPPCOMMENT));
@@ -768,6 +771,7 @@
                     expression = "<empty expression>";
                 BOOST_WAVE_THROW(preprocess_exception, ill_formed_expression,
                     expression.c_str(), act_pos);
+ return false;
             }
             else {
             // as the if_block_status is false no errors will be reported
@@ -775,17 +779,20 @@
             }
         }
     }
+#if !defined(BOOST_NO_EXCEPTIONS)
     catch (boost::wave::preprocess_exception const& e) {
     // expression is illformed
         if (if_block_status) {
             boost::throw_exception(e);
+ return false;
         }
- else {
+ else {
         // as the if_block_status is false no errors will be reported
             return false;
         }
     }
-
+#endif
+
     if (!hit.full) {
     // The token list starts with a valid expression, but there remains
     // something. If the remainder consists out of whitespace only, the
@@ -812,6 +819,7 @@
                         expression = "<empty expression>";
                     BOOST_WAVE_THROW(preprocess_exception, ill_formed_expression,
                         expression.c_str(), act_pos);
+ return false;
                 }
                 else {
                 // as the if_block_status is false no errors will be reported

Modified: branches/CMake/release/boost/weak_ptr.hpp
==============================================================================
--- branches/CMake/release/boost/weak_ptr.hpp (original)
+++ branches/CMake/release/boost/weak_ptr.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -61,13 +61,31 @@
 //
 
     template<class Y>
- weak_ptr(weak_ptr<Y> const & r): pn(r.pn) // never throws
+#if !defined( BOOST_SP_NO_SP_CONVERTIBLE )
+
+ weak_ptr( weak_ptr<Y> const & r, typename detail::sp_enable_if_convertible<Y,T>::type = detail::sp_empty() )
+
+#else
+
+ weak_ptr( weak_ptr<Y> const & r )
+
+#endif
+ : pn(r.pn) // never throws
     {
         px = r.lock().get();
     }
 
     template<class Y>
- weak_ptr(shared_ptr<Y> const & r): px(r.px), pn(r.pn) // never throws
+#if !defined( BOOST_SP_NO_SP_CONVERTIBLE )
+
+ weak_ptr( shared_ptr<Y> const & r, typename detail::sp_enable_if_convertible<Y,T>::type = detail::sp_empty() )
+
+#else
+
+ weak_ptr( shared_ptr<Y> const & r )
+
+#endif
+ : px( r.px ), pn( r.pn ) // never throws
     {
     }
 
@@ -93,31 +111,7 @@
 
     shared_ptr<T> lock() const // never throws
     {
-#if defined(BOOST_HAS_THREADS)
-
- // optimization: avoid throw overhead
- if(expired())
- {
- return shared_ptr<element_type>();
- }
-
- try
- {
- return shared_ptr<element_type>(*this);
- }
- catch(bad_weak_ptr const &)
- {
- // Q: how can we get here?
- // A: another thread may have invalidated r after the use_count test above.
- return shared_ptr<element_type>();
- }
-
-#else
-
- // optimization: avoid try/catch overhead when single threaded
- return expired()? shared_ptr<element_type>(): shared_ptr<element_type>(*this);
-
-#endif
+ return shared_ptr<element_type>( *this, boost::detail::sp_nothrow_tag() );
     }
 
     long use_count() const // never throws

Modified: branches/CMake/release/libs/any/test.hpp
==============================================================================
--- branches/CMake/release/libs/any/test.hpp (original)
+++ branches/CMake/release/libs/any/test.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -232,7 +232,12 @@
     template<typename test_iterator>
     bool tester<test_iterator>::operator()()
     {
- using namespace std;
+ using std::cerr;
+ using std::endl;
+ using std::ends;
+ using std::exception;
+ using std::flush;
+ using std::string;
 
         unsigned long passed = 0, failed = 0, unimplemented = 0;
 
@@ -251,9 +256,9 @@
                     unsigned long allocated = allocations::instance().allocated();
                     unsigned long deallocated = allocations::instance().deallocated();
 #ifdef BOOST_NO_STRINGSTREAM
- ostrstream report;
+ std::ostrstream report;
 #else
- ostringstream report;
+ std::ostringstream report;
 #endif
                     report << "new/delete ("
                            << allocated << " allocated, "

Modified: branches/CMake/release/libs/asio/doc/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/asio/doc/Jamfile.v2 (original)
+++ branches/CMake/release/libs/asio/doc/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -24,14 +24,14 @@
 
 install images
   :
- design/proactor.png
+ overview/proactor.png
   :
     <location>html/boost_asio
   ;
 
 local example-names = allocation buffers chat echo http/client http/server
- http/server2 http/server3 invocation iostreams multicast serialization
- services socks4 ssl timeouts timers ;
+ http/server2 http/server3 invocation iostreams local multicast nonblocking
+ porthopper serialization services socks4 ssl timeouts timers ;
 
 for local l in $(example-names)
 {
@@ -66,7 +66,7 @@
 
 install asio_doc_images
   :
- design/proactor.png
+ overview/proactor.png
   :
     <location>$(BOOST_ROOT)/doc/html/boost_asio
   ;

Modified: branches/CMake/release/libs/asio/doc/asio.qbk
==============================================================================
--- branches/CMake/release/libs/asio/doc/asio.qbk (original)
+++ branches/CMake/release/libs/asio/doc/asio.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -37,13 +37,21 @@
 
 [/=============================================================================]
 
-Boost.Asio is a cross-platform C++ library for network programming that
-provides developers with a consistent asynchronous I/O model using a modern C++
-approach.
+Boost.Asio is a cross-platform C++ library for network and low-level I/O
+programming that provides developers with a consistent asynchronous model using
+a modern C++ approach.
 
 [variablelist
   [
     [
+ [link boost_asio.overview Overview]
+ ]
+ [
+ An overview of the features included in Boost.Asio, plus rationale and design information.
+ ]
+ ]
+ [
+ [
       [link boost_asio.using Using Boost.Asio]
     ]
     [
@@ -80,16 +88,17 @@
   ]
   [
     [
- [link boost_asio.design Design]
+ [link boost_asio.index Index]
     ]
     [
- Rationale and design information for Boost.Asio.
+ Book-style text index of Boost.Asio documentation.
     ]
   ]
 ]
 
+[include overview.qbk]
 [include using.qbk]
 [include tutorial.qbk]
 [include examples.qbk]
 [include reference.qbk]
-[include design.qbk]
+[xinclude index.xml]

Deleted: branches/CMake/release/libs/asio/doc/design.qbk
==============================================================================
--- branches/CMake/release/libs/asio/doc/design.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,104 +0,0 @@
-[/
- / Copyright (c) 2003-2008 Christopher M. Kohlhoff (chris at kohlhoff dot com)
- /
- / Distributed under the Boost Software License, Version 1.0. (See accompanying
- / file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- /]
-
-[section:design Design Notes]
-
-[variablelist
- [
- [
- [link boost_asio.design.rationale Rationale]
- ]
- [
- Design rationale for the Boost.Asio library.
- ]
- ]
- [
- [
- [link boost_asio.design.async Asynchronous operations]
- ]
- [
- Support for asynchronous operations in the Boost.Asio library is based on
- the Proactor pattern. This design note outlines the advantages and
- disadvantages of this approach.
- ]
- ]
- [
- [
- [link boost_asio.design.allocation Custom memory allocation]
- ]
- [
- Describes the custom memory allocation support in Boost.Asio.
- ]
- ]
- [
- [
- [link boost_asio.design.buffers Buffers]
- ]
- [
- Examines the buffer abstraction used by asio in order to support
- scatter-gather operations.
- ]
- ]
- [
- [
- [link boost_asio.design.eof Why EOF is an error]
- ]
- [
- Discusses why the end-of-file condition should be an error code.
- ]
- ]
- [
- [
- [link boost_asio.design.line_based Line-based protocols]
- ]
- [
- Outlines Boost.Asio's support for line-based protocols.
- ]
- ]
- [
- [
- [link boost_asio.design.threads Threads]
- ]
- [
- An implementation of Boost.Asio for a particular platform may make use of
- one or more additional threads to emulate asynchronicity. This design
- note discusses design rules applied to the use of threads in this way.
- ]
- ]
- [
- [
- [link boost_asio.design.strands Strands]
- ]
- [
- Describes the "strand" abstraction provided by Boost.Asio to ease
- concurrent programming and provide scalability across multiple
- processors.
- ]
- ]
- [
- [
- [link boost_asio.design.implementation Platform-specific implementation]
- ]
- [
- This design note lists platform-specific implementation details, such as
- the default demultiplexing mechanism, the number of threads created
- internally, and when threads are created.
- ]
- ]
-]
-
-[include design/rationale.qbk]
-[include design/async.qbk]
-[include design/allocation.qbk]
-[include design/buffers.qbk]
-[include design/eof.qbk]
-[include design/line_based.qbk]
-[include design/threads.qbk]
-[include design/strands.qbk]
-[include design/implementation.qbk]
-
-[endsect]

Modified: branches/CMake/release/libs/asio/doc/examples.qbk
==============================================================================
--- branches/CMake/release/libs/asio/doc/examples.qbk (original)
+++ branches/CMake/release/libs/asio/doc/examples.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -219,4 +219,31 @@
 * [@boost_asio/example/timers/time_t_timer.cpp]
 
 
+[heading Porthopper]
+
+Example illustrating mixed synchronous and asynchronous operations, and how to
+use Boost.Lambda with Boost.Asio.
+
+* [@boost_asio/example/porthopper/protocol.hpp]
+* [@boost_asio/example/porthopper/client.cpp]
+* [@boost_asio/example/porthopper/server.cpp]
+
+
+[heading Nonblocking]
+
+Example demonstrating reactor-style operations for integrating a third-party
+library that wants to perform the I/O operations itself.
+
+* [@boost_asio/example/nonblocking/third_party_lib.cpp]
+
+
+[heading UNIX Domain Sockets]
+
+Examples showing how to use UNIX domain (local) sockets.
+
+* [@boost_asio/example/local/connect_pair.cpp]
+* [@boost_asio/example/local/stream_server.cpp]
+* [@boost_asio/example/local/stream_client.cpp]
+
+
 [endsect]

Modified: branches/CMake/release/libs/asio/doc/reference.qbk
==============================================================================
--- branches/CMake/release/libs/asio/doc/reference.qbk (original)
+++ branches/CMake/release/libs/asio/doc/reference.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,6 +11,8 @@
 
 [include requirements/asynchronous_operations.qbk]
 [include requirements/AcceptHandler.qbk]
+[include requirements/AsyncRandomAccessReadDevice.qbk]
+[include requirements/AsyncRandomAccessWriteDevice.qbk]
 [include requirements/AsyncReadStream.qbk]
 [include requirements/AsyncWriteStream.qbk]
 [include requirements/CompletionHandler.qbk]
@@ -21,6 +23,7 @@
 [include requirements/DatagramSocketService.qbk]
 [include requirements/DescriptorService.qbk]
 [include requirements/Endpoint.qbk]
+[include requirements/GettableSerialPortOption.qbk]
 [include requirements/GettableSocketOption.qbk]
 [include requirements/Handler.qbk]
 [include requirements/HandleService.qbk]
@@ -29,16 +32,22 @@
 [include requirements/IoObjectService.qbk]
 [include requirements/MutableBufferSequence.qbk]
 [include requirements/Protocol.qbk]
+[include requirements/RandomAccessHandleService.qbk]
+[include requirements/RawSocketService.qbk]
 [include requirements/ReadHandler.qbk]
 [include requirements/ResolveHandler.qbk]
 [include requirements/ResolverService.qbk]
+[include requirements/SerialPortService.qbk]
 [include requirements/Service.qbk]
+[include requirements/SettableSerialPortOption.qbk]
 [include requirements/SettableSocketOption.qbk]
 [include requirements/SocketAcceptorService.qbk]
 [include requirements/SocketService.qbk]
 [include requirements/StreamDescriptorService.qbk]
 [include requirements/StreamHandleService.qbk]
 [include requirements/StreamSocketService.qbk]
+[include requirements/SyncRandomAccessReadDevice.qbk]
+[include requirements/SyncRandomAccessWriteDevice.qbk]
 [include requirements/SyncReadStream.qbk]
 [include requirements/SyncWriteStream.qbk]
 [include requirements/TimeTraits.qbk]

Modified: branches/CMake/release/libs/asio/doc/reference.xsl
==============================================================================
--- branches/CMake/release/libs/asio/doc/reference.xsl (original)
+++ branches/CMake/release/libs/asio/doc/reference.xsl 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -37,6 +37,8 @@
 
 [include requirements/asynchronous_operations.qbk]
 [include requirements/AcceptHandler.qbk]
+[include requirements/AsyncRandomAccessReadDevice.qbk]
+[include requirements/AsyncRandomAccessWriteDevice.qbk]
 [include requirements/AsyncReadStream.qbk]
 [include requirements/AsyncWriteStream.qbk]
 [include requirements/CompletionHandler.qbk]
@@ -46,6 +48,7 @@
 [include requirements/ConvertibleToMutableBuffer.qbk]
 [include requirements/DatagramSocketService.qbk]
 [include requirements/Endpoint.qbk]
+[include requirements/GettableSerialPortOption.qbk]
 [include requirements/GettableSocketOption.qbk]
 [include requirements/Handler.qbk]
 [include requirements/InternetProtocol.qbk]
@@ -53,14 +56,20 @@
 [include requirements/IoObjectService.qbk]
 [include requirements/MutableBufferSequence.qbk]
 [include requirements/Protocol.qbk]
+[include requirements/RandomAccessHandleService.qbk]
+[include requirements/RawSocketService.qbk]
 [include requirements/ReadHandler.qbk]
 [include requirements/ResolveHandler.qbk]
 [include requirements/ResolverService.qbk]
+[include requirements/SerialPortService.qbk]
 [include requirements/Service.qbk]
+[include requirements/SettableSerialPortOption.qbk]
 [include requirements/SettableSocketOption.qbk]
 [include requirements/SocketAcceptorService.qbk]
 [include requirements/SocketService.qbk]
 [include requirements/StreamSocketService.qbk]
+[include requirements/SyncRandomAccessReadDevice.qbk]
+[include requirements/SyncRandomAccessWriteDevice.qbk]
 [include requirements/SyncReadStream.qbk]
 [include requirements/SyncWriteStream.qbk]
 [include requirements/TimeTraits.qbk]

Modified: branches/CMake/release/libs/asio/doc/using.qbk
==============================================================================
--- branches/CMake/release/libs/asio/doc/using.qbk (original)
+++ branches/CMake/release/libs/asio/doc/using.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -257,4 +257,11 @@
   ]
 ]
 
+[heading Mailing List]
+
+A mailing list specifically for Boost.Asio may be found on
+[@http://sourceforge.net/mail/?group_id=122478 SourceForge.net]. Newsgroup
+access is provided via [@http://dir.gmane.org/gmane.comp.lib.boost.asio.user
+Gmane].
+
 [endsect]

Modified: branches/CMake/release/libs/assign/doc/index.html
==============================================================================
--- branches/CMake/release/libs/assign/doc/index.html (original)
+++ branches/CMake/release/libs/assign/doc/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -37,7 +37,7 @@
             <li>Function list_of()
             <li>Function map_list_of()
             <li>Function tuple_list_of()
- <li>Functions repeat(), repeat_fun() and range()
+ <li>Functions repeat(), repeat_fun() and range()
             <li>Functions ref_list_of() and cref_list_of()
             <li>A "complicated" example
             <li>Functions <a href="#ptr_push_back"><code>ptr_push_back(), ptr_push_front()</code>,
@@ -51,7 +51,7 @@
         <li>Standard containers </li>
         <li>Functions list_of() and map_list_of()</li>
         <li>Functions <a href="#repeat_ref"><code>repeat()</code>,
- <code>repeat_fun()</code> and <code>range()</code> </a> </li>
+ <code>repeat_fun()</code> and <code>range()</code> </a> </li>
         <li>Class list_inserter</li>
         <li>Function make_list_inserter()</li>
         <li> Customizing argument list sizes</li>
@@ -285,7 +285,15 @@
  Please notice that <code>list_of()</code> can even convert to a
  <code>boost::<a
 href="../../array/index.html">array</a>&lt;T,sz></code> and see also the list
-of supported libraries .
+of supported libraries . </p>
+ <p>
+ Note that the type returned by
+ <code>list_of()</code> (and its variants) has overloaded comparison operators. This allows you to
+ write test code such as
+ <code>
+ BOOST_CHECK_EQUAL( my_container, list_of(2)(3)(4)(5) );.
+ </code>
+ </p>
  
  <h3>Function <code>map_list_of()</code> <a name="map_list_of"></h3>
  This function is defined for pure convenience when working with
@@ -720,8 +728,8 @@
         <li>Standard containers </li>
         <li>Functions list_of() and map_list_of()</li>
         <li>Functions <a href="#repeat_ref"><code>repeat()</code>,<code>repeat_fun()</code> and
- <code>range()</code>
- </a></li>
+ <code>range()</code>
+ </a></li>
         <li>Class list_inserter</li>
         <li>Function make_list_inserter()</li>
         <li>Customizing argument list sizes </li>
@@ -926,9 +934,17 @@
         //
         </span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>template </span><span class=special>&lt;</span><span class=keyword>class</span><span class=special>,</span><span class=identifier>std</span><span class=special>::</span><span class=identifier>size_t</span><span class=special>&gt; </span><span class=keyword>class </span><span class=identifier>Array</span><span class=special>, </span><span class=keyword>class </span><span class=identifier>U</span><span class=special>, </span><span class=identifier>std</span><span class=special>::</span><span class=identifier>size_t </span><span class=identifier>sz </span><span class=special>&gt;
         </span><span class=keyword>operator </span><span class=identifier>Array</span><span class=special>&lt;</span><span class=identifier>U</span><span class=special>,</span><span class=identifier>sz</span><span class=special>&gt;() </span><span class=keyword>const</span><span class=special>;
- </span><span class=special>};
+ </span><span class=special>};</span>
     
- </span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
+ <span class=comment>//
+ // Comparison operators. 'op' can be &lt;,&gt;,&lt;=,&gt;=,==,!=
+ //</span>
+ <span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>Range</span> <span class=special>&gt;</span>
+ <span class=keyword>bool</span> <span class=identifier>op</span><span class=special>(</span> <span class=keyword>const</span> <span class=identifier>Implementation</span><span class=special>-</span><span class=identifier>defined</span><span class=special>&amp;,</span> <span class=keyword>const</span> <span class=identifier>Range</span><span class=special>&amp;</span> <span class=special>);</span>
+ <span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>Range</span> <span class=special>&gt;</span>
+ <span class=keyword>bool</span> <span class=identifier>op</span><span class=special>(</span> <span class=keyword>const</span> <span class=identifier>Range</span><span class=special>&amp;,</span> <span class=keyword>const</span> <span class=identifier>Implementation</span><span class=special>-</span><span class=identifier>defined</span><span class=special>&amp;</span> <span class=special>);</span>
+
+ <span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
     </span><span class=identifier>Implementation</span><span class=special>-</span><span class=identifier>defined</span> </span><span class=identifier>list_of</span><span class=special>(</span><span class=special>);
 
     </span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
@@ -969,7 +985,7 @@
           <li> the argument list of <code>repeat_fun()</code> is <code>(std::size_t,Nullary_function)</code>
       </ul>
       
- </p>
+ </p>
   <p>
   The function <code>range()</code> only exists as a member function. The following two overloads are provided:
   <blockquote>

Modified: branches/CMake/release/libs/config/doc/guidelines.qbk
==============================================================================
--- branches/CMake/release/libs/config/doc/guidelines.qbk (original)
+++ branches/CMake/release/libs/config/doc/guidelines.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -59,10 +59,36 @@
 majority of compilers, such as namespaces, exceptions, RTTI, or templates.
 
 
+[section:warnings Disabling Compiler Warnings]
+
+The header `<boost/config/warning_disable.hpp>` can be used to disable
+certain compiler warings that are hard or impossible to otherwise remove.
+
+Note that:
+
+* This header [*['should never be included by another Boost header]], it should
+only ever be used by a library source file or a test case.
+* The header should be included [*['before you include any other header]].
+* This header only disables warnings that are hard or impossible to otherwise
+ deal with, and which are typically emitted by one compiler only, or
+ in one compilers own standard library headers.
+
+Currently it disables the following warnings:
+
+[table
+[[Compiler][Warning]]
+[[Visual C++ 8 and later][[@http://msdn2.microsoft.com/en-us/library/ttcz0bys(VS.80).aspx C4996]: Error 'function': was declared deprecated]]
+[[Intel C++][Warning 1786: relates to the use of "deprecated" standard
+ library functions rather like C4996 in Visual C++.]]
+]
+
+[endsect]
+
+
 [section Adding New Defect Macros]
 
-When you need to add a new defect macro -either to fix a problem with an
-existing library, or when adding a new library- distil the issue down to
+When you need to add a new defect macro - either to fix a problem with an
+existing library, or when adding a new library - distil the issue down to
 a simple test case; often, at this point other (possibly better) workarounds
 may become apparent. Secondly always post the test case code to the boost
 mailing list and invite comments; remember that C++ is complex and that
@@ -81,7 +107,7 @@
 
 These comments are processed by the autoconf script, so make sure the format
 follows the one given. The file should be named "`boost_no_foo.ipp`", where foo
-is the defect description -try and keep the file name under the Mac 30 character
+is the defect description - try and keep the file name under the Mac 30 character
 filename limit though. You will also need to provide a function prototype
 "`int test()`" that is declared in a namespace with the same name as the macro,
 but in all lower case, and which returns zero on success:
@@ -100,15 +126,15 @@
 Once the test code is in place in libs/config/test, updating the configuration
 test system proceeds as:
 
-* cd into `libs/config/tools` and run `bjam --v2` : this generates the `.cpp`
-file test cases from the `.ipp` file, updates the Jamfile, `config_test.cpp` and
-`config_info.cpp`.
-* cd into `libs/config/test` and run `bjam --v2 `['MACRONAME]` compiler-list` : where
-['MACRONAME] is the name of the new macro, and `compiler-list` is the list of
+* cd into `libs/config/tools` and run `bjam` : this generates the `.cpp`
+file test cases from the `.ipp` file, updates the
+libs/config/test/all/Jamfile.v2, `config_test.cpp` and `config_info.cpp`.
+* cd into `libs/config/test/all` and run `bjam `['MACRONAME` compiler-list`] : where
+['MACRONAME] is the name of the new macro, and ['`compiler-list`] is a space separated list of
 compilers to test with. You should see the tests pass with those compilers
 that don't have the defect, and fail with those that do.
-* cd into `libs/config/test` and `run bjam --v2 config_info config_test compiler-list` :
-`config_info` should build and run cleanly for all the compilers in `compiler-list`
+* cd into `libs/config/test` and run `bjam config_info config_test `['`compiler-list`] :
+`config_info` should build and run cleanly for all the compilers in ['`compiler-list`]
 while `config_test` should fail for those that have the defect, and pass for those
 that do not.
 
@@ -168,7 +194,7 @@
 compiler/standard library/platform is added.
 
 The compiler/platform/standard library selection code is set up so that unknown
-platforms are ignored and assumed to be fully standards compliant -this gives
+platforms are ignored and assumed to be fully standards compliant - this gives
 unknown platforms a "sporting chance" of working "as is" even without running
 the configure script.
 

Modified: branches/CMake/release/libs/config/doc/html/HTML.manifest
==============================================================================
--- branches/CMake/release/libs/config/doc/html/HTML.manifest (original)
+++ branches/CMake/release/libs/config/doc/html/HTML.manifest 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
-index.html
-boost_config/boost_macro_reference.html
-boost_config/guidelines_for_boost_authors.html
-boost_config/rationale.html
-boost_config/acknowledgements.html
+index.html
+boost_config/boost_macro_reference.html
+boost_config/guidelines_for_boost_authors.html
+boost_config/rationale.html
+boost_config/acknowledgements.html

Modified: branches/CMake/release/libs/config/doc/html/boost_config/acknowledgements.html
==============================================================================
--- branches/CMake/release/libs/config/doc/html/boost_config/acknowledgements.html (original)
+++ branches/CMake/release/libs/config/doc/html/boost_config/acknowledgements.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,8 +13,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>

Modified: branches/CMake/release/libs/config/doc/html/boost_config/boost_macro_reference.html
==============================================================================
--- branches/CMake/release/libs/config/doc/html/boost_config/boost_macro_reference.html (original)
+++ branches/CMake/release/libs/config/doc/html/boost_config/boost_macro_reference.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -31,8 +31,10 @@
       that describe defects</a></span></dt>
 <dt><span class="section"><a href="boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_optional_features">Macros
       that describe optional features</a></span></dt>
-<dt><span class="section"><a href="boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_c__0x_features">Macros
- that describe C++0x features</a></span></dt>
+<dt><span class="section"><a href="boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_possible_c__0x_features">Macros
+ that describe possible C++0x features</a></span></dt>
+<dt><span class="section"><a href="boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_c__0x_features_not_supported">Macros
+ that describe C++0x features not supported</a></span></dt>
 <dt><span class="section"><a href="boost_macro_reference.html#boost_config.boost_macro_reference.boost_helper_macros">Boost
       Helper Macros</a></span></dt>
 <dt><span class="section"><a href="boost_macro_reference.html#boost_config.boost_macro_reference.boost_informational_macros">Boost
@@ -119,6 +121,24 @@
 <tr>
 <td>
               <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_ADL_BARRIER</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Compiler
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler locates and searches namespaces that it should <span class="emphasis"><em>*not*</em></span>
+ in fact search when performing argument dependent lookup.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
                 <code class="computeroutput"><span class="identifier">BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP</span></code>
               </p>
               </td>
@@ -258,8 +278,7 @@
                 The compiler fails to compile a nested class that has a dependent
                 base class:
 </p>
-<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">foo</span> <span class="special">:</span> <span class="special">{</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">U</span><span class="special">&gt;</span>
    <span class="keyword">struct</span> <span class="identifier">bar</span> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">U</span> <span class="special">{};</span>
@@ -285,8 +304,7 @@
                 Template value parameters cannot have a dependent type, for example:
                 
 </p>
-<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">::</span><span class="identifier">type</span> <span class="identifier">value</span><span class="special">&gt;</span>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">::</span><span class="identifier">type</span> <span class="identifier">value</span><span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">X</span> <span class="special">{</span> <span class="special">...</span> <span class="special">};</span>
 </pre>
 <p>
@@ -367,8 +385,7 @@
                 The compiler does not perform function template ordering or its function
                 template ordering is incorrect.
 </p>
-<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
-<span class="comment">// #1
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="comment">// #1
 </span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">void</span> <span class="identifier">f</span><span class="special">(</span><span class="identifier">T</span><span class="special">);</span>
 
 <span class="comment">// #2
@@ -655,6 +672,24 @@
 <tr>
 <td>
               <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Compiler
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler does not correctly handle partial specializations which
+ depend upon default arguments in the primary template.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
                 <code class="computeroutput"><span class="identifier">BOOST_NO_POINTER_TO_MEMBER_CONST</span></code>
               </p>
               </td>
@@ -1014,6 +1049,23 @@
 <tr>
 <td>
               <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_TEMPLATED_IOSTREAMS</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Standard library
+ </p>
+ </td>
+<td>
+ <p>
+ The standard library does not provide templated iostream classes.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
                 <code class="computeroutput"><span class="identifier">BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS</span></code>
               </p>
               </td>
@@ -1138,8 +1190,7 @@
                 The compiler does not allow a void function to return the result
                 of calling another void function.
 </p>
-<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
-<span class="keyword">void</span> <span class="identifier">f</span><span class="special">()</span> <span class="special">{}</span>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="keyword">void</span> <span class="identifier">f</span><span class="special">()</span> <span class="special">{}</span>
 <span class="keyword">void</span> <span class="identifier">g</span><span class="special">()</span> <span class="special">{</span> <span class="keyword">return</span> <span class="identifier">f</span><span class="special">();</span> <span class="special">}</span>
 </pre>
 <p>
@@ -2061,17 +2112,59 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_config.boost_macro_reference.macros_that_describe_c__0x_features"></a><a class="link" href="boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_c__0x_features" title="Macros that describe C++0x features">Macros
- that describe C++0x features</a>
+<a name="boost_config.boost_macro_reference.macros_that_describe_possible_c__0x_features"></a><a class="link" href="boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_possible_c__0x_features" title="Macros that describe possible C++0x features">Macros
+ that describe possible C++0x features</a>
 </h3></div></div></div>
 <p>
         The following macros describe features that are likely to be included in
- the upcoming ISO C++ standard, C++0x.
+ the upcoming ISO C++ standard, C++0x, but have not yet been approved for
+ inclusion in the language.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Macro
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_HAS_CONCEPTS</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler supports concepts.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="boost_config.boost_macro_reference.macros_that_describe_c__0x_features_not_supported"></a><a class="link" href="boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_c__0x_features_not_supported" title="Macros that describe C++0x features not supported">Macros
+ that describe C++0x features not supported</a>
+</h3></div></div></div>
+<p>
+ The following macros describe features in the upcoming ISO C++ standard,
+ C++0x, that are not yet supported by a particular compiler.
       </p>
 <div class="informaltable"><table class="table">
 <colgroup>
 <col>
 <col>
+<col>
 </colgroup>
 <thead><tr>
 <th>
@@ -2084,78 +2177,190 @@
                 Description
               </p>
               </th>
+<td class="auto-generated"> </td>
 </tr></thead>
 <tbody>
 <tr>
 <td>
               <p>
- <code class="computeroutput"><span class="identifier">BOOST_HAS_CONCEPTS</span></code>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_CHAR16_T</span></code>
               </p>
               </td>
 <td>
               <p>
- The compiler supports concepts. Note: concepts have been proposed
- for C++0x, but have not yet been approved for inclusion in the language.
+ The compiler does not support type <code class="computeroutput"><span class="identifier">char16_t</span></code>.
               </p>
               </td>
+<td class="auto-generated"> </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="computeroutput"><span class="identifier">BOOST_HAS_DECLTYPE</span></code>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_CHAR32_T</span></code>
               </p>
               </td>
 <td>
               <p>
- The compiler supports decltype.
+ The compiler does not support type <code class="computeroutput"><span class="identifier">char32_t</span></code>.
               </p>
               </td>
+<td class="auto-generated"> </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="computeroutput"><span class="identifier">BOOST_HAS_LONG_LONG</span></code>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_CONSTEXPR</span></code>
               </p>
               </td>
 <td>
               <p>
- The compiler supports the long long data type.
+ The compiler does not support <code class="computeroutput"><span class="identifier">constexpr</span></code>.
               </p>
               </td>
+<td class="auto-generated"> </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="computeroutput"><span class="identifier">BOOST_HAS_RVALUE_REFS</span></code>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_DECLTYPE</span></code>
               </p>
               </td>
 <td>
               <p>
- The compiler supports rvalue references.
+ The compiler does not support <code class="computeroutput"><span class="identifier">decltype</span></code>.
               </p>
               </td>
+<td class="auto-generated"> </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="computeroutput"><span class="identifier">BOOST_HAS_STATIC_ASSERT</span></code>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_DEFAULTED_FUNCTIONS</span></code>
               </p>
               </td>
 <td>
               <p>
- The compiler supports static assertions.
+ The compiler does not support defaulted (<code class="computeroutput"><span class="special">=</span>
+ <span class="keyword">default</span></code>) functions. [[<code class="computeroutput"><span class="identifier">BOOST_NO_DELETED_FUNCTIONS</span></code>
               </p>
               </td>
+<td>
+ <p>
+ The compiler does not support deleted (<code class="computeroutput"><span class="special">=</span>
+ <span class="keyword">delete</span></code>) functions.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_EXPLICIT_CONVERSION_OPERATIONS</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler does not support explicit conversion operators (<code class="computeroutput"><span class="keyword">explicit</span> <span class="keyword">operator</span>
+ <span class="identifier">T</span><span class="special">()</span></code>).
+ </p>
+ </td>
+<td class="auto-generated"> </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_EXTERN_TEMPLATE</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler does not support explicit instantiation declarations
+ for templates (<code class="computeroutput"><span class="keyword">explicit</span> <span class="keyword">template</span></code>).
+ </p>
+ </td>
+<td class="auto-generated"> </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_LONG_LONG</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler does not support <code class="computeroutput"><span class="keyword">long</span>
+ <span class="keyword">long</span></code>.
+ </p>
+ </td>
+<td class="auto-generated"> </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_RAW_LITERALS</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler does not support raw string literals.
+ </p>
+ </td>
+<td class="auto-generated"> </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_RVALUE_REFERENCES</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler does not support r-value references.
+ </p>
+ </td>
+<td class="auto-generated"> </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_SCOPED_ENUMS</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler does not support scoped enumerations (<code class="computeroutput"><span class="keyword">enum</span> <span class="keyword">class</span></code>).
+ </p>
+ </td>
+<td class="auto-generated"> </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_STATIC_ASSERT</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler does not support <code class="computeroutput"><span class="identifier">static_assert</span></code>.
+ </p>
+ </td>
+<td class="auto-generated"> </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="computeroutput"><span class="identifier">BOOST_HAS_VARIADIC_TMPL</span></code>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_UNICODE_LITERALS</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The compiler does not support Unicode (<code class="computeroutput"><span class="identifier">u8</span></code>,
+ <code class="computeroutput"><span class="identifier">u</span></code>, <code class="computeroutput"><span class="identifier">U</span>#<span class="special">)</span> <span class="identifier">literals</span><span class="special">.</span>
+ <span class="special">]]</span> <span class="special">[[</span></code>BOOST_NO_VARIADIC_TEMPLATES`
               </p>
               </td>
 <td>
               <p>
- The compiler supports variadic templates.
+ The compiler does not support variadic templates.
               </p>
               </td>
 </tr>
@@ -2280,16 +2485,14 @@
                 us a convenient way to declare such constants. For example instead
                 of:
 </p>
-<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
-<span class="keyword">struct</span> <span class="identifier">foo</span><span class="special">{</span>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="keyword">struct</span> <span class="identifier">foo</span><span class="special">{</span>
    <span class="keyword">static</span> <span class="keyword">const</span> <span class="keyword">int</span> <span class="identifier">value</span> <span class="special">=</span> <span class="number">2</span><span class="special">;</span>
 <span class="special">};</span>
 </pre>
 <p>
                 use:
 </p>
-<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
-<span class="keyword">struct</span> <span class="identifier">foo</span><span class="special">{</span>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="keyword">struct</span> <span class="identifier">foo</span><span class="special">{</span>
    <span class="identifier">BOOST_STATIC_CONSTANT</span><span class="special">(</span><span class="keyword">int</span><span class="special">,</span> <span class="identifier">value</span> <span class="special">=</span> <span class="number">2</span><span class="special">);</span>
 <span class="special">};</span>
 </pre>
@@ -2322,8 +2525,7 @@
                 instantiations if some of the template parameters don't appear in
                 the function parameter list. For instance:
 </p>
-<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">ostream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">typeinfo</span><span class="special">&gt;</span>
 
@@ -2347,8 +2549,7 @@
                 problem without effects on the calling syntax. For instance, in the
                 case above write:
 </p>
-<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">int</span> <span class="identifier">n</span><span class="special">&gt;</span>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">int</span> <span class="identifier">n</span><span class="special">&gt;</span>
 <span class="keyword">void</span> <span class="identifier">f</span><span class="special">(</span><span class="identifier">BOOST_EXPLICIT_TEMPLATE_NON_TYPE</span><span class="special">(</span><span class="keyword">int</span><span class="special">,</span> <span class="identifier">n</span><span class="special">))</span> <span class="special">{</span> <span class="special">...</span> <span class="special">}</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
@@ -2742,8 +2943,7 @@
 <p>
           <span class="bold"><strong>my_library.hpp</strong></span>
         </p>
-<pre class="programlisting">
-<span class="preprocessor">#ifndef</span> <span class="identifier">MY_INCLUDE_GUARD</span>
+<pre class="programlisting"><span class="preprocessor">#ifndef</span> <span class="identifier">MY_INCLUDE_GUARD</span>
 <span class="preprocessor">#define</span> <span class="identifier">MY_INCLUDE_GUARD</span>
 
 <span class="comment">// all includes go here:
@@ -2765,8 +2965,7 @@
 <p>
           <span class="bold"><strong>my_library.cpp</strong></span>
         </p>
-<pre class="programlisting">
-<span class="special">...</span>
+<pre class="programlisting"><span class="special">...</span>
 <span class="comment">// nothing special need be done in the implementation file
 </span><span class="special">...</span>
 </pre>
@@ -2831,8 +3030,7 @@
 <p>
           <span class="bold"><strong>my_library.hpp</strong></span>
         </p>
-<pre class="programlisting">
-<span class="special">...</span>
+<pre class="programlisting"><span class="special">...</span>
 <span class="comment">//
 </span><span class="comment">// Don't include auto-linking code if the user has disabled it by
 </span><span class="comment">// defining BOOST_ALL_NO_LIB, or BOOST_MY_LIBRARY_NO_LIB, or if this
@@ -2850,8 +3048,7 @@
 <p>
           <span class="bold"><strong>my_library.cpp</strong></span>
         </p>
-<pre class="programlisting">
-<span class="comment">// define BOOST_MY_LIBRARY_SOURCE so that the header knows that the
+<pre class="programlisting"><span class="comment">// define BOOST_MY_LIBRARY_SOURCE so that the header knows that the
 </span><span class="comment">// library is being built (possibly exporting rather than importing code)
 </span><span class="comment">//
 </span><span class="preprocessor">#define</span> <span class="identifier">BOOST_MY_LIBRARY_SOURCE</span>

Modified: branches/CMake/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html
==============================================================================
--- branches/CMake/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html (original)
+++ branches/CMake/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,6 +28,8 @@
     Boost Authors</a>
 </h2></div></div></div>
 <div class="toc"><dl>
+<dt><span class="section"><a href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.warnings">
+ Disabling Compiler Warnings</a></span></dt>
 <dt><span class="section"><a href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.adding_new_defect_macros">Adding
       New Defect Macros</a></span></dt>
 <dt><span class="section"><a href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.adding_new_feature_test_macros">Adding
@@ -103,12 +105,91 @@
 </ul></div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
+<a name="boost_config.guidelines_for_boost_authors.warnings"></a><a class="link" href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.warnings" title="Disabling Compiler Warnings">
+ Disabling Compiler Warnings</a>
+</h3></div></div></div>
+<p>
+ The header <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">warning_disable</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
+ can be used to disable certain compiler warings that are hard or impossible
+ to otherwise remove.
+ </p>
+<p>
+ Note that:
+ </p>
+<div class="itemizedlist"><ul type="disc">
+<li>
+ This header <span class="bold"><strong><span class="emphasis"><em>should never be included by
+ another Boost header</em></span></strong></span>, it should only ever be used
+ by a library source file or a test case.
+ </li>
+<li>
+ The header should be included <span class="bold"><strong><span class="emphasis"><em>before you
+ include any other header</em></span></strong></span>.
+ </li>
+<li>
+ This header only disables warnings that are hard or impossible to otherwise
+ deal with, and which are typically emitted by one compiler only, or in
+ one compilers own standard library headers.
+ </li>
+</ul></div>
+<p>
+ Currently it disables the following warnings:
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Compiler
+ </p>
+ </th>
+<th>
+ <p>
+ Warning
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ Visual C++ 8 and later
+ </p>
+ </td>
+<td>
+ <p>
+ C4996:
+ Error 'function': was declared deprecated
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Intel C++
+ </p>
+ </td>
+<td>
+ <p>
+ Warning 1786: relates to the use of "deprecated" standard
+ library functions rather like C4996 in Visual C++.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
 <a name="boost_config.guidelines_for_boost_authors.adding_new_defect_macros"></a><a class="link" href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.adding_new_defect_macros" title="Adding New Defect Macros">Adding
       New Defect Macros</a>
 </h3></div></div></div>
 <p>
- When you need to add a new defect macro -either to fix a problem with an
- existing library, or when adding a new library- distil the issue down to
+ When you need to add a new defect macro - either to fix a problem with an
+ existing library, or when adding a new library - distil the issue down to
         a simple test case; often, at this point other (possibly better) workarounds
         may become apparent. Secondly always post the test case code to the boost
         mailing list and invite comments; remember that C++ is complex and that sometimes
@@ -125,22 +206,20 @@
         the test case in a <code class="computeroutput"><span class="special">.</span><span class="identifier">ipp</span></code>
         file with the following comments near the top:
       </p>
-<pre class="programlisting">
-<span class="comment">// MACRO: BOOST_NO_FOO
+<pre class="programlisting"><span class="comment">// MACRO: BOOST_NO_FOO
 </span><span class="comment">// TITLE: foo
 </span><span class="comment">// DESCRIPTION: If the compiler fails to support foo
 </span></pre>
 <p>
         These comments are processed by the autoconf script, so make sure the format
         follows the one given. The file should be named "<code class="computeroutput"><span class="identifier">boost_no_foo</span><span class="special">.</span><span class="identifier">ipp</span></code>",
- where foo is the defect description -try and keep the file name under the
+ where foo is the defect description - try and keep the file name under the
         Mac 30 character filename limit though. You will also need to provide a function
         prototype "<code class="computeroutput"><span class="keyword">int</span> <span class="identifier">test</span><span class="special">()</span></code>" that is declared in a namespace with
         the same name as the macro, but in all lower case, and which returns zero
         on success:
       </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost_no_foo</span> <span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost_no_foo</span> <span class="special">{</span>
 
 <span class="keyword">int</span> <span class="identifier">test</span><span class="special">()</span>
 <span class="special">{</span>
@@ -157,26 +236,25 @@
       </p>
 <div class="itemizedlist"><ul type="disc">
 <li>
- cd into <code class="computeroutput"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">tools</span></code> and run <code class="computeroutput"><span class="identifier">bjam</span>
- <span class="special">--</span><span class="identifier">v2</span></code>
+ cd into <code class="computeroutput"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">tools</span></code> and run <code class="computeroutput"><span class="identifier">bjam</span></code>
           : this generates the <code class="computeroutput"><span class="special">.</span><span class="identifier">cpp</span></code>
- file test cases from the <code class="computeroutput"><span class="special">.</span><span class="identifier">ipp</span></code> file, updates the Jamfile, <code class="computeroutput"><span class="identifier">config_test</span><span class="special">.</span><span class="identifier">cpp</span></code> and <code class="computeroutput"><span class="identifier">config_info</span><span class="special">.</span><span class="identifier">cpp</span></code>.
+ file test cases from the <code class="computeroutput"><span class="special">.</span><span class="identifier">ipp</span></code> file, updates the libs/config/test/all/Jamfile.v2,
+ <code class="computeroutput"><span class="identifier">config_test</span><span class="special">.</span><span class="identifier">cpp</span></code> and <code class="computeroutput"><span class="identifier">config_info</span><span class="special">.</span><span class="identifier">cpp</span></code>.
         </li>
 <li>
- cd into <code class="computeroutput"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">test</span></code> and run <code class="computeroutput"><span class="identifier">bjam</span>
- <span class="special">--</span><span class="identifier">v2</span>
- </code><span class="emphasis"><em>MACRONAME</em></span><code class="computeroutput"> <span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code>
+ cd into <code class="computeroutput"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">test</span><span class="special">/</span><span class="identifier">all</span></code> and run <code class="computeroutput"><span class="identifier">bjam</span>
+ </code><span class="emphasis"><em>MACRONAME<code class="computeroutput"> <span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code></em></span>
           : where <span class="emphasis"><em>MACRONAME</em></span> is the name of the new macro, and
- <code class="computeroutput"><span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code> is the list of compilers to test
- with. You should see the tests pass with those compilers that don't have
- the defect, and fail with those that do.
+ <span class="emphasis"><em><code class="computeroutput"><span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code></em></span> is a space separated
+ list of compilers to test with. You should see the tests pass with those
+ compilers that don't have the defect, and fail with those that do.
         </li>
 <li>
- cd into <code class="computeroutput"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">test</span></code> and <code class="computeroutput"><span class="identifier">run</span>
- <span class="identifier">bjam</span> <span class="special">--</span><span class="identifier">v2</span> <span class="identifier">config_info</span>
- <span class="identifier">config_test</span> <span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code>
+ cd into <code class="computeroutput"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">test</span></code> and run <code class="computeroutput"><span class="identifier">bjam</span>
+ <span class="identifier">config_info</span> <span class="identifier">config_test</span>
+ </code><span class="emphasis"><em><code class="computeroutput"><span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code></em></span>
           : <code class="computeroutput"><span class="identifier">config_info</span></code> should build
- and run cleanly for all the compilers in <code class="computeroutput"><span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code>
+ and run cleanly for all the compilers in <span class="emphasis"><em><code class="computeroutput"><span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code></em></span>
           while <code class="computeroutput"><span class="identifier">config_test</span></code> should
           fail for those that have the defect, and pass for those that do not.
         </li>
@@ -265,9 +343,9 @@
       </p>
 <p>
         The compiler/platform/standard library selection code is set up so that unknown
- platforms are ignored and assumed to be fully standards compliant -this gives
- unknown platforms a "sporting chance" of working "as is"
- even without running the configure script.
+ platforms are ignored and assumed to be fully standards compliant - this
+ gives unknown platforms a "sporting chance" of working "as
+ is" even without running the configure script.
       </p>
 <p>
         When adding or modifying the individual mini-configs, assume that future,

Modified: branches/CMake/release/libs/config/doc/html/boost_config/rationale.html
==============================================================================
--- branches/CMake/release/libs/config/doc/html/boost_config/rationale.html (original)
+++ branches/CMake/release/libs/config/doc/html/boost_config/rationale.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>

Modified: branches/CMake/release/libs/config/doc/html/index.html
==============================================================================
--- branches/CMake/release/libs/config/doc/html/index.html (original)
+++ branches/CMake/release/libs/config/doc/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,8 +12,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
 </h3></div></div></div>
 <div><p class="copyright">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock</p></div>
 <div><div class="legalnotice">
-<a name="id2625913"></a><p>
+<a name="id464982"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -61,8 +61,10 @@
       that describe defects</a></span></dt>
 <dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_optional_features">Macros
       that describe optional features</a></span></dt>
-<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_c__0x_features">Macros
- that describe C++0x features</a></span></dt>
+<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_possible_c__0x_features">Macros
+ that describe possible C++0x features</a></span></dt>
+<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_c__0x_features_not_supported">Macros
+ that describe C++0x features not supported</a></span></dt>
 <dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.boost_helper_macros">Boost
       Helper Macros</a></span></dt>
 <dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.boost_informational_macros">Boost
@@ -73,6 +75,8 @@
 <dt><span class="section"><a href="boost_config/guidelines_for_boost_authors.html">Guidelines for
     Boost Authors</a></span></dt>
 <dd><dl>
+<dt><span class="section"><a href="boost_config/guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.warnings">
+ Disabling Compiler Warnings</a></span></dt>
 <dt><span class="section"><a href="boost_config/guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.adding_new_defect_macros">Adding
       New Defect Macros</a></span></dt>
 <dt><span class="section"><a href="boost_config/guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.adding_new_feature_test_macros">Adding
@@ -139,8 +143,7 @@
 <p>
         Boost library implementations access configuration macros via
       </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <boost/config.hpp>
+<pre class="programlisting"><span class="preprocessor">#include</span> <boost/config.hpp>
 </pre>
 <p>
         While Boost library users are not required to include that file directly,
@@ -275,8 +278,7 @@
         For example to run the configure script with HP aCC, you might use something
         like:
       </p>
-<pre class="programlisting">
-<span class="keyword">export</span> <span class="identifier">CXX</span><span class="special">=</span><span class="string">"aCC"</span>
+<pre class="programlisting"><span class="keyword">export</span> <span class="identifier">CXX</span><span class="special">=</span><span class="string">"aCC"</span>
 <span class="keyword">export</span> <span class="identifier">CXXFLAGS</span><span class="special">=</span><span class="string">"-Aa -DAportable -D__HPACC_THREAD_SAFE_RB_TREE \
    -DRWSTD_MULTI_THREAD -DRW_MULTI_THREAD -D_REENTRANT -D_THREAD_SAFE"</span>
 <span class="keyword">export</span> <span class="identifier">LDFLAGS</span><span class="special">=</span><span class="string">"-DAportable"</span>
@@ -743,8 +745,7 @@
           there. Finally, open up <boost/config/user.hpp>
           and edit the following defines:
         </p>
-<pre class="programlisting">
-<span class="preprocessor">#define</span> <span class="identifier">BOOST_COMPILER_CONFIG</span> <span class="string">"boost/config/mysetup/visualc.hpp"</span>
+<pre class="programlisting"><span class="preprocessor">#define</span> <span class="identifier">BOOST_COMPILER_CONFIG</span> <span class="string">"boost/config/mysetup/visualc.hpp"</span>
 <span class="preprocessor">#define</span> <span class="identifier">BOOST_STDLIB_CONFIG</span> <span class="string">"boost/config/mysetup/stlport.hpp"</span>
 <span class="preprocessor">#define</span> <span class="identifier">BOOST_USER_CONFIG</span> <span class="string">"boost/config/mysetup/win32.hpp"</span>
 </pre>
@@ -961,7 +962,7 @@
   </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: March 15, 2008 at 13:57:39 GMT</small></p></td>
+<td align="left"><p><small>Last revised: June 20, 2008 at 00:19:08 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: branches/CMake/release/libs/config/doc/macro_reference.qbk
==============================================================================
--- branches/CMake/release/libs/config/doc/macro_reference.qbk (original)
+++ branches/CMake/release/libs/config/doc/macro_reference.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -38,6 +38,10 @@
 in namespaces nested inside boost (but not elsewhere). Probably
 Borland specific.
 ]]
+[[`BOOST_NO_ADL_BARRIER`][Compiler][
+The compiler locates and searches namespaces that it should /*not*/ in fact
+search when performing argument dependent lookup.
+]]
 [[`BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP`][Compiler][
 Compiler does not implement argument-dependent lookup (also named
 Koenig lookup); see std::3.4.2 \[basic.koenig.lookup\]
@@ -172,6 +176,10 @@
 namespace scope, then using'ed to boost. Probably GCC specific. See
 [@../../../../boost/operators.hpp `<boost/operators.hpp>`] for example.
 ]]
+[[`BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS`][Compiler][
+The compiler does not correctly handle partial specializations
+which depend upon default arguments in the primary template.
+]]
 [[`BOOST_NO_POINTER_TO_MEMBER_CONST`][Compiler][
 The compiler does not correctly handle pointers to const member functions,
 preventing use of these in overloaded function templates. See
@@ -246,6 +254,9 @@
 Class template partial specialization (14.5.4 \[temp.class.spec\]) not
 supported.
 ]]
+[[`BOOST_NO_TEMPLATED_IOSTREAMS`][Standard library][
+The standard library does not provide templated iostream classes.
+]]
 [[`BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS`][Standard library][
 The standard library does not provide templated iterator constructors
 for its containers.
@@ -476,36 +487,75 @@
 
 [endsect]
 
-[section Macros that describe C++0x features]
+[section Macros that describe possible C++0x features]
 
 The following macros describe features that are likely to be included in the
-upcoming ISO C++ standard, C++0x.
+upcoming ISO C++ standard, C++0x, but have not yet been approved for inclusion
+in the language.
 
 
 [table
 [[Macro ][Description ]]
 
 [[`BOOST_HAS_CONCEPTS`][
-The compiler supports concepts. Note: concepts have been proposed for C++0x,
-but have not yet been approved for inclusion in the language.
-]]
-[[`BOOST_HAS_DECLTYPE`][
-The compiler supports decltype.
-]]
-[[`BOOST_HAS_LONG_LONG`][
-The compiler supports the long long data type.
-]]
-[[`BOOST_HAS_RVALUE_REFS`][
-The compiler supports rvalue references.
-]]
-[[`BOOST_HAS_STATIC_ASSERT`][
-The compiler supports static assertions.
-]]
-[[`BOOST_HAS_VARIADIC_TMPL`][
-The compiler supports variadic templates.
+The compiler supports concepts.
 ]]
 ]
 
+[endsect]
+
+[section Macros that describe C++0x features not supported]
+
+The following macros describe features in the upcoming ISO C++ standard, C++0x,
+that are not yet supported by a particular compiler.
+
+[table
+[[Macro ][Description ]]
+
+[[`BOOST_NO_CHAR16_T`][The compiler does not support
+type `char16_t`.
+]]
+[[`BOOST_NO_CHAR32_T`][The compiler does not support
+type `char32_t`.
+]]
+[[`BOOST_NO_CONSTEXPR`][The compiler does not support
+`constexpr`.
+]]
+[[`BOOST_NO_DECLTYPE`][The compiler does not support
+`decltype`.
+]]
+[[`BOOST_NO_DEFAULTED_FUNCTIONS`][The compiler does not support
+defaulted (`= default`) functions.
+[[`BOOST_NO_DELETED_FUNCTIONS`][The compiler does not support
+deleted (`= delete`) functions.
+]]
+[[`BOOST_NO_EXPLICIT_CONVERSION_OPERATIONS`][The compiler does not support
+explicit conversion operators (`explicit operator T()`).
+]]
+[[`BOOST_NO_EXTERN_TEMPLATE`][The compiler does not support
+explicit instantiation declarations for templates (`explicit template`).
+]]
+[[`BOOST_NO_LONG_LONG`][The compiler does not support `long long`.
+]]
+[[`BOOST_NO_RAW_LITERALS`][The compiler does not support
+raw string literals.
+]]
+[[`BOOST_NO_RVALUE_REFERENCES`][The compiler does not support
+r-value references.
+]]
+[[`BOOST_NO_SCOPED_ENUMS`][The compiler does not support
+scoped enumerations (`enum class`).
+]]
+[[`BOOST_NO_STATIC_ASSERT`][The compiler does not support
+`static_assert`.
+]]
+[[`BOOST_NO_UNICODE_LITERALS`][The compiler does not support
+Unicode (`u8`, `u`, `U') literals.
+]]
+[[`BOOST_NO_VARIADIC_TEMPLATES`][The compiler does not support
+variadic templates.
+]]
+]
 
 [endsect]
 

Modified: branches/CMake/release/libs/config/test/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/config/test/Jamfile.v2 (original)
+++ branches/CMake/release/libs/config/test/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,9 +1,5 @@
 #
-# Regression test Jamfile for boost configuration setup.
-# *** DO NOT EDIT THIS FILE BY HAND ***
-# This file was automatically generated on Fri Oct 19 13:34:11 2007
-# by libs/config/tools/generate.cpp
-# Copyright John Maddock.
+# Copyright John Maddock 2008.
 # Use, modification and distribution are subject to the
 # Boost Software License, Version 1.0. (See accompanying file
 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -11,349 +7,36 @@
 # If you need to alter build preferences then set them in
 # the template defined in options_v2.jam.
 #
-path-constant DOT : . ;
-include $(DOT)/options_v2.jam ;
-
-run config_info.cpp ;
-run math_info.cpp : : : <toolset>borland:<runtime-link>static <toolset>borland:<link>static ;
-run config_test.cpp ;
-run limits_test.cpp ../../test/build//boost_test_exec_monitor ;
-run abi/abi_test.cpp abi/main.cpp ;
-
-test-suite "BOOST_HAS_TWO_ARG_USE_FACET" :
-[ run has_2arg_use_facet_pass.cpp ]
-[ compile-fail has_2arg_use_facet_fail.cpp ] ;
-test-suite "BOOST_HAS_BETHREADS" :
-[ run has_bethreads_pass.cpp ]
-[ compile-fail has_bethreads_fail.cpp ] ;
-test-suite "BOOST_HAS_CLOCK_GETTIME" :
-[ run has_clock_gettime_pass.cpp ]
-[ compile-fail has_clock_gettime_fail.cpp ] ;
-test-suite "BOOST_HAS_CONCEPTS" :
-[ run has_concepts_pass.cpp ]
-[ compile-fail has_concepts_fail.cpp ] ;
-test-suite "BOOST_HAS_DIRENT_H" :
-[ run has_dirent_h_pass.cpp ]
-[ compile-fail has_dirent_h_fail.cpp ] ;
-test-suite "BOOST_HAS_EXPM1" :
-[ run has_expm1_pass.cpp ]
-[ compile-fail has_expm1_fail.cpp ] ;
-test-suite "BOOST_HAS_FTIME" :
-[ run has_ftime_pass.cpp ]
-[ compile-fail has_ftime_fail.cpp ] ;
-test-suite "BOOST_HAS_GETTIMEOFDAY" :
-[ run has_gettimeofday_pass.cpp ]
-[ compile-fail has_gettimeofday_fail.cpp ] ;
-test-suite "BOOST_HAS_HASH" :
-[ run has_hash_pass.cpp ]
-[ compile-fail has_hash_fail.cpp ] ;
-test-suite "BOOST_HAS_LOG1P" :
-[ run has_log1p_pass.cpp ]
-[ compile-fail has_log1p_fail.cpp ] ;
-test-suite "BOOST_HAS_LONG_LONG" :
-[ run has_long_long_pass.cpp ]
-[ compile-fail has_long_long_fail.cpp ] ;
-test-suite "BOOST_HAS_MACRO_USE_FACET" :
-[ run has_macro_use_facet_pass.cpp ]
-[ compile-fail has_macro_use_facet_fail.cpp ] ;
-test-suite "BOOST_HAS_MS_INT64" :
-[ run has_ms_int64_pass.cpp ]
-[ compile-fail has_ms_int64_fail.cpp ] ;
-test-suite "BOOST_HAS_NANOSLEEP" :
-[ run has_nanosleep_pass.cpp ]
-[ compile-fail has_nanosleep_fail.cpp ] ;
-test-suite "BOOST_HAS_NL_TYPES_H" :
-[ run has_nl_types_h_pass.cpp ]
-[ compile-fail has_nl_types_h_fail.cpp ] ;
-test-suite "BOOST_HAS_NRVO" :
-[ run has_nrvo_pass.cpp ]
-[ compile-fail has_nrvo_fail.cpp ] ;
-test-suite "BOOST_HAS_PARTIAL_STD_ALLOCATOR" :
-[ run has_part_alloc_pass.cpp ]
-[ compile-fail has_part_alloc_fail.cpp ] ;
-test-suite "BOOST_HAS_PTHREADS" :
-[ run has_pthreads_pass.cpp ]
-[ compile-fail has_pthreads_fail.cpp ] ;
-test-suite "BOOST_HAS_PTHREAD_DELAY_NP" :
-[ run has_pthread_delay_np_pass.cpp ]
-[ compile-fail has_pthread_delay_np_fail.cpp ] ;
-test-suite "BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE" :
-[ run has_pthread_ma_st_pass.cpp ]
-[ compile-fail has_pthread_ma_st_fail.cpp ] ;
-test-suite "BOOST_HAS_PTHREAD_YIELD" :
-[ run has_pthread_yield_pass.cpp ]
-[ compile-fail has_pthread_yield_fail.cpp ] ;
-test-suite "BOOST_HAS_RVALUE_REFS" :
-[ run has_rvalue_refs_pass.cpp ]
-[ compile-fail has_rvalue_refs_fail.cpp ] ;
-test-suite "BOOST_HAS_SCHED_YIELD" :
-[ run has_sched_yield_pass.cpp ]
-[ compile-fail has_sched_yield_fail.cpp ] ;
-test-suite "BOOST_HAS_SGI_TYPE_TRAITS" :
-[ run has_sgi_type_traits_pass.cpp ]
-[ compile-fail has_sgi_type_traits_fail.cpp ] ;
-test-suite "BOOST_HAS_SIGACTION" :
-[ run has_sigaction_pass.cpp ]
-[ compile-fail has_sigaction_fail.cpp ] ;
-test-suite "BOOST_HAS_SLIST" :
-[ run has_slist_pass.cpp ]
-[ compile-fail has_slist_fail.cpp ] ;
-test-suite "BOOST_HAS_STATIC_ASSERT" :
-[ run has_static_assert_pass.cpp ]
-[ compile-fail has_static_assert_fail.cpp ] ;
-test-suite "BOOST_HAS_STDINT_H" :
-[ run has_stdint_h_pass.cpp ]
-[ compile-fail has_stdint_h_fail.cpp ] ;
-test-suite "BOOST_HAS_STLP_USE_FACET" :
-[ run has_stlp_use_facet_pass.cpp ]
-[ compile-fail has_stlp_use_facet_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_ARRAY" :
-[ run has_tr1_array_pass.cpp ]
-[ compile-fail has_tr1_array_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_BIND" :
-[ run has_tr1_bind_pass.cpp ]
-[ compile-fail has_tr1_bind_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_COMPLEX_OVERLOADS" :
-[ run has_tr1_complex_over_pass.cpp ]
-[ compile-fail has_tr1_complex_over_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG" :
-[ run has_tr1_complex_trig_pass.cpp ]
-[ compile-fail has_tr1_complex_trig_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_FUNCTION" :
-[ run has_tr1_function_pass.cpp ]
-[ compile-fail has_tr1_function_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_HASH" :
-[ run has_tr1_hash_pass.cpp ]
-[ compile-fail has_tr1_hash_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_MEM_FN" :
-[ run has_tr1_mem_fn_pass.cpp ]
-[ compile-fail has_tr1_mem_fn_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_RANDOM" :
-[ run has_tr1_random_pass.cpp ]
-[ compile-fail has_tr1_random_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_REFERENCE_WRAPPER" :
-[ run has_tr1_ref_wrap_pass.cpp ]
-[ compile-fail has_tr1_ref_wrap_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_REGEX" :
-[ run has_tr1_regex_pass.cpp ]
-[ compile-fail has_tr1_regex_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_RESULT_OF" :
-[ run has_tr1_result_of_pass.cpp ]
-[ compile-fail has_tr1_result_of_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_SHARED_PTR" :
-[ run has_tr1_shared_ptr_pass.cpp ]
-[ compile-fail has_tr1_shared_ptr_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_TUPLE" :
-[ run has_tr1_tuple_pass.cpp ]
-[ compile-fail has_tr1_tuple_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_TYPE_TRAITS" :
-[ run has_tr1_type_traits_pass.cpp ]
-[ compile-fail has_tr1_type_traits_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_UNORDERED_MAP" :
-[ run has_tr1_unordered_map_pass.cpp ]
-[ compile-fail has_tr1_unordered_map_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_UNORDERED_SET" :
-[ run has_tr1_unordered_set_pass.cpp ]
-[ compile-fail has_tr1_unordered_set_fail.cpp ] ;
-test-suite "BOOST_HAS_TR1_UTILITY" :
-[ run has_tr1_utility_pass.cpp ]
-[ compile-fail has_tr1_utility_fail.cpp ] ;
-test-suite "BOOST_HAS_UNISTD_H" :
-[ run has_unistd_h_pass.cpp ]
-[ compile-fail has_unistd_h_fail.cpp ] ;
-test-suite "BOOST_HAS_VARIADIC_TMPL" :
-[ run has_variadic_tmpl_pass.cpp ]
-[ compile-fail has_variadic_tmpl_fail.cpp ] ;
-test-suite "BOOST_MSVC6_MEMBER_TEMPLATES" :
-[ run has_vc6_mem_templ_pass.cpp ]
-[ compile-fail has_vc6_mem_templ_fail.cpp ] ;
-test-suite "BOOST_MSVC_STD_ITERATOR" :
-[ run has_vc_iterator_pass.cpp ]
-[ compile-fail has_vc_iterator_fail.cpp ] ;
-test-suite "BOOST_HAS_WINTHREADS" :
-[ run has_winthreads_pass.cpp ]
-[ compile-fail has_winthreads_fail.cpp ] ;
-test-suite "BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP" :
-[ run no_arg_dep_lookup_pass.cpp ]
-[ compile-fail no_arg_dep_lookup_fail.cpp ] ;
-test-suite "BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS" :
-[ run no_array_type_spec_pass.cpp ]
-[ compile-fail no_array_type_spec_fail.cpp ] ;
-test-suite "BOOST_NO_AUTO_PTR" :
-[ run no_auto_ptr_pass.cpp ]
-[ compile-fail no_auto_ptr_fail.cpp ] ;
-test-suite "BOOST_BCB_PARTIAL_SPECIALIZATION_BUG" :
-[ run no_bcb_partial_spec_pass.cpp ]
-[ compile-fail no_bcb_partial_spec_fail.cpp ] ;
-test-suite "BOOST_NO_CTYPE_FUNCTIONS" :
-[ run no_ctype_functions_pass.cpp ]
-[ compile-fail no_ctype_functions_fail.cpp ] ;
-test-suite "BOOST_NO_CV_SPECIALIZATIONS" :
-[ run no_cv_spec_pass.cpp ]
-[ compile-fail no_cv_spec_fail.cpp ] ;
-test-suite "BOOST_NO_CV_VOID_SPECIALIZATIONS" :
-[ run no_cv_void_spec_pass.cpp ]
-[ compile-fail no_cv_void_spec_fail.cpp ] ;
-test-suite "BOOST_NO_CWCHAR" :
-[ run no_cwchar_pass.cpp ]
-[ compile-fail no_cwchar_fail.cpp ] ;
-test-suite "BOOST_NO_CWCTYPE" :
-[ run no_cwctype_pass.cpp ]
-[ compile-fail no_cwctype_fail.cpp ] ;
-test-suite "BOOST_DEDUCED_TYPENAME" :
-[ run no_ded_typename_pass.cpp ]
-[ compile-fail no_ded_typename_fail.cpp ] ;
-test-suite "BOOST_NO_DEPENDENT_NESTED_DERIVATIONS" :
-[ run no_dep_nested_class_pass.cpp ]
-[ compile-fail no_dep_nested_class_fail.cpp ] ;
-test-suite "BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS" :
-[ run no_dep_val_param_pass.cpp ]
-[ compile-fail no_dep_val_param_fail.cpp ] ;
-test-suite "BOOST_NO_EXCEPTIONS" :
-[ run no_exceptions_pass.cpp ]
-[ compile-fail no_exceptions_fail.cpp ] ;
-test-suite "BOOST_NO_EXCEPTION_STD_NAMESPACE" :
-[ run no_excep_std_pass.cpp ]
-[ compile-fail no_excep_std_fail.cpp ] ;
-test-suite "BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS" :
-[ run no_exp_func_tem_arg_pass.cpp ]
-[ compile-fail no_exp_func_tem_arg_fail.cpp ] ;
-test-suite "BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS" :
-[ run no_function_type_spec_pass.cpp ]
-[ compile-fail no_function_type_spec_fail.cpp ] ;
-test-suite "BOOST_NO_FUNCTION_TEMPLATE_ORDERING" :
-[ run no_func_tmp_order_pass.cpp ]
-[ compile-fail no_func_tmp_order_fail.cpp ] ;
-test-suite "BOOST_NO_MS_INT64_NUMERIC_LIMITS" :
-[ run no_i64_limits_pass.cpp ]
-[ compile-fail no_i64_limits_fail.cpp ] ;
-test-suite "BOOST_NO_INCLASS_MEMBER_INITIALIZATION" :
-[ run no_inline_memb_init_pass.cpp ]
-[ compile-fail no_inline_memb_init_fail.cpp ] ;
-test-suite "BOOST_NO_INTEGRAL_INT64_T" :
-[ run no_integral_int64_t_pass.cpp ]
-[ compile-fail no_integral_int64_t_fail.cpp ] ;
-test-suite "BOOST_NO_IOSFWD" :
-[ run no_iosfwd_pass.cpp ]
-[ compile-fail no_iosfwd_fail.cpp ] ;
-test-suite "BOOST_NO_IOSTREAM" :
-[ run no_iostream_pass.cpp ]
-[ compile-fail no_iostream_fail.cpp ] ;
-test-suite "BOOST_NO_IS_ABSTRACT" :
-[ run no_is_abstract_pass.cpp ]
-[ compile-fail no_is_abstract_fail.cpp ] ;
-test-suite "BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS" :
-[ run no_iter_construct_pass.cpp ]
-[ compile-fail no_iter_construct_fail.cpp ] ;
-test-suite "BOOST_NO_LIMITS" :
-[ run no_limits_pass.cpp ]
-[ compile-fail no_limits_fail.cpp ] ;
-test-suite "BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS" :
-[ run no_limits_const_exp_pass.cpp ]
-[ compile-fail no_limits_const_exp_fail.cpp ] ;
-test-suite "BOOST_NO_LONG_LONG_NUMERIC_LIMITS" :
-[ run no_ll_limits_pass.cpp ]
-[ compile-fail no_ll_limits_fail.cpp ] ;
-test-suite "BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS" :
-[ run no_mem_func_spec_pass.cpp ]
-[ compile-fail no_mem_func_spec_fail.cpp ] ;
-test-suite "BOOST_NO_MEMBER_TEMPLATES" :
-[ run no_mem_templates_pass.cpp ]
-[ compile-fail no_mem_templates_fail.cpp ] ;
-test-suite "BOOST_NO_MEMBER_TEMPLATE_FRIENDS" :
-[ run no_mem_templ_frnds_pass.cpp ]
-[ compile-fail no_mem_templ_frnds_fail.cpp ] ;
-test-suite "BOOST_NO_MEMBER_TEMPLATE_KEYWORD" :
-[ run no_mem_tem_keyword_pass.cpp ]
-[ compile-fail no_mem_tem_keyword_fail.cpp ] ;
-test-suite "BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS" :
-[ run no_mem_tem_pnts_pass.cpp ]
-[ compile-fail no_mem_tem_pnts_fail.cpp ] ;
-test-suite "BOOST_NO_OPERATORS_IN_NAMESPACE" :
-[ run no_ops_in_namespace_pass.cpp ]
-[ compile-fail no_ops_in_namespace_fail.cpp ] ;
-test-suite "BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION" :
-[ run no_partial_spec_pass.cpp ]
-[ compile-fail no_partial_spec_fail.cpp ] ;
-test-suite "BOOST_NO_PRIVATE_IN_AGGREGATE" :
-[ run no_priv_aggregate_pass.cpp ]
-[ compile-fail no_priv_aggregate_fail.cpp ] ;
-test-suite "BOOST_NO_POINTER_TO_MEMBER_CONST" :
-[ run no_ptr_mem_const_pass.cpp ]
-[ compile-fail no_ptr_mem_const_fail.cpp ] ;
-test-suite "BOOST_NO_UNREACHABLE_RETURN_DETECTION" :
-[ run no_ret_det_pass.cpp ]
-[ compile-fail no_ret_det_fail.cpp ] ;
-test-suite "BOOST_NO_SFINAE" :
-[ run no_sfinae_pass.cpp ]
-[ compile-fail no_sfinae_fail.cpp ] ;
-test-suite "BOOST_NO_STRINGSTREAM" :
-[ run no_sstream_pass.cpp ]
-[ compile-fail no_sstream_fail.cpp ] ;
-test-suite "BOOST_NO_STDC_NAMESPACE" :
-[ run no_stdc_namespace_pass.cpp ]
-[ compile-fail no_stdc_namespace_fail.cpp ] ;
-test-suite "BOOST_NO_STD_ALLOCATOR" :
-[ run no_std_allocator_pass.cpp ]
-[ compile-fail no_std_allocator_fail.cpp ] ;
-test-suite "BOOST_NO_STD_DISTANCE" :
-[ run no_std_distance_pass.cpp ]
-[ compile-fail no_std_distance_fail.cpp ] ;
-test-suite "BOOST_NO_STD_ITERATOR" :
-[ run no_std_iterator_pass.cpp ]
-[ compile-fail no_std_iterator_fail.cpp ] ;
-test-suite "BOOST_NO_STD_ITERATOR_TRAITS" :
-[ run no_std_iter_traits_pass.cpp ]
-[ compile-fail no_std_iter_traits_fail.cpp ] ;
-test-suite "BOOST_NO_STD_LOCALE" :
-[ run no_std_locale_pass.cpp ]
-[ compile-fail no_std_locale_fail.cpp ] ;
-test-suite "BOOST_NO_STD_MESSAGES" :
-[ run no_std_messages_pass.cpp ]
-[ compile-fail no_std_messages_fail.cpp ] ;
-test-suite "BOOST_NO_STD_MIN_MAX" :
-[ run no_std_min_max_pass.cpp ]
-[ compile-fail no_std_min_max_fail.cpp ] ;
-test-suite "BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN" :
-[ run no_std_oi_assign_pass.cpp ]
-[ compile-fail no_std_oi_assign_fail.cpp ] ;
-test-suite "BOOST_NO_STD_TYPEINFO" :
-[ run no_std_typeinfo_pass.cpp ]
-[ compile-fail no_std_typeinfo_fail.cpp ] ;
-test-suite "BOOST_NO_STD_USE_FACET" :
-[ run no_std_use_facet_pass.cpp ]
-[ compile-fail no_std_use_facet_fail.cpp ] ;
-test-suite "BOOST_NO_STD_WSTREAMBUF" :
-[ run no_std_wstreambuf_pass.cpp ]
-[ compile-fail no_std_wstreambuf_fail.cpp ] ;
-test-suite "BOOST_NO_STD_WSTRING" :
-[ run no_std_wstring_pass.cpp ]
-[ compile-fail no_std_wstring_fail.cpp ] ;
-test-suite "BOOST_NO_SWPRINTF" :
-[ run no_swprintf_pass.cpp ]
-[ compile-fail no_swprintf_fail.cpp ] ;
-test-suite "BOOST_NO_TEMPLATE_TEMPLATES" :
-[ run no_template_template_pass.cpp ]
-[ compile-fail no_template_template_fail.cpp ] ;
-test-suite "BOOST_NO_TWO_PHASE_NAME_LOOKUP" :
-[ run no_two_phase_lookup_pass.cpp ]
-[ compile-fail no_two_phase_lookup_fail.cpp ] ;
-test-suite "BOOST_NO_TYPEID" :
-[ run no_typeid_pass.cpp ]
-[ compile-fail no_typeid_fail.cpp ] ;
-test-suite "BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL" :
-[ run no_using_breaks_adl_pass.cpp ]
-[ compile-fail no_using_breaks_adl_fail.cpp ] ;
-test-suite "BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE" :
-[ run no_using_decl_overld_pass.cpp ]
-[ compile-fail no_using_decl_overld_fail.cpp ] ;
-test-suite "BOOST_NO_USING_TEMPLATE" :
-[ run no_using_template_pass.cpp ]
-[ compile-fail no_using_template_fail.cpp ] ;
-test-suite "BOOST_NO_VOID_RETURNS" :
-[ run no_void_returns_pass.cpp ]
-[ compile-fail no_void_returns_fail.cpp ] ;
-test-suite "BOOST_NO_INTRINSIC_WCHAR_T" :
-[ run no_wchar_t_pass.cpp ]
-[ compile-fail no_wchar_t_fail.cpp ] ;
-
+test-suite config
+ :
+ [ run config_test.cpp
+ : #args
+ : #input-files
+ : #requirements
+ <threading>multi
+ : config_test_threaded
+ ]
+ [ run config_test.cpp
+ : #args
+ : #input-files
+ : #requirements
+ <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static
+ ]
+ [ run config_info.cpp : : : <test-info>always_show_run_output <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static ]
+ [ run config_info.cpp : : : <test-info>always_show_run_output <threading>multi : config_info_threaded ]
+ [ run math_info.cpp : : : <test-info>always_show_run_output <toolset>borland:<runtime-link>static <toolset>borland:<link>static ]
+ [ run abi/abi_test.cpp abi/main.cpp ]
+ [ run limits_test.cpp ../../test/build//boost_test_exec_monitor ]
+ [ run link/main.cpp link//link_test
+ : #args
+ : #input-files
+ : #requirements
+ <runtime-link>shared
+ <define>BOOST_DYN_LINK=1
+ <define>BOOST_CONFIG_NO_LIB=1
+ :
+ config_link_test
+ ]
+ [ compile-fail threads/test_thread_fail1.cpp ]
+ [ compile-fail threads/test_thread_fail2.cpp ]
+ ;

Modified: branches/CMake/release/libs/config/test/boost_has_pthreads.ipp
==============================================================================
--- branches/CMake/release/libs/config/test/boost_has_pthreads.ipp (original)
+++ branches/CMake/release/libs/config/test/boost_has_pthreads.ipp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,17 +14,46 @@
 
 namespace boost_has_pthreads{
 
+extern "C" void* thread_proc(void* arg)
+{
+ return arg;
+}
+
 int test()
 {
    pthread_mutex_t mut;
    int result = pthread_mutex_init(&mut, 0);
    if(0 == result)
    {
- pthread_mutex_lock(&mut);
- pthread_mutex_unlock(&mut);
- pthread_mutex_destroy(&mut);
+ //
+ // Failure to be able to create and use a mutex
+ // is always a failure, even if the pthread
+ // library is just a non-functioning stub.
+ //
+ result |= pthread_mutex_lock(&mut);
+ result |= pthread_mutex_unlock(&mut);
+ result |= pthread_mutex_trylock(&mut);
+ result |= pthread_mutex_unlock(&mut);
+ result |= pthread_mutex_destroy(&mut);
+ //
+ // Try and create a thread, this is allowed
+ // to fail, in case we are linking to a pthread
+ // "stub" library.
+ //
+ pthread_t t;
+ int r = pthread_create(&t, 0, &thread_proc, 0);
+ // result |= r;
+ if(r == 0)
+ {
+ //
+ // If we can create a thread, then we must be able to join to it:
+ //
+ void* arg;
+ r = pthread_join(t, &arg);
+ result |= r;
+ }
    }
- return 0;
+ return result;
 }
 
 }

Modified: branches/CMake/release/libs/config/test/boost_has_tr1_function.ipp
==============================================================================
--- branches/CMake/release/libs/config/test/boost_has_tr1_function.ipp (original)
+++ branches/CMake/release/libs/config/test/boost_has_tr1_function.ipp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,7 +11,7 @@
 
 #include <functional>
 
-namespace boost_has_tr1_bind{
+namespace boost_has_tr1_function{
 
 using std::tr1::function;
 

Modified: branches/CMake/release/libs/config/test/boost_has_tr1_result_of.ipp
==============================================================================
--- branches/CMake/release/libs/config/test/boost_has_tr1_result_of.ipp (original)
+++ branches/CMake/release/libs/config/test/boost_has_tr1_result_of.ipp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,7 +14,7 @@
 namespace boost_has_tr1_result_of{
 
 typedef std::tr1::result_of<int*(int)> r;
-typedef typename r::type rr;
+typedef r::type rr;
 
 int test()
 {

Modified: branches/CMake/release/libs/config/test/boost_no_bcb_partial_spec.ipp
==============================================================================
--- branches/CMake/release/libs/config/test/boost_no_bcb_partial_spec.ipp (original)
+++ branches/CMake/release/libs/config/test/boost_no_bcb_partial_spec.ipp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Terje Slettebø 2002.
+// (C) Copyright Terje Slettebo 2002.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/CMake/release/libs/config/test/boost_no_mem_tem_pnts.ipp
==============================================================================
--- branches/CMake/release/libs/config/test/boost_no_mem_tem_pnts.ipp (original)
+++ branches/CMake/release/libs/config/test/boost_no_mem_tem_pnts.ipp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,4 +1,4 @@
-// Copyright (C) Joaquín M López Muñoz 2004.
+// Copyright (C) Joaquin M Lopez Munoz 2004.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/CMake/release/libs/config/test/boost_no_sfinae.ipp
==============================================================================
--- branches/CMake/release/libs/config/test/boost_no_sfinae.ipp (original)
+++ branches/CMake/release/libs/config/test/boost_no_sfinae.ipp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 // (C) Copyright Eric Friedman 2003.
-// Some modifications by Jeremiah Willcock and Jaakko Järvi.
+// Some modifications by Jeremiah Willcock and Jaakko Jarvi.
 // Use, modification, and distribution is subject to the Boost Software
 // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/CMake/release/libs/config/test/config_info.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/config_info.cpp (original)
+++ branches/CMake/release/libs/config/test/config_info.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -952,6 +952,7 @@
    PRINT_MACRO(BOOST_HAS_WINTHREADS);
    PRINT_MACRO(BOOST_MSVC6_MEMBER_TEMPLATES);
    PRINT_MACRO(BOOST_MSVC_STD_ITERATOR);
+ PRINT_MACRO(BOOST_NO_ADL_BARRIER);
    PRINT_MACRO(BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP);
    PRINT_MACRO(BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS);
    PRINT_MACRO(BOOST_NO_AUTO_PTR);
@@ -982,6 +983,7 @@
    PRINT_MACRO(BOOST_NO_MEMBER_TEMPLATE_KEYWORD);
    PRINT_MACRO(BOOST_NO_MS_INT64_NUMERIC_LIMITS);
    PRINT_MACRO(BOOST_NO_OPERATORS_IN_NAMESPACE);
+ PRINT_MACRO(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS);
    PRINT_MACRO(BOOST_NO_POINTER_TO_MEMBER_CONST);
    PRINT_MACRO(BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS);
    PRINT_MACRO(BOOST_NO_PRIVATE_IN_AGGREGATE);
@@ -1001,6 +1003,7 @@
    PRINT_MACRO(BOOST_NO_STD_WSTRING);
    PRINT_MACRO(BOOST_NO_STRINGSTREAM);
    PRINT_MACRO(BOOST_NO_SWPRINTF);
+ PRINT_MACRO(BOOST_NO_TEMPLATED_IOSTREAMS);
    PRINT_MACRO(BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS);
    PRINT_MACRO(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION);
    PRINT_MACRO(BOOST_NO_TEMPLATE_TEMPLATES);
@@ -1019,6 +1022,19 @@
 
 
 
+
+
+
+
+
+
+
+
+
+
+
+
+
    // END GENERATED BLOCK
 
    PRINT_MACRO(BOOST_INTEL);

Modified: branches/CMake/release/libs/config/test/config_test.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/config_test.cpp (original)
+++ branches/CMake/release/libs/config/test/config_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,4 +1,4 @@
-// This file was automatically generated on Fri Oct 19 13:34:11 2007
+// This file was automatically generated on Sat Jul 12 12:39:34 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
@@ -22,6 +22,11 @@
 
 int error_count = 0;
 
+#ifndef BOOST_NO_ADL_BARRIER
+#include "boost_no_adl_barrier.ipp"
+#else
+namespace boost_no_adl_barrier = empty_boost;
+#endif
 #ifndef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP
 #include "boost_no_arg_dep_lookup.ipp"
 #else
@@ -192,6 +197,11 @@
 #else
 namespace boost_no_template_partial_specialization = empty_boost;
 #endif
+#ifndef BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS
+#include "boost_no_part_spec_def_args.ipp"
+#else
+namespace boost_no_partial_specialization_implicit_default_args = empty_boost;
+#endif
 #ifndef BOOST_NO_PRIVATE_IN_AGGREGATE
 #include "boost_no_priv_aggregate.ipp"
 #else
@@ -287,6 +297,11 @@
 #else
 namespace boost_no_swprintf = empty_boost;
 #endif
+#ifndef BOOST_NO_TEMPLATED_IOSTREAMS
+#include "boost_no_template_streams.ipp"
+#else
+namespace boost_no_templated_iostreams = empty_boost;
+#endif
 #ifndef BOOST_NO_TEMPLATE_TEMPLATES
 #include "boost_no_template_template.ipp"
 #else
@@ -841,6 +856,11 @@
       std::cerr << "Failed test for BOOST_HAS_WINTHREADS at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
+ if(0 != boost_no_adl_barrier::test())
+ {
+ std::cerr << "Failed test for BOOST_NO_ADL_BARRIER at: " << __FILE__ << ":" << __LINE__ << std::endl;
+ ++error_count;
+ }
    if(0 != boost_no_argument_dependent_lookup::test())
    {
       std::cerr << "Failed test for BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP at: " << __FILE__ << ":" << __LINE__ << std::endl;
@@ -1011,6 +1031,11 @@
       std::cerr << "Failed test for BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
+ if(0 != boost_no_partial_specialization_implicit_default_args::test())
+ {
+ std::cerr << "Failed test for BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS at: " << __FILE__ << ":" << __LINE__ << std::endl;
+ ++error_count;
+ }
    if(0 != boost_no_private_in_aggregate::test())
    {
       std::cerr << "Failed test for BOOST_NO_PRIVATE_IN_AGGREGATE at: " << __FILE__ << ":" << __LINE__ << std::endl;
@@ -1106,6 +1131,11 @@
       std::cerr << "Failed test for BOOST_NO_SWPRINTF at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
+ if(0 != boost_no_templated_iostreams::test())
+ {
+ std::cerr << "Failed test for BOOST_NO_TEMPLATED_IOSTREAMS at: " << __FILE__ << ":" << __LINE__ << std::endl;
+ ++error_count;
+ }
    if(0 != boost_no_template_templates::test())
    {
       std::cerr << "Failed test for BOOST_NO_TEMPLATE_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl;

Modified: branches/CMake/release/libs/config/test/has_tr1_array_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_array_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_array_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Feb 19 12:29:54 2005
+// This file was automatically generated on Sat Jul 12 12:39:31 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_ARRAY
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_ARRAY

Modified: branches/CMake/release/libs/config/test/has_tr1_array_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_array_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_array_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Feb 19 12:29:54 2005
+// This file was automatically generated on Sat Jul 12 12:39:31 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_ARRAY
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_ARRAY

Modified: branches/CMake/release/libs/config/test/has_tr1_bind_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_bind_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_bind_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Mon Jan 24 16:31:49 2005
+// This file was automatically generated on Sat Jul 12 12:39:31 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_BIND
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_BIND

Modified: branches/CMake/release/libs/config/test/has_tr1_bind_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_bind_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_bind_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Mon Jan 24 16:31:49 2005
+// This file was automatically generated on Sat Jul 12 12:39:31 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_BIND
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_BIND

Modified: branches/CMake/release/libs/config/test/has_tr1_complex_over_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_complex_over_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_complex_over_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Apr 02 11:49:11 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_COMPLEX_OVERLOADS
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_COMPLEX_OVERLOADS

Modified: branches/CMake/release/libs/config/test/has_tr1_complex_over_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_complex_over_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_complex_over_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Apr 02 11:49:11 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_COMPLEX_OVERLOADS
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_COMPLEX_OVERLOADS

Modified: branches/CMake/release/libs/config/test/has_tr1_complex_trig_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_complex_trig_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_complex_trig_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Apr 02 11:49:12 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG

Modified: branches/CMake/release/libs/config/test/has_tr1_complex_trig_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_complex_trig_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_complex_trig_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Apr 02 11:49:12 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG

Modified: branches/CMake/release/libs/config/test/has_tr1_function_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_function_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_function_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Tue Jan 25 15:52:52 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_FUNCTION
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_FUNCTION

Modified: branches/CMake/release/libs/config/test/has_tr1_function_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_function_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_function_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Tue Jan 25 15:52:52 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_FUNCTION
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_FUNCTION

Modified: branches/CMake/release/libs/config/test/has_tr1_hash_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_hash_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_hash_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Feb 19 12:29:55 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_HASH
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_HASH

Modified: branches/CMake/release/libs/config/test/has_tr1_hash_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_hash_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_hash_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Feb 19 12:29:55 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_HASH
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_HASH

Modified: branches/CMake/release/libs/config/test/has_tr1_mem_fn_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_mem_fn_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_mem_fn_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Mon Jan 24 16:31:49 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_MEM_FN
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_MEM_FN

Modified: branches/CMake/release/libs/config/test/has_tr1_mem_fn_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_mem_fn_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_mem_fn_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Mon Jan 24 16:31:49 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_MEM_FN
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_MEM_FN

Modified: branches/CMake/release/libs/config/test/has_tr1_random_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_random_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_random_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Tue Feb 15 17:34:12 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_RANDOM
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_RANDOM

Modified: branches/CMake/release/libs/config/test/has_tr1_random_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_random_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_random_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Tue Feb 15 17:34:12 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_RANDOM
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_RANDOM

Modified: branches/CMake/release/libs/config/test/has_tr1_ref_wrap_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_ref_wrap_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_ref_wrap_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sun Jan 16 16:06:37 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_REFERENCE_WRAPPER
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_REFERENCE_WRAPPER

Modified: branches/CMake/release/libs/config/test/has_tr1_ref_wrap_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_ref_wrap_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_ref_wrap_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sun Jan 16 16:06:37 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_REFERENCE_WRAPPER
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_REFERENCE_WRAPPER

Modified: branches/CMake/release/libs/config/test/has_tr1_regex_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_regex_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_regex_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,15 +1,18 @@
-// This file was automatically generated on Sat Apr 02 11:49:12 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
 
-// Test file for macro BOOST_HAS_TR1_ARRAY
+
+// Test file for macro BOOST_HAS_TR1_REGEX
 // This file should not compile, if it does then
-// BOOST_HAS_TR1_ARRAY should be defined.
+// BOOST_HAS_TR1_REGEX should be defined.
 // See file boost_has_tr1_regex.ipp for details
 
 // Must not have BOOST_ASSERT_CONFIG set; it defeats
@@ -19,9 +22,10 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
-#ifndef BOOST_HAS_TR1_ARRAY
+#ifndef BOOST_HAS_TR1_REGEX
 #include "boost_has_tr1_regex.ipp"
 #else
 #error "this file should not compile"
@@ -29,6 +33,6 @@
 
 int main( int, char *[] )
 {
- return boost_has_tr1_array::test();
+ return boost_has_tr1_regex::test();
 }
 

Modified: branches/CMake/release/libs/config/test/has_tr1_regex_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_regex_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_regex_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,15 +1,18 @@
-// This file was automatically generated on Sat Apr 02 11:49:12 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
 
-// Test file for macro BOOST_HAS_TR1_ARRAY
+
+// Test file for macro BOOST_HAS_TR1_REGEX
 // This file should compile, if it does not then
-// BOOST_HAS_TR1_ARRAY should not be defined.
+// BOOST_HAS_TR1_REGEX should not be defined.
 // See file boost_has_tr1_regex.ipp for details
 
 // Must not have BOOST_ASSERT_CONFIG set; it defeats
@@ -19,16 +22,17 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
-#ifdef BOOST_HAS_TR1_ARRAY
+#ifdef BOOST_HAS_TR1_REGEX
 #include "boost_has_tr1_regex.ipp"
 #else
-namespace boost_has_tr1_array = empty_boost;
+namespace boost_has_tr1_regex = empty_boost;
 #endif
 
 int main( int, char *[] )
 {
- return boost_has_tr1_array::test();
+ return boost_has_tr1_regex::test();
 }
 

Modified: branches/CMake/release/libs/config/test/has_tr1_result_of_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_result_of_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_result_of_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Mon Jan 24 16:31:49 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_RESULT_OF
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_RESULT_OF

Modified: branches/CMake/release/libs/config/test/has_tr1_result_of_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_result_of_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_result_of_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Mon Jan 24 16:31:49 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_RESULT_OF
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_RESULT_OF

Modified: branches/CMake/release/libs/config/test/has_tr1_shared_ptr_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_shared_ptr_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_shared_ptr_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Mon Jan 17 10:49:50 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_SHARED_PTR
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_SHARED_PTR

Modified: branches/CMake/release/libs/config/test/has_tr1_shared_ptr_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_shared_ptr_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_shared_ptr_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Mon Jan 17 10:49:50 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_SHARED_PTR
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_SHARED_PTR

Modified: branches/CMake/release/libs/config/test/has_tr1_tuple_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_tuple_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_tuple_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Tue Feb 15 17:34:12 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_TUPLE
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_TUPLE

Modified: branches/CMake/release/libs/config/test/has_tr1_tuple_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_tuple_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_tuple_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Tue Feb 15 17:34:12 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_TUPLE
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_TUPLE

Modified: branches/CMake/release/libs/config/test/has_tr1_type_traits_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_type_traits_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_type_traits_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Tue Feb 15 17:34:12 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_TYPE_TRAITS
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_TYPE_TRAITS

Modified: branches/CMake/release/libs/config/test/has_tr1_type_traits_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_type_traits_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_type_traits_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Tue Feb 15 17:34:12 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_TYPE_TRAITS
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_TYPE_TRAITS

Modified: branches/CMake/release/libs/config/test/has_tr1_unordered_map_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_unordered_map_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_unordered_map_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Feb 19 12:29:55 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_UNORDERED_MAP
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_UNORDERED_MAP

Modified: branches/CMake/release/libs/config/test/has_tr1_unordered_map_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_unordered_map_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_unordered_map_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Feb 19 12:29:55 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_UNORDERED_MAP
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_UNORDERED_MAP

Modified: branches/CMake/release/libs/config/test/has_tr1_unordered_set_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_unordered_set_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_unordered_set_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Feb 19 12:29:55 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_UNORDERED_SET
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_UNORDERED_SET

Modified: branches/CMake/release/libs/config/test/has_tr1_unordered_set_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_unordered_set_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_unordered_set_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Sat Feb 19 12:29:55 2005
+// This file was automatically generated on Sat Jul 12 12:39:32 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_UNORDERED_SET
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_UNORDERED_SET

Modified: branches/CMake/release/libs/config/test/has_tr1_utility_fail.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_utility_fail.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_utility_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Tue Feb 15 17:34:13 2005
+// This file was automatically generated on Sat Jul 12 12:39:33 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_UTILITY
 // This file should not compile, if it does then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifndef BOOST_HAS_TR1_UTILITY

Modified: branches/CMake/release/libs/config/test/has_tr1_utility_pass.cpp
==============================================================================
--- branches/CMake/release/libs/config/test/has_tr1_utility_pass.cpp (original)
+++ branches/CMake/release/libs/config/test/has_tr1_utility_pass.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,11 +1,14 @@
-// This file was automatically generated on Tue Feb 15 17:34:13 2005
+// This file was automatically generated on Sat Jul 12 12:39:33 2008
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-// See http://www.boost.org/libs/config for the most recent version.
+// See http://www.boost.org/libs/config for the most recent version.//
+// Revision $Id$
+//
+
 
 // Test file for macro BOOST_HAS_TR1_UTILITY
 // This file should compile, if it does not then
@@ -19,6 +22,7 @@
 #endif
 
 #include <boost/config.hpp>
+#include <boost/tr1/detail/config.hpp>
 #include "test.hpp"
 
 #ifdef BOOST_HAS_TR1_UTILITY

Deleted: branches/CMake/release/libs/config/test/options.jam
==============================================================================
--- branches/CMake/release/libs/config/test/options.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,26 +0,0 @@
-# copyright John Maddock 2003
-# Use, modification and distribution are subject to the
-# Boost Software License, Version 1.0. (See accompanying file
-# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-#
-# this template defines the options common to
-# all config builds and tests:
-#
-template config_options
- : # sources
- : # requirements
- <sysinclude>$(BOOST_ROOT)
- # como requires access to <windows.h>:
- <como-win32><*><no-warn>
- # threading tests require thread support turned on:
- <threading>multi
- ;
-
-template config_test_options
- : # sources
- <lib>../../test/build/boost_test_exec_monitor
- <template>config_options
- ;
-
-

Deleted: branches/CMake/release/libs/config/test/options_v2.jam
==============================================================================
--- branches/CMake/release/libs/config/test/options_v2.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,12 +0,0 @@
-# copyright John Maddock 2003
-# Use, modification and distribution are subject to the
-# Boost Software License, Version 1.0. (See accompanying file
-# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-project
- : requirements
- # threading tests require thread support turned on:
- <threading>multi
- ;
-
-local test-requirements = <library>../../test/build//boost_test_exec_monitor ;

Modified: branches/CMake/release/libs/config/tools/generate.cpp
==============================================================================
--- branches/CMake/release/libs/config/tools/generate.cpp (original)
+++ branches/CMake/release/libs/config/tools/generate.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -89,33 +89,9 @@
    ofs << "int main( int, char *[] )\n{\n" << config_test2.str() << " return error_count;\n}\n\n";
 }
 
-void write_jamfile()
-{
- fs::ofstream ofs(config_path / "Jamfile");
- time_t t = std::time(0);
- ofs << "#\n# Regression test Jamfile for boost configuration setup.\n# *** DO NOT EDIT THIS FILE BY HAND ***\n"
- "# This file was automatically generated on " << std::ctime(&t);
- ofs << "# by libs/config/tools/generate.cpp\n"
- "# Copyright John Maddock.\n"
- "# Use, modification and distribution are subject to the \n"
- "# Boost Software License, Version 1.0. (See accompanying file \n"
- "# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)\n"
- "#\n# If you need to alter build preferences then set them in\n"
- "# the template defined in options.jam.\n#\n"
- "subproject libs/config/test ;\n"
- "# bring in the rules for testing\n"
- "import testing ./options ;\n\n"
- "run config_info.cpp <template>config_options ;\n"
- "run math_info.cpp <template>config_options : : : <borland><*><runtime-link>static ;\n"
- "run config_test.cpp <template>config_options ;\n"
- "run limits_test.cpp <template>config_test_options ;\n"
- "run abi/abi_test.cpp abi/main.cpp <template>config_options ;\n\n";
- ofs << jamfile.str() << std::endl;
-}
-
 void write_jamfile_v2()
 {
- fs::ofstream ofs(config_path / "Jamfile.v2");
+ fs::ofstream ofs(config_path / "all" / "Jamfile.v2");
    time_t t = std::time(0);
    ofs << "#\n# Regression test Jamfile for boost configuration setup.\n# *** DO NOT EDIT THIS FILE BY HAND ***\n"
       "# This file was automatically generated on " << std::ctime(&t);
@@ -128,11 +104,13 @@
       "# the template defined in options_v2.jam.\n#\n"
       "path-constant DOT : . ;\n"
       "include $(DOT)/options_v2.jam ;\n\n"
- "run config_info.cpp ;\n"
- "run math_info.cpp : : : <toolset>borland:<runtime-link>static <toolset>borland:<link>static ;\n"
- "run config_test.cpp ;\n"
- "run limits_test.cpp ../../test/build//boost_test_exec_monitor ;\n"
- "run abi/abi_test.cpp abi/main.cpp ;\n\n";
+ "run ../config_info.cpp : : : <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static ;\n"
+ "run ../config_info.cpp : : : <threading>multi : config_info_threaded ;\n"
+ "run ../math_info.cpp : : : <toolset>borland:<runtime-link>static <toolset>borland:<link>static ;\n"
+ "run ../config_test.cpp : : : <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static ;\n"
+ "run ../config_test.cpp : : : <threading>multi : config_test_threaded ;\n"
+ "run ../limits_test.cpp ../../../test/build//boost_test_exec_monitor ;\n"
+ "run ../abi/abi_test.cpp ../abi/main.cpp ;\n\n";
    ofs << jamfile_v2.str() << std::endl;
 
 }
@@ -178,8 +156,14 @@
          "# undef BOOST_ASSERT_CONFIG\n"
          "#endif\n\n";
 
- ofs << "#include <boost/config.hpp>\n"
- "#include \"test.hpp\"\n\n"
+ static const boost::regex tr1_exp("BOOST_HAS_TR1.*");
+
+ ofs << "#include <boost/config.hpp>\n";
+
+ if(regex_match(macro_name, tr1_exp))
+ ofs << "#include <boost/tr1/detail/config.hpp>\n";
+
+ ofs << "#include \"test.hpp\"\n\n"
          "#if";
       if(positive_test != expect_success)
          ofs << "n";
@@ -263,8 +247,8 @@
       "[ compile-fail " << negative_file.leaf() << " <template>config_options ] ;\n";
 
    jamfile_v2 << "test-suite \"" << macro_name << "\" : \n"
- "[ run " << positive_file.leaf() << " ]\n"
- "[ compile-fail " << negative_file.leaf() << " ] ;\n";
+ "[ run ../" << positive_file.leaf() << " ]\n"
+ "[ compile-fail ../" << negative_file.leaf() << " ] ;\n";
 
 }
 
@@ -292,14 +276,13 @@
    fs::directory_iterator i(config_path), j;
    while(i != j)
    {
- if(boost::regex_match(i->leaf(), ipp_match, ipp_mask))
+ if(boost::regex_match(i->path().leaf(), ipp_match, ipp_mask))
       {
          process_ipp_file(*i, ipp_match[1].matched);
       }
       ++i;
    }
    write_config_test();
- write_jamfile();
    write_jamfile_v2();
    write_config_info();
    return 0;

Modified: branches/CMake/release/libs/dynamic_bitset/dynamic_bitset.html
==============================================================================
--- branches/CMake/release/libs/dynamic_bitset/dynamic_bitset.html (original)
+++ branches/CMake/release/libs/dynamic_bitset/dynamic_bitset.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1064,10 +1064,7 @@
 <b>Returns:</b> a copy of <tt>*this</tt> shifted to the left by
 <tt>n</tt> bits. For each bit in the returned bitset, the bit at
 position pos takes on the value of the bit at position <tt>pos -
-n</tt> of this bitset, or zero if no such bit exists. Note that
-the expression <tt>b &lt;&lt; n</tt> is equivalent to
-constructing a temporary copy of <tt>b</tt> and then using
-<tt>operator&lt;&lt;=</tt>.<br>
+n</tt> of this bitset, or zero if no such bit exists.<br>
  <b>Throws:</b> An allocation error if memory is exhausted
 (<tt>std::bad_alloc</tt> if <tt>Allocator=std::allocator</tt>).
 
@@ -1080,10 +1077,7 @@
 <b>Returns:</b> a copy of <tt>*this</tt> shifted to the right by
 <tt>n</tt> bits. For each bit in the returned bitset, the bit at
 position pos takes on the value of the bit at position <tt>pos +
-n</tt> of this bitset, or zero if no such bit exists. Note that
-the expression <tt>b &gt;&gt; n</tt> is equivalent to
-constructing a temporary copy of <tt>b</tt> and then using
-<tt>operator&gt;&gt;=</tt>.<br>
+n</tt> of this bitset, or zero if no such bit exists.<br>
  <b>Throws:</b> An allocation error if memory is exhausted
 (<tt>std::bad_alloc</tt> if <tt>Allocator=std::allocator</tt>).
 
@@ -1396,10 +1390,7 @@
 
 <b>Requires:</b> <tt>a.size() == b.size()</tt><br>
 <b>Returns:</b> A new bitset that is the bitwise-AND of the
-bitsets <tt>a</tt> and <tt>b</tt>. Note that the expression
-<tt>b1 &amp; b2</tt> is equivalent to creating a temporary copy
-of <tt>b1</tt>, using <tt>operator&amp;=</tt>, and returning the
-temporary copy.<br>
+bitsets <tt>a</tt> and <tt>b</tt>.<br>
 <b>Throws:</b> An allocation error if memory is exhausted
 (<tt>std::bad_alloc</tt> if <tt>Allocator=std::allocator</tt>).
 
@@ -1411,10 +1402,7 @@
 
 <b>Requires:</b> <tt>a.size() == b.size()</tt><br>
 <b>Returns:</b> A new bitset that is the bitwise-OR of the
-bitsets <tt>a</tt> and <tt>b</tt>. Note that the expression
-<tt>b1 &amp; b2</tt> is equivalent to creating a temporary copy
-of <tt>b1</tt>, using <tt>operator&amp;=</tt>, and returning the
-temporary copy.<br>
+bitsets <tt>a</tt> and <tt>b</tt>.<br>
 <b>Throws:</b> An allocation error if memory is exhausted
 (<tt>std::bad_alloc</tt> if <tt>Allocator=std::allocator</tt>).
 
@@ -1426,10 +1414,7 @@
 
 <b>Requires:</b> <tt>a.size() == b.size()</tt><br>
 <b>Returns:</b> A new bitset that is the bitwise-XOR of the
-bitsets <tt>a</tt> and <tt>b</tt>. Note that the expression
-<tt>b1 &amp; b2</tt> is equivalent to creating a temporary copy
-of <tt>b1</tt>, using <tt>operator&amp;=</tt>, and returning the
-temporary copy.<br>
+bitsets <tt>a</tt> and <tt>b</tt>.<br>
 <b>Throws:</b> An allocation error if memory is exhausted
 (<tt>std::bad_alloc</tt> if <tt>Allocator=std::allocator</tt>).
 
@@ -1441,10 +1426,7 @@
 
 <b>Requires:</b> <tt>a.size() == b.size()</tt><br>
 <b>Returns:</b> A new bitset that is the set difference of the
-bitsets <tt>a</tt> and <tt>b</tt>. Note that the expression
-<tt>b1 - b2</tt> is equivalent to creating a temporary copy of
-<tt>b1</tt>, using <tt>operator-=</tt>, and returning the
-temporary copy.<br>
+bitsets <tt>a</tt> and <tt>b</tt>.<br>
 <b>Throws:</b> An allocation error if memory is exhausted
 (<tt>std::bad_alloc</tt> if <tt>Allocator=std::allocator</tt>).
 

Modified: branches/CMake/release/libs/exception/doc/BOOST_ERROR_INFO.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/BOOST_ERROR_INFO.html (original)
+++ branches/CMake/release/libs/exception/doc/BOOST_ERROR_INFO.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>BOOST_ERROR_INFO</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>BOOST_ERROR_INFO</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -33,11 +34,13 @@
         ::boost::throw_file(__FILE__) &lt;&lt;\
         ::boost::throw_line((int)__LINE__)</span>
     }</pre>
-</div><p>This macro is designed to be used with <span class="RenoLink">operator<<</span> when throwing a boost::<span class="RenoLink">exception</span>, to store information about the location of the throw statement. It can be chained with other <span class="RenoLink">error_info</span>s in a single throw expression.</p>
-</div><h3>See also:</h3>
+</div><p>This macro is designed to be used with <span class="RenoLink">operator<<</span> when throwing a boost::<span class="RenoLink">exception</span>, to store information about the location of the throw statement. It can be chained with other <span class="RenoLink">error_infos</span> in a single throw expression.</p>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_error_info_hpp.html">boost/exception/info.hpp<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/boost-exception.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/boost-exception.html (original)
+++ branches/CMake/release/libs/exception/doc/boost-exception.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
 <head>
         <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
- <title>Boost Exception</title>
+ <title>boost exception</title>
         <link href='reno.css' type='text/css' rel='stylesheet'/>
 </head>
 <body>
@@ -21,14 +21,14 @@
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
 <h2>Introduction</h2>
 <p>The purpose of Boost Exception is to ease the design of exception class hierarchies and to help write exception handling and error reporting code.</p>
-<p>It supports transporting of arbitrary data to the catch site, which is otherwise tricky due to the no-throw requirements (15.5.1) for exception classes. Data can be added to any exception object, either directly in the throw-expression (15.1), or at a later time as the exception object propagates up the call stack.</p>
+<p>It supports transporting of arbitrary data to the catch site, which is otherwise tricky due to the no-throw requirements (15.5.1) for exception types. Data can be added to any exception object, either directly in the throw-expression (15.1), or at a later time as the exception object propagates up the call stack.</p>
 <p>The ability to add data to exception objects after they have been passed to throw is important, because often some of the information needed to handle an exception is unavailable in the context where the failure is detected. </p>
 <p>Boost Exception also supports <span class="RenoLink">N2179</span>-style <span class="RenoLink">copying</span> of exception objects, implemented non-intrusively and automatically by the boost::<span class="RenoLink">throw_exception</span> function.</p>
 <h2>Contents</h2>
-<div><ol><li>Tutorial<div><ol><li><span class="RenoLink">Tutorial: Transporting of Arbitrary Data to the Catch Site</span></li>
-<li><span class="RenoLink">Tutorial: Integrating Boost Exception in Existing Exception Class Hierarchies</span></li>
-<li><span class="RenoLink">Tutorial: Transporting of Exceptions between Threads</span></li>
-<li><span class="RenoLink">Tutorial: Diagnostic Information</span></li>
+<div><ol><li>Tutorial<div><ol><li><span class="RenoLink">Transporting of Arbitrary Data to the Catch Site</span></li>
+<li><span class="RenoLink">Integrating Boost Exception in Existing Exception Class Hierarchies</span></li>
+<li><span class="RenoLink">Transporting of Exceptions Between Threads</span></li>
+<li><span class="RenoLink">Diagnostic Information</span></li>
 </ol></div>
 </li>
 <li>Documentation<div><ol><li>Class <span class="RenoLink">exception</span></li>
@@ -155,7 +155,8 @@
     #endif</span></span>
     }</pre>
 <h2>Class exception</h2>
-<div class="RenoIncludeDIV"><h3>exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/exception.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -177,7 +178,8 @@
 </div><p>Class boost::<span class="RenoLink">exception</span> is designed to be used as a universal base for user-defined exception types.</p>
 <p>An object of any type deriving from boost::<span class="RenoLink">exception</span> can store data of arbitrary types, using the <span class="RenoLink">error_info</span> wrapper and <span class="RenoLink">operator<<</span>.</p>
 <p>To retrieve data from a boost::<span class="RenoLink">exception</span> object, use the <span class="RenoLink">get_error_info</span> function template.</p>
-<div class="RenoIncludeDIV"><h3>exception::exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception::exception</h3>
+</div>
 <div class="RenoIncludeDIV"><pre><span class="RenoLink">exception</span>();
 <span class="RenoLink">exception</span>( <span class="RenoLink">exception</span> const &amp; x );</pre>
 </div><h4>Effects:</h4>
@@ -186,22 +188,27 @@
 </ul></div>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-</div><div class="RenoIncludeDIV"><h3>exception::~exception</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception::~exception</h3>
+</div>
 <div class="RenoIncludeDIV"><pre><span class="RenoLink">~exception</span>();</pre>
 </div><h4>Effects:</h4>
 <p>Frees all resources associated with a boost::<span class="RenoLink">exception</span> object.</p>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-</div><div class="RenoIncludeDIV"><h3>exception::diagnostic_information</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception::diagnostic_information</h3>
+</div>
 <div class="RenoIncludeDIV"><pre>virtual char const * <span class="RenoLink">diagnostic_information</span>() const throw();</pre>
 </div><h4>Returns:</h4>
-<p>An string representation of all data stored in the boost::<span class="RenoLink">exception</span> object by the <span class="RenoLink">operator<<</span> function. See "<span class="RenoLink">Tutorial: Diagnostic Information</span>" for details.</p>
+<p>A string representation of all data stored in the boost::<span class="RenoLink">exception</span> object by the <span class="RenoLink">operator<<</span> function. See "<span class="RenoLink">Diagnostic Information</span>" for details.</p>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-<h4>Note:</h4>
-<p>The return value remains valid until the exception object from which it is obtained is destroyed or modified.</p>
+<h4>Notes:</h4>
+<div><ul><li>The return value remains valid until the exception object from which it was obtained is destroyed or modified.</li>
+<li>The header <span class="RenoLink">boost/exception/diagnostic_information.hpp</span> provides a namespace-scope function <span class="RenoLink">diagnostic_information</span> which takes a std::exception. It calls <span class="RenoLink">exception::diagnostic_information</span> if its argument can be converted to boost::<span class="RenoLink">exception</span>; otherwise it returns a string that combines the value of std::exception::what and the exception's dynamic type.</li>
+</ul></div>
 </div></div><h2>Transporting of Arbitrary Data to the Catch Site</h2>
-<div class="RenoIncludeDIV"><h3>error_info</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>error_info</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -218,7 +225,7 @@
         };</span>
     }</pre>
 </div><h4>Requirements:</h4>
-<p>T must have accessible copy constructor and must not be a reference.</p>
+<p>T must have accessible copy constructor and must not be a reference (there is no requirement that T's copy constructor does not throw.)</p>
 <h4>Description:</h4>
 <p>This class template is used to associate a Tag type with a value type T. Objects of type <span class="RenoLink">error_info</span>&lt;Tag,T&gt; can be passed to <span class="RenoLink">operator<<</span> to be stored in objects of type boost::<span class="RenoLink">exception</span>.</p>
 <h4>Note:</h4>
@@ -226,8 +233,9 @@
 <pre>#include &lt;<span class="RenoLink">boost/exception/error_info.hpp</span>&gt;
 
 typedef boost::<span class="RenoLink">error_info</span>&lt;struct tag_errno,int&gt; errno_info;</pre>
-<p>Of course, to actually add an errno_info object to exceptions using <span class="RenoLink">operator<<</span>, or to retrieve it using <span class="RenoLink">get_error_info</span>, you must first #include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;.</p>
-</div><div class="RenoIncludeDIV"><h3>operator&lt;&lt;, error_info overload</h3>
+<p>Of course, to actually add an <span class="RenoLink">error_info</span> object to <span class="RenoLink">exceptions</span> using <span class="RenoLink">operator<<</span>, or to retrieve it using <span class="RenoLink">get_error_info</span>, you must first #include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;.</p>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>operator&lt;&lt;/exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;<span class="RenoBR">&nbsp;</span><br/></p>
 <pre>namespace
 boost
@@ -238,12 +246,34 @@
 </div><h4>Requirements:</h4>
 <p>E must be boost::<span class="RenoLink">exception</span>, or a type that derives (indirectly) from boost::<span class="RenoLink">exception</span>.</p>
 <h4>Effects:</h4>
-<p>Stores a copy of v into x. If x already contains data of type <span class="RenoLink">error_info</span>&lt;Tag1,T1&gt;, that data is overwritten.</p>
+<p>Stores a copy of v into x. If x already contains data of type <span class="RenoLink">error_info</span>&lt;Tag,T&gt;, that data is overwritten.</p>
 <h4>Returns:</h4>
 <p>x.</p>
 <div class="RenoIncludeDIV"><h4>Throws:</h4>
 <p>std::bad_alloc, or any exception emitted by the T copy constructor.</p>
-</div></div><div class="RenoIncludeDIV"><h3>get_error_info</h3>
+</div></div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>operator&lt;&lt;/tuple</h3>
+</div>
+<div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/info_tuple.hpp</span>&gt;</p>
+<pre>namespace
+boost
+ {
+<span class="RenoIncludeSPAN"> template &lt;class E, class Tag1, class T1, ..., class TagN, class TN&gt;
+ E const &amp; <span class="RenoLink">operator<<</span>( E const &amp; x,
+ <span class="RenoLink">tuple</span>&lt;
+ <span class="RenoLink">error_info</span>&lt;Tag1,T1&gt;,
+ ...,
+ <span class="RenoLink">error_info</span>&lt;TagN,TN&gt; &gt; const &amp; v );</span>
+ }</pre>
+</div><h4>Requirements:</h4>
+<p>E must be boost::<span class="RenoLink">exception</span>, or a type that derives (indirectly) from boost::<span class="RenoLink">exception</span>.</p>
+<h4>Effects:</h4>
+<p>Equivalent to x &lt;&lt; v.<span class="RenoLink">get</span>&lt;0&gt;() &lt;&lt; ... &lt;&lt; v.<span class="RenoLink">get</span>&lt;N&gt;().</p>
+<h4>Returns:</h4>
+<p>x.</p>
+<div class="RenoIncludeDIV"><h4>Throws:</h4>
+<p>std::bad_alloc, or any exception emitted by T1..TN copy constructor.</p>
+</div></div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>get_error_info</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -252,12 +282,17 @@
     <span class="RenoLink">shared_ptr</span>&lt;typename ErrorInfo::value_type const&gt; <span class="RenoLink">get_error_info</span>( E const &amp; x );</span>
     }</pre>
 </div><h4>Requirements:</h4>
-<p>The type of the x object must derive from boost::<span class="RenoLink">exception</span>; ErrorInfo must be an instance of the <span class="RenoLink">error_info</span> template.</p>
+<div><ul><li> ErrorInfo must be an instance of the <span class="RenoLink">error_info</span> template.</li>
+<li> E must be polymorphic.</li>
+</ul></div>
 <h4>Returns:</h4>
-<p>If x does not store an object of type ErrorInfo, returns an empty <span class="RenoLink">shared_ptr</span>; otherwise returns pointer to the stored value. Use <span class="RenoLink">operator<<</span> to store values in exception objects.</p>
+<div><ul><li> If dynamic_cast&lt;boost::<span class="RenoLink">exception</span> const *&gt;(&amp;x) is 0, or if x does not store an object of type ErrorInfo, the returned value is an empty shared_ptr.</li>
+<li> Otherwise, the returned shared_ptr points to the stored value (use <span class="RenoLink">operator<<</span> to store values in exception objects.) The shared_ptr is valid even after x has been destroyed.</li>
+</ul></div>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-</div><div class="RenoIncludeDIV"><h3>enable_error_info</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>enable_error_info</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/enable_error_info.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -266,12 +301,15 @@
     ---unspecified--- <span class="RenoLink">enable_error_info</span>( T const &amp; x );</span>
     }</pre>
 </div><h4>Requirements:</h4>
-<p>T must be a user-defined type with accessible no-throw copy constructor.</p>
+<p>T must be a user-defined type with accessible no-throw copy constructor as per (15.5.1).</p>
 <h4>Returns:</h4>
-<p>An object of unspecified type with no-throw copy semantics, which derives publicly from both T, and class boost::<span class="RenoLink">exception</span>. The T sub-object is initialized from x by the T copy constructor. If T already derives from boost::<span class="RenoLink">exception</span>, then the type of the returned object does not derive boost::<span class="RenoLink">exception</span>.</p>
+<div><ul><li> If T derives from boost::<span class="RenoLink">exception</span>, the returned object is of type T and is a copy of x.</li>
+<li> Otherwise, the returned object is of an unspecified type that derives publicly from both T and boost::<span class="RenoLink">exception</span>. The T sub-object is initialized from x by the T copy constructor.</li>
+</ul></div>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-</div><div class="RenoIncludeDIV"><h3>BOOST_ERROR_INFO</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>BOOST_ERROR_INFO</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -285,9 +323,10 @@
         ::boost::throw_file(__FILE__) &lt;&lt;\
         ::boost::throw_line((int)__LINE__)</span>
     }</pre>
-</div><p>This macro is designed to be used with <span class="RenoLink">operator<<</span> when throwing a boost::<span class="RenoLink">exception</span>, to store information about the location of the throw statement. It can be chained with other <span class="RenoLink">error_info</span>s in a single throw expression.</p>
+</div><p>This macro is designed to be used with <span class="RenoLink">operator<<</span> when throwing a boost::<span class="RenoLink">exception</span>, to store information about the location of the throw statement. It can be chained with other <span class="RenoLink">error_infos</span> in a single throw expression.</p>
 </div><h2>Transporting of Exceptions between Threads</h2>
-<div class="RenoIncludeDIV"><h3>exception_ptr</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception_ptr</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -297,9 +336,8 @@
 </div><p>The <span class="RenoLink">exception_ptr</span> type can be used to refer to a copy of an exception object. It is Default Constructible, Copy Constructible, Assignable and Equality Comparable; <span class="RenoLink">exception_ptr</span>'s operations do not throw.</p>
 <p>Two instances of <span class="RenoLink">exception_ptr</span> are equivalent and compare equal if and only if they refer to the same exception.</p>
 <p>The default constructor of <span class="RenoLink">exception_ptr</span> produces the null value of the type. The null value is equivalent only to itself.</p>
-<h4>Note:</h4>
-<p> <span class="RenoLink">exception_ptr</span> objects are returned by <span class="RenoLink">current_exception</span> and <span class="RenoLink">copy_exception</span>.</p>
-</div><div class="RenoIncludeDIV"><h3>enable_current_exception</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>enable_current_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/enable_current_exception.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -308,11 +346,11 @@
     ---unspecified--- <span class="RenoLink">enable_current_exception</span>( T const &amp; e );</span>
     }</pre>
 </div><h4>Requirements:</h4>
-<p>T must have an accessible no-throw copy constructor</p>
+<p>T must be of user-defined type with an accessible no-throw copy constructor.</p>
 <h4>Returns:</h4>
 <p>An object of <i>unspecified</i> type which derives publicly from T. That is, the returned object can be intercepted by a catch(T &amp;).</p>
 <h4>Description:</h4>
-<p>This function is designed to be used directly in a throw-expression to enable the exception_ptr support in Boost Exception. For example:</p>
+<p>This function is designed to be used directly in a throw-expression to enable the <span class="RenoLink">exception_ptr</span> support in Boost Exception. For example:</p>
 <pre>class
 my_exception:
     public std::exception
@@ -323,8 +361,9 @@
 throw boost::<span class="RenoLink">enable_current_exception</span>(my_exception());</pre>
 <p>Unless <span class="RenoLink">enable_current_exception</span> is called at the time an exception object is used in a throw-expression, an attempt to copy it using <span class="RenoLink">current_exception</span> may return an <span class="RenoLink">exception_ptr</span> which refers to an instance of <span class="RenoLink">unknown_exception</span>. See <span class="RenoLink">current_exception</span> for details.</p>
 <h4>Note:</h4>
-<p>Instead of using the throw keyword directly, it is preferable to call boost::<span class="RenoLink">throw_exception</span>. This is guaranteed to throw an exception that derives from boost::<span class="RenoLink">exception</span> and supports exception_ptr functionality.</p>
-</div><div class="RenoIncludeDIV"><h3>current_exception</h3>
+<p>Instead of using the throw keyword directly, it is preferable to call boost::<span class="RenoLink">throw_exception</span>. This is guaranteed to throw an exception that derives from boost::<span class="RenoLink">exception</span> and supports the <span class="RenoLink">exception_ptr</span> functionality.</p>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>current_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -341,9 +380,10 @@
 <p>Nothing.</p>
 <h4>Notes:</h4>
 <div><ul><li> It is unspecified whether the return values of two successive calls to <span class="RenoLink">current_exception</span> refer to the same exception object.</li>
-<li> Correct implementation of <span class="RenoLink">current_exception</span> may require compiler support, unless <span class="RenoLink">enable_current_exception</span> is used at the time the currently handled exception object was passed to throw. If <span class="RenoLink">enable_current_exception</span> is not used, and if the compiler does not provide the necessary support, then <span class="RenoLink">current_exception</span> may return an <span class="RenoLink">exception_ptr</span> that refers to an instance of <span class="RenoLink">unknown_exception</span>. In this case, if the original exception object derives from boost::<span class="RenoLink">exception</span>, then the boost::<span class="RenoLink">exception</sp
an> sub-object of the <span class="RenoLink">unknown_exception</span> object is initialized by the boost::<span class="RenoLink">exception</span> copy constructor.</li>
+<li> Correct implementation of <span class="RenoLink">current_exception</span> may require compiler support, unless <span class="RenoLink">enable_current_exception</span> was used at the time the currently handled exception object was passed to throw. If <span class="RenoLink">enable_current_exception</span> was not used, and if the compiler does not provide the necessary support, then <span class="RenoLink">current_exception</span> may return an <span class="RenoLink">exception_ptr</span> that refers to an instance of <span class="RenoLink">unknown_exception</span>. In this case, if the original exception object derives from boost::<span class="RenoLink">exception</span>, then the boost::<span class="RenoLink">exception</
span> sub-object of the <span class="RenoLink">unknown_exception</span> object is initialized by the boost::<span class="RenoLink">exception</span> copy constructor.</li>
 </ul></div>
-</div><div class="RenoIncludeDIV"><h3>copy_exception</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>copy_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -353,7 +393,8 @@
     }</pre>
 </div><h4>Effects:</h4>
 <p>As if try { throw e; } catch( ... ) { return <span class="RenoLink">current_exception</span>(); }</p>
-</div><div class="RenoIncludeDIV"><h3>rethrow_exception</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>rethrow_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -364,7 +405,8 @@
 <p>ep shall not be null.</p>
 <h4>Throws:</h4>
 <p>The exception to which ep refers.</p>
-</div><div class="RenoIncludeDIV"><h3>unknown_exception</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>unknown_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -379,7 +421,8 @@
     }</pre>
 </div><p>This type is used by the <span class="RenoLink">exception_ptr</span> support in Boost Exception. Please see <span class="RenoLink">current_exception</span>.</p>
 </div><h2>Printing Diagnostic Information</h2>
-<div class="RenoIncludeDIV"><h3>diagnostic_information</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>diagnostic_information</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/diagnostic_information.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -387,9 +430,10 @@
 <span class="RenoIncludeSPAN"> std::string <span class="RenoLink">diagnostic_information</span>( std::exception const &amp; x );</span>
     }</pre>
 </div><h4>Returns:</h4>
-<p>If dynamic_cast&lt;boost::<span class="RenoLink">exception</span> *&gt;(&amp;x) is not null, the returned string is initialized by a call to <span class="RenoLink">exception::diagnostic_information</span>; otherwise, the returned string combines the output of x.what() and typeid(x).name().</p>
+<p>If dynamic_cast&lt;boost::<span class="RenoLink">exception</span> const *&gt;(&amp;x) is not null, the returned string is initialized by a call to <span class="RenoLink">exception::diagnostic_information</span>; otherwise, the returned string combines the output of x.what() and typeid(x).name().</p>
 </div><h2>Throwing Exceptions</h2>
-<div class="RenoIncludeDIV"><h3>throw_exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>throw_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/throw_exception.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -409,7 +453,7 @@
 <p>E must derive publicly from std::exception.</p>
 <h4>Effects:</h4>
 <div><ul><li> If BOOST_NO_EXCEPTIONS is not defined, boost::<span class="RenoLink">throw_exception</span>(e) is equivalent to throw boost::<span class="RenoLink">enable_current_exception</span>(boost::<span class="RenoLink">enable_error_info</span>(e)), unless BOOST_EXCEPTION_DISABLE is defined, in which case boost::<span class="RenoLink">throw_exception</span>(e) is equivalent to throw e;</li>
-<li> If BOOST_NO_EXCEPTIONS is defined, the function is left undefined, and the user is expected to supply an appropriate definition. Callers of throw_exception are allowed to assume that the function never returns; therefore, if the user-defined throw_exception returns, the behavior is undefined.</li>
+<li> If BOOST_NO_EXCEPTIONS is defined, the function is left undefined, and the user is expected to supply an appropriate definition. Callers of <span class="RenoLink">throw_exception</span> are allowed to assume that the function never returns; therefore, if the user-defined <span class="RenoLink">throw_exception</span> returns, the behavior is undefined.</li>
 </ul></div>
 </div><!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->

Modified: branches/CMake/release/libs/exception/doc/boost_exception_diagnostic_information_hpp.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/boost_exception_diagnostic_information_hpp.html (original)
+++ branches/CMake/release/libs/exception/doc/boost_exception_diagnostic_information_hpp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>boost/exception/diagnostic_information.hpp</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>boost/exception/diagnostic_information.hpp</h2>
+</div>
 <h3>Synopsis</h3>
 <div class="RenoIncludeDIV"><pre>#include &lt;exception&gt;
 
@@ -28,11 +29,14 @@
     {
 <span class="RenoIncludeSPAN"> <span class="RenoIncludeSPAN">std::string <span class="RenoLink">diagnostic_information</span>( std::exception const &amp; x );</span></span>
     }</pre>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_hpp.html">boost/exception.hpp<br/>
 </a><a href="diagnostic_information.html">diagnostic_information<br/>
+</a><a href="exception_diagnostic_information.html">exception::diagnostic_information<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/copy_exception.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/copy_exception.html (original)
+++ branches/CMake/release/libs/exception/doc/copy_exception.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>copy_exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>copy_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -29,11 +30,12 @@
     }</pre>
 </div><h4>Effects:</h4>
 <p>As if try { throw e; } catch( ... ) { return <span class="RenoLink">current_exception</span>(); }</p>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_cloning_hpp.html">boost/exception_ptr.hpp<br/>
-</a><a href="exception_ptr.html">exception_ptr<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/current_exception.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/current_exception.html (original)
+++ branches/CMake/release/libs/exception/doc/current_exception.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>current_exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>current_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -36,16 +37,17 @@
 <p>Nothing.</p>
 <h4>Notes:</h4>
 <div><ul><li> It is unspecified whether the return values of two successive calls to <span class="RenoLink">current_exception</span> refer to the same exception object.</li>
-<li> Correct implementation of <span class="RenoLink">current_exception</span> may require compiler support, unless <span class="RenoLink">enable_current_exception</span> is used at the time the currently handled exception object was passed to throw. If <span class="RenoLink">enable_current_exception</span> is not used, and if the compiler does not provide the necessary support, then <span class="RenoLink">current_exception</span> may return an <span class="RenoLink">exception_ptr</span> that refers to an instance of <span class="RenoLink">unknown_exception</span>. In this case, if the original exception object derives from boost::<span class="RenoLink">exception</span>, then the boost::<span class="RenoLink">exception</sp
an> sub-object of the <span class="RenoLink">unknown_exception</span> object is initialized by the boost::<span class="RenoLink">exception</span> copy constructor.</li>
+<li> Correct implementation of <span class="RenoLink">current_exception</span> may require compiler support, unless <span class="RenoLink">enable_current_exception</span> was used at the time the currently handled exception object was passed to throw. If <span class="RenoLink">enable_current_exception</span> was not used, and if the compiler does not provide the necessary support, then <span class="RenoLink">current_exception</span> may return an <span class="RenoLink">exception_ptr</span> that refers to an instance of <span class="RenoLink">unknown_exception</span>. In this case, if the original exception object derives from boost::<span class="RenoLink">exception</span>, then the boost::<span class="RenoLink">exception</
span> sub-object of the <span class="RenoLink">unknown_exception</span> object is initialized by the boost::<span class="RenoLink">exception</span> copy constructor.</li>
 </ul></div>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_cloning_hpp.html">boost/exception_ptr.hpp<br/>
 </a><a href="copy_exception.html">copy_exception<br/>
 </a><a href="enable_current_exception.html">enable_current_exception<br/>
-</a><a href="exception_ptr.html">exception_ptr<br/>
 </a><a href="unknown_exception.html">unknown_exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/diagnostic_information.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/diagnostic_information.html (original)
+++ branches/CMake/release/libs/exception/doc/diagnostic_information.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>diagnostic_information</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>diagnostic_information</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/diagnostic_information.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -27,11 +28,14 @@
 <span class="RenoIncludeSPAN"> std::string <span class="RenoLink">diagnostic_information</span>( std::exception const &amp; x );</span>
     }</pre>
 </div><h4>Returns:</h4>
-<p>If dynamic_cast&lt;boost::<span class="RenoLink">exception</span> *&gt;(&amp;x) is not null, the returned string is initialized by a call to <span class="RenoLink">exception::diagnostic_information</span>; otherwise, the returned string combines the output of x.what() and typeid(x).name().</p>
-</div><h3>See also:</h3>
+<p>If dynamic_cast&lt;boost::<span class="RenoLink">exception</span> const *&gt;(&amp;x) is not null, the returned string is initialized by a call to <span class="RenoLink">exception::diagnostic_information</span>; otherwise, the returned string combines the output of x.what() and typeid(x).name().</p>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="boost_exception_diagnostic_information_hpp.html">boost/exception/diagnostic_information.hpp<br/>
+</a><a href="exception_diagnostic_information.html">exception::diagnostic_information<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/enable_current_exception.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/enable_current_exception.html (original)
+++ branches/CMake/release/libs/exception/doc/enable_current_exception.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>enable_current_exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>enable_current_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/enable_current_exception.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -28,11 +29,11 @@
     ---unspecified--- <span class="RenoLink">enable_current_exception</span>( T const &amp; e );</span>
     }</pre>
 </div><h4>Requirements:</h4>
-<p>T must have an accessible no-throw copy constructor</p>
+<p>T must be of user-defined type with an accessible no-throw copy constructor.</p>
 <h4>Returns:</h4>
 <p>An object of <i>unspecified</i> type which derives publicly from T. That is, the returned object can be intercepted by a catch(T &amp;).</p>
 <h4>Description:</h4>
-<p>This function is designed to be used directly in a throw-expression to enable the exception_ptr support in Boost Exception. For example:</p>
+<p>This function is designed to be used directly in a throw-expression to enable the <span class="RenoLink">exception_ptr</span> support in Boost Exception. For example:</p>
 <pre>class
 my_exception:
     public std::exception
@@ -43,14 +44,16 @@
 throw boost::<span class="RenoLink">enable_current_exception</span>(my_exception());</pre>
 <p>Unless <span class="RenoLink">enable_current_exception</span> is called at the time an exception object is used in a throw-expression, an attempt to copy it using <span class="RenoLink">current_exception</span> may return an <span class="RenoLink">exception_ptr</span> which refers to an instance of <span class="RenoLink">unknown_exception</span>. See <span class="RenoLink">current_exception</span> for details.</p>
 <h4>Note:</h4>
-<p>Instead of using the throw keyword directly, it is preferable to call boost::<span class="RenoLink">throw_exception</span>. This is guaranteed to throw an exception that derives from boost::<span class="RenoLink">exception</span> and supports exception_ptr functionality.</p>
-</div><h3>See also:</h3>
+<p>Instead of using the throw keyword directly, it is preferable to call boost::<span class="RenoLink">throw_exception</span>. This is guaranteed to throw an exception that derives from boost::<span class="RenoLink">exception</span> and supports the <span class="RenoLink">exception_ptr</span> functionality.</p>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_enable_exception_cloning_hpp.html">boost/exception/enable_current_exception.hpp<br/>
 </a><a href="current_exception.html">current_exception<br/>
-</a><a href="tutorial_exception_ptr.html">Tutorial: Transporting of Exceptions between Threads<br/>
+</a><a href="tutorial_exception_ptr.html">Transporting of Exceptions Between Threads<br/>
 </a><a href="throw_exception.html">throw_exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/enable_error_info.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/enable_error_info.html (original)
+++ branches/CMake/release/libs/exception/doc/enable_error_info.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>enable_error_info</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>enable_error_info</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/enable_error_info.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -28,17 +29,21 @@
     ---unspecified--- <span class="RenoLink">enable_error_info</span>( T const &amp; x );</span>
     }</pre>
 </div><h4>Requirements:</h4>
-<p>T must be a user-defined type with accessible no-throw copy constructor.</p>
+<p>T must be a user-defined type with accessible no-throw copy constructor as per (15.5.1).</p>
 <h4>Returns:</h4>
-<p>An object of unspecified type with no-throw copy semantics, which derives publicly from both T, and class boost::<span class="RenoLink">exception</span>. The T sub-object is initialized from x by the T copy constructor. If T already derives from boost::<span class="RenoLink">exception</span>, then the type of the returned object does not derive boost::<span class="RenoLink">exception</span>.</p>
+<div><ul><li> If T derives from boost::<span class="RenoLink">exception</span>, the returned object is of type T and is a copy of x.</li>
+<li> Otherwise, the returned object is of an unspecified type that derives publicly from both T and boost::<span class="RenoLink">exception</span>. The T sub-object is initialized from x by the T copy constructor.</li>
+</ul></div>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_enable_error_info_hpp.html">boost/exception/enable_error_info.hpp<br/>
-</a><a href="tutorial_enable_error_info.html">Tutorial: Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
+</a><a href="tutorial_enable_error_info.html">Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
 </a><a href="throw_exception.html">throw_exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/error_info.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/error_info.html (original)
+++ branches/CMake/release/libs/exception/doc/error_info.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>error_info</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>error_info</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -36,7 +37,7 @@
         };</span>
     }</pre>
 </div><h4>Requirements:</h4>
-<p>T must have accessible copy constructor and must not be a reference.</p>
+<p>T must have accessible copy constructor and must not be a reference (there is no requirement that T's copy constructor does not throw.)</p>
 <h4>Description:</h4>
 <p>This class template is used to associate a Tag type with a value type T. Objects of type <span class="RenoLink">error_info</span>&lt;Tag,T&gt; can be passed to <span class="RenoLink">operator<<</span> to be stored in objects of type boost::<span class="RenoLink">exception</span>.</p>
 <h4>Note:</h4>
@@ -44,19 +45,21 @@
 <pre>#include &lt;<span class="RenoLink">boost/exception/error_info.hpp</span>&gt;
 
 typedef boost::<span class="RenoLink">error_info</span>&lt;struct tag_errno,int&gt; errno_info;</pre>
-<p>Of course, to actually add an errno_info object to exceptions using <span class="RenoLink">operator<<</span>, or to retrieve it using <span class="RenoLink">get_error_info</span>, you must first #include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;.</p>
-</div><h3>See also:</h3>
+<p>Of course, to actually add an <span class="RenoLink">error_info</span> object to <span class="RenoLink">exceptions</span> using <span class="RenoLink">operator<<</span>, or to retrieve it using <span class="RenoLink">get_error_info</span>, you must first #include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;.</p>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="BOOST_ERROR_INFO.html">BOOST_ERROR_INFO<br/>
 </a><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_error_info_value_hpp.html">boost/exception/error_info.hpp<br/>
 </a><a href="exception_error_info_hpp.html">boost/exception/info.hpp<br/>
+</a><a href="tutorial_diagnostic_information.html">Diagnostic Information<br/>
 </a><a href="exception.html">exception<br/>
 </a><a href="get_error_info.html">get_error_info<br/>
+</a><a href="tutorial_enable_error_info.html">Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
 </a><a href="operator_shl_exception.html">operator&lt;&lt;/exception<br/>
 </a><a href="operator_shl_tuple.html">operator&lt;&lt;/tuple<br/>
-</a><a href="tutorial_diagnostic_information.html">Tutorial: Diagnostic Information<br/>
-</a><a href="tutorial_enable_error_info.html">Tutorial: Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception.html (original)
+++ branches/CMake/release/libs/exception/doc/exception.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/exception.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -41,7 +42,8 @@
 </div><p>Class boost::<span class="RenoLink">exception</span> is designed to be used as a universal base for user-defined exception types.</p>
 <p>An object of any type deriving from boost::<span class="RenoLink">exception</span> can store data of arbitrary types, using the <span class="RenoLink">error_info</span> wrapper and <span class="RenoLink">operator<<</span>.</p>
 <p>To retrieve data from a boost::<span class="RenoLink">exception</span> object, use the <span class="RenoLink">get_error_info</span> function template.</p>
-<div class="RenoIncludeDIV"><h3>exception::exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception::exception</h3>
+</div>
 <div class="RenoIncludeDIV"><pre><span class="RenoLink">exception</span>();
 <span class="RenoLink">exception</span>( <span class="RenoLink">exception</span> const &amp; x );</pre>
 </div><h4>Effects:</h4>
@@ -50,35 +52,44 @@
 </ul></div>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-</div><div class="RenoIncludeDIV"><h3>exception::~exception</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception::~exception</h3>
+</div>
 <div class="RenoIncludeDIV"><pre><span class="RenoLink">~exception</span>();</pre>
 </div><h4>Effects:</h4>
 <p>Frees all resources associated with a boost::<span class="RenoLink">exception</span> object.</p>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-</div><div class="RenoIncludeDIV"><h3>exception::diagnostic_information</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception::diagnostic_information</h3>
+</div>
 <div class="RenoIncludeDIV"><pre>virtual char const * <span class="RenoLink">diagnostic_information</span>() const throw();</pre>
 </div><h4>Returns:</h4>
-<p>An string representation of all data stored in the boost::<span class="RenoLink">exception</span> object by the <span class="RenoLink">operator<<</span> function. See "<span class="RenoLink">Tutorial: Diagnostic Information</span>" for details.</p>
+<p>A string representation of all data stored in the boost::<span class="RenoLink">exception</span> object by the <span class="RenoLink">operator<<</span> function. See "<span class="RenoLink">Diagnostic Information</span>" for details.</p>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-<h4>Note:</h4>
-<p>The return value remains valid until the exception object from which it is obtained is destroyed or modified.</p>
-</div></div><h3>See also:</h3>
+<h4>Notes:</h4>
+<div><ul><li>The return value remains valid until the exception object from which it was obtained is destroyed or modified.</li>
+<li>The header <span class="RenoLink">boost/exception/diagnostic_information.hpp</span> provides a namespace-scope function <span class="RenoLink">diagnostic_information</span> which takes a std::exception. It calls <span class="RenoLink">exception::diagnostic_information</span> if its argument can be converted to boost::<span class="RenoLink">exception</span>; otherwise it returns a string that combines the value of std::exception::what and the exception's dynamic type.</li>
+</ul></div>
+</div></div><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="BOOST_ERROR_INFO.html">BOOST_ERROR_INFO<br/>
 </a><a href="boost-exception.html">Boost Exception<br/>
+</a><a href="exception_exception_hpp.html">boost/exception/exception.hpp<br/>
 </a><a href="current_exception.html">current_exception<br/>
+</a><a href="tutorial_diagnostic_information.html">Diagnostic Information<br/>
 </a><a href="diagnostic_information.html">diagnostic_information<br/>
 </a><a href="enable_current_exception.html">enable_current_exception<br/>
 </a><a href="enable_error_info.html">enable_error_info<br/>
 </a><a href="error_info.html">error_info<br/>
+</a><a href="exception_diagnostic_information.html">exception::diagnostic_information<br/>
+</a><a href="exception_constructors.html">exception::exception<br/>
+</a><a href="exception_destructor.html">exception::~exception<br/>
 </a><a href="get_error_info.html">get_error_info<br/>
+</a><a href="tutorial_enable_error_info.html">Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
 </a><a href="operator_shl_exception.html">operator&lt;&lt;/exception<br/>
 </a><a href="operator_shl_tuple.html">operator&lt;&lt;/tuple<br/>
-</a><a href="tutorial_diagnostic_information.html">Tutorial: Diagnostic Information<br/>
-</a><a href="tutorial_enable_error_info.html">Tutorial: Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
-</a><a href="tutorial_transporting_data.html">Tutorial: Transporting of Arbitrary Data to the Catch Site<br/>
-</a><a href="tutorial_exception_ptr.html">Tutorial: Transporting of Exceptions between Threads<br/>
+</a><a href="tutorial_transporting_data.html">Transporting of Arbitrary Data to the Catch Site<br/>
+</a><a href="tutorial_exception_ptr.html">Transporting of Exceptions Between Threads<br/>
 </a><a href="unknown_exception.html">unknown_exception<br/>
 </a></div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->

Modified: branches/CMake/release/libs/exception/doc/exception_cloning_hpp.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_cloning_hpp.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_cloning_hpp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>boost/exception_ptr.hpp</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>boost/exception_ptr.hpp</h2>
+</div>
 <h3>Synopsis</h3>
 <div class="RenoIncludeDIV"><pre>#include &lt;<span class="RenoLink">boost/exception/exception.hpp</span>&gt;
 
@@ -43,7 +44,8 @@
     
     <span class="RenoIncludeSPAN">void <span class="RenoLink">rethrow_exception</span>( <span class="RenoLink">exception_ptr</span> const &amp; ep );</span></span>
     }</pre>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_hpp.html">boost/exception.hpp<br/>
 </a><a href="copy_exception.html">copy_exception<br/>
@@ -52,6 +54,7 @@
 </a><a href="rethrow_exception.html">rethrow_exception<br/>
 </a><a href="unknown_exception.html">unknown_exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_constructors.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_constructors.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_constructors.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>exception::exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception::exception</h3>
+</div>
 <div class="RenoIncludeDIV"><pre><span class="RenoLink">exception</span>();
 <span class="RenoLink">exception</span>( <span class="RenoLink">exception</span> const &amp; x );</pre>
 </div><h4>Effects:</h4>
@@ -28,9 +29,11 @@
 </ul></div>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="exception.html">exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_destructor.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_destructor.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_destructor.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,15 +19,18 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>exception::~exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception::~exception</h3>
+</div>
 <div class="RenoIncludeDIV"><pre><span class="RenoLink">~exception</span>();</pre>
 </div><h4>Effects:</h4>
 <p>Frees all resources associated with a boost::<span class="RenoLink">exception</span> object.</p>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="exception.html">exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_diagnostic_information.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_diagnostic_information.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_diagnostic_information.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,19 +19,24 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>exception::diagnostic_information</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception::diagnostic_information</h3>
+</div>
 <div class="RenoIncludeDIV"><pre>virtual char const * <span class="RenoLink">diagnostic_information</span>() const throw();</pre>
 </div><h4>Returns:</h4>
-<p>An string representation of all data stored in the boost::<span class="RenoLink">exception</span> object by the <span class="RenoLink">operator<<</span> function. See "<span class="RenoLink">Tutorial: Diagnostic Information</span>" for details.</p>
+<p>A string representation of all data stored in the boost::<span class="RenoLink">exception</span> object by the <span class="RenoLink">operator<<</span> function. See "<span class="RenoLink">Diagnostic Information</span>" for details.</p>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-<h4>Note:</h4>
-<p>The return value remains valid until the exception object from which it is obtained is destroyed or modified.</p>
-</div><h3>See also:</h3>
-<div class="RenoPageList"><a href="diagnostic_information.html">diagnostic_information<br/>
+<h4>Notes:</h4>
+<div><ul><li>The return value remains valid until the exception object from which it was obtained is destroyed or modified.</li>
+<li>The header <span class="RenoLink">boost/exception/diagnostic_information.hpp</span> provides a namespace-scope function <span class="RenoLink">diagnostic_information</span> which takes a std::exception. It calls <span class="RenoLink">exception::diagnostic_information</span> if its argument can be converted to boost::<span class="RenoLink">exception</span>; otherwise it returns a string that combines the value of std::exception::what and the exception's dynamic type.</li>
+</ul></div>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
+<div class="RenoPageList"><a href="tutorial_diagnostic_information.html">Diagnostic Information<br/>
+</a><a href="diagnostic_information.html">diagnostic_information<br/>
 </a><a href="exception.html">exception<br/>
-</a><a href="tutorial_diagnostic_information.html">Tutorial: Diagnostic Information<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_enable_error_info_hpp.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_enable_error_info_hpp.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_enable_error_info_hpp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>boost/exception/enable_error_info.hpp</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>boost/exception/enable_error_info.hpp</h2>
+</div>
 <h3>Synopsis</h3>
 <div class="RenoIncludeDIV"><pre>#include &lt;<span class="RenoLink">boost/exception/exception.hpp</span>&gt;
 
@@ -29,11 +30,13 @@
 <span class="RenoIncludeSPAN"> <span class="RenoIncludeSPAN">template &lt;class T&gt;
     ---unspecified--- <span class="RenoLink">enable_error_info</span>( T const &amp; x );</span></span>
     }</pre>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="throw_exception_hpp.html">boost/throw_exception.hpp<br/>
 </a><a href="enable_error_info.html">enable_error_info<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_enable_exception_cloning_hpp.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_enable_exception_cloning_hpp.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_enable_exception_cloning_hpp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>boost/exception/enable_current_exception.hpp</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>boost/exception/enable_current_exception.hpp</h2>
+</div>
 <h3>Synopsis</h3>
 <div class="RenoIncludeDIV"><pre>#include &lt;<span class="RenoLink">boost/exception/exception.hpp</span>&gt;
 
@@ -29,11 +30,13 @@
 <span class="RenoIncludeSPAN"> <span class="RenoIncludeSPAN">template &lt;class T&gt;
     ---unspecified--- <span class="RenoLink">enable_current_exception</span>( T const &amp; e );</span></span>
     }</pre>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="throw_exception_hpp.html">boost/throw_exception.hpp<br/>
 </a><a href="enable_current_exception.html">enable_current_exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_error_info_group_hpp.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_error_info_group_hpp.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_error_info_group_hpp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>boost/exception/info_tuple.hpp</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>boost/exception/info_tuple.hpp</h2>
+</div>
 <h3>Synopsis</h3>
 <div class="RenoIncludeDIV"><pre>#include &lt;boost/tuple/tuple.hpp&gt;
 
@@ -33,11 +34,13 @@
             ...,
             <span class="RenoLink">error_info</span>&lt;TagN,TN&gt; &gt; const &amp; v );</span></span>
     }</pre>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_hpp.html">boost/exception.hpp<br/>
 </a><a href="operator_shl_tuple.html">operator&lt;&lt;/tuple<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_error_info_hpp.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_error_info_hpp.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_error_info_hpp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>boost/exception/info.hpp</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>boost/exception/info.hpp</h2>
+</div>
 <h3>Synopsis</h3>
 <div class="RenoIncludeDIV"><pre>#include &lt;<span class="RenoLink">boost/exception/exception.hpp</span>&gt;
 #include &lt;boost/current_function.hpp&gt;
@@ -54,13 +55,16 @@
     <span class="RenoIncludeSPAN">template &lt;class E, class Tag, class T&gt;
     E const &amp; <span class="RenoLink">operator<<</span>( E const &amp; x, <span class="RenoLink">error_info</span>&lt;Tag,T&gt; const &amp; v );</span></span>
     }</pre>
-</div></div><div class="RenoPageList"><a href="BOOST_ERROR_INFO.html">BOOST_ERROR_INFO<br/>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
+<div class="RenoPageList"><a href="BOOST_ERROR_INFO.html">BOOST_ERROR_INFO<br/>
 </a><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_hpp.html">boost/exception.hpp<br/>
 </a><a href="error_info.html">error_info<br/>
 </a><a href="get_error_info.html">get_error_info<br/>
 </a><a href="operator_shl_exception.html">operator&lt;&lt;/exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_error_info_value_hpp.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_error_info_value_hpp.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_error_info_value_hpp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,18 +19,21 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>boost/exception/error_info.hpp</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>boost/exception/error_info.hpp</h2>
+</div>
 <h3>Synopsis</h3>
 <div class="RenoIncludeDIV"><pre>namespace
 boost
     {
-<span class="RenoIncludeSPAN"> template &lt;class Tag, class T&gt;
- class <span class="RenoLink">error_info</span>;</span>
+<span class="RenoIncludeSPAN"> <span class="RenoIncludeSPAN">template &lt;class Tag,class T&gt;
+ class <span class="RenoLink">error_info</span>;</span></span>
     }</pre>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="error_info.html">error_info<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_exception_hpp.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_exception_hpp.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_exception_hpp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>boost/exception/exception.hpp</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>boost/exception/exception.hpp</h2>
+</div>
 <h3>Synopsis</h3>
 <div class="RenoIncludeDIV"><pre>namespace
 boost
@@ -38,7 +39,8 @@
     <span class="RenoIncludeSPAN"> <span class="RenoLink">~exception</span>();</span>
         };</span></span>
     }</pre>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_enable_exception_cloning_hpp.html">boost/exception/enable_current_exception.hpp<br/>
 </a><a href="exception_enable_error_info_hpp.html">boost/exception/enable_error_info.hpp<br/>
@@ -46,6 +48,7 @@
 </a><a href="exception_cloning_hpp.html">boost/exception_ptr.hpp<br/>
 </a><a href="exception.html">exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_hpp.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_hpp.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_hpp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,18 +19,21 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>boost/exception.hpp</h2>
-<h2>Synopsis</h2>
-<div class="RenoIncludeDIV"><pre>#include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>boost/exception.hpp</h2>
+</div>
+<h3>Synopsis</h3>
+<div class="RenoIncludeDIV"><pre><span class="RenoIncludeSPAN">#include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;
 #include &lt;<span class="RenoLink">boost/exception/info_tuple.hpp</span>&gt;
 #include &lt;<span class="RenoLink">boost/exception/diagnostic_information.hpp</span>&gt;
 #include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;
-#include &lt;<span class="RenoLink">boost/throw_exception.hpp</span>&gt;</pre>
-</div></div><h3>See also:</h3>
+#include &lt;<span class="RenoLink">boost/throw_exception.hpp</span>&gt;</span></pre>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
-</a><a href="tutorial_diagnostic_information.html">Tutorial: Diagnostic Information<br/>
-</a><a href="tutorial_enable_error_info.html">Tutorial: Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
+</a><a href="tutorial_diagnostic_information.html">Diagnostic Information<br/>
+</a><a href="tutorial_enable_error_info.html">Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/exception_ptr.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_ptr.html (original)
+++ branches/CMake/release/libs/exception/doc/exception_ptr.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>exception_ptr</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>exception_ptr</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -29,9 +30,8 @@
 </div><p>The <span class="RenoLink">exception_ptr</span> type can be used to refer to a copy of an exception object. It is Default Constructible, Copy Constructible, Assignable and Equality Comparable; <span class="RenoLink">exception_ptr</span>'s operations do not throw.</p>
 <p>Two instances of <span class="RenoLink">exception_ptr</span> are equivalent and compare equal if and only if they refer to the same exception.</p>
 <p>The default constructor of <span class="RenoLink">exception_ptr</span> produces the null value of the type. The null value is equivalent only to itself.</p>
-<h4>Note:</h4>
-<p> <span class="RenoLink">exception_ptr</span> objects are returned by <span class="RenoLink">current_exception</span> and <span class="RenoLink">copy_exception</span>.</p>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_cloning_hpp.html">boost/exception_ptr.hpp<br/>
 </a><a href="copy_exception.html">copy_exception<br/>
@@ -40,6 +40,7 @@
 </a><a href="rethrow_exception.html">rethrow_exception<br/>
 </a><a href="unknown_exception.html">unknown_exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Deleted: branches/CMake/release/libs/exception/doc/exception_what.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/exception_what.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,50 +0,0 @@
-<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN'
-'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
-<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
-<head>
- <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
- <title>exception::what</title>
- <link href='reno.css' type='text/css' rel='stylesheet'/>
-</head>
-<body>
-<div class="body-0">
-<div class="body-1">
-<div class="body-2">
-<div>
-<div id="boost_logo">
-Boost
-</div>
-<h1>Boost Exception</h1>
-</div>
-<!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
-<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
-<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>exception::what</h3>
-<div class="RenoIncludeDIV"><pre>virtual char const * <span class="RenoLink">what</span>() const throw();</pre>
-</div><h4>Returns:</h4>
-<p>The default implementation is equivalent to return <span class="RenoLink">exception::diagnostic_information</span>(). The signature of boost::<span class="RenoLink">exception::what</span> is identical to the familiar std::exception::what function, so that when an exception type that derives both std::exception and boost::<span class="RenoLink">exception</span> overrides the what function, it overrides both std::exception::what and boost::<span class="RenoLink">exception::what</span>.</p>
-<h4>Throws:</h4>
-<p>Nothing.</p>
-<h4>Note:</h4>
-<p>The return value remains valid until the exception object from which it is obtained is destroyed or modified.</p>
-</div><h3>See also:</h3>
-<div class="RenoPageList"><a href="exception.html">exception<br/>
-</a></div>
-<!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
-<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
-<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div id="footer">
-<p>&nbsp;</p>
-<hr/>
-<p>
-<a class="logo" href="http://jigsaw.w3.org/css-validator/validator?uri=http://revergestudios.com/boost-exception/reno.css"><img class="logo_pic" src="valid-css.png" alt="Valid CSS" height="31" width="88"/></a>
-<a class="logo" href="http://validator.w3.org/check?uri=referer"><img class="logo_pic" src="valid-xhtml.png" alt="Valid XHTML 1.0" height="31" width="88"/></a>
-<small>Copyright (c) 2006-2008 by Emil Dotchevski and Reverge Studios, Inc.<br/>
-Distributed under the Boost Software License, Version 1.0.</small>
-</p>
-</div>
-</div>
-</div>
-</div>
-</body>
-</html>

Modified: branches/CMake/release/libs/exception/doc/get_error_info.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/get_error_info.html (original)
+++ branches/CMake/release/libs/exception/doc/get_error_info.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>get_error_info</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>get_error_info</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -28,17 +29,23 @@
     <span class="RenoLink">shared_ptr</span>&lt;typename ErrorInfo::value_type const&gt; <span class="RenoLink">get_error_info</span>( E const &amp; x );</span>
     }</pre>
 </div><h4>Requirements:</h4>
-<p>The type of the x object must derive from boost::<span class="RenoLink">exception</span>; ErrorInfo must be an instance of the <span class="RenoLink">error_info</span> template.</p>
+<div><ul><li> ErrorInfo must be an instance of the <span class="RenoLink">error_info</span> template.</li>
+<li> E must be polymorphic.</li>
+</ul></div>
 <h4>Returns:</h4>
-<p>If x does not store an object of type ErrorInfo, returns an empty <span class="RenoLink">shared_ptr</span>; otherwise returns pointer to the stored value. Use <span class="RenoLink">operator<<</span> to store values in exception objects.</p>
+<div><ul><li> If dynamic_cast&lt;boost::<span class="RenoLink">exception</span> const *&gt;(&amp;x) is 0, or if x does not store an object of type ErrorInfo, the returned value is an empty shared_ptr.</li>
+<li> Otherwise, the returned shared_ptr points to the stored value (use <span class="RenoLink">operator<<</span> to store values in exception objects.) The shared_ptr is valid even after x has been destroyed.</li>
+</ul></div>
 <h4>Throws:</h4>
 <p>Nothing.</p>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_error_info_hpp.html">boost/exception/info.hpp<br/>
 </a><a href="error_info.html">error_info<br/>
 </a><a href="exception.html">exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/name_idx.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/name_idx.html (original)
+++ branches/CMake/release/libs/exception/doc/name_idx.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,9 +19,11 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<h1>Index</h1>
+<div class="RenoAutoDIV"><h1>Index</h1>
+</div>
 <div class="RenoIndex"><h3>B</h3>
 <p>BOOST_ERROR_INFO</p>
+<p>Boost Exception</p>
 <h3>b</h3>
 <p>boost/exception.hpp</p>
 <p>boost/exception/diagnostic_information.hpp</p>
@@ -36,6 +38,8 @@
 <h3>c</h3>
 <p>copy_exception</p>
 <p>current_exception</p>
+<h3>D</h3>
+<p>Diagnostic Information</p>
 <h3>d</h3>
 <p>diagnostic_information</p>
 <h3>e</h3>
@@ -49,16 +53,16 @@
 <p>exception_ptr</p>
 <h3>g</h3>
 <p>get_error_info</p>
+<h3>I</h3>
+<p>Integrating Boost Exception in Existing Exception Class Hierarchies</p>
 <h3>o</h3>
 <p>operator<</exception</p>
 <p>operator<</tuple</p>
 <h3>r</h3>
 <p>rethrow_exception</p>
 <h3>T</h3>
-<p>Tutorial: Diagnostic Information</p>
-<p>Tutorial: Integrating Boost Exception in Existing Exception Class Hierarchies</p>
-<p>Tutorial: Transporting of Arbitrary Data to the Catch Site</p>
-<p>Tutorial: Transporting of Exceptions between Threads</p>
+<p>Transporting of Arbitrary Data to the Catch Site</p>
+<p>Transporting of Exceptions Between Threads</p>
 <h3>t</h3>
 <p>throw_exception</p>
 <h3>u</h3>

Modified: branches/CMake/release/libs/exception/doc/operator_shl_exception.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/operator_shl_exception.html (original)
+++ branches/CMake/release/libs/exception/doc/operator_shl_exception.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>operator&lt;&lt;, error_info overload</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>operator&lt;&lt;/exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;<span class="RenoBR">&nbsp;</span><br/></p>
 <pre>namespace
 boost
@@ -30,23 +31,25 @@
 </div><h4>Requirements:</h4>
 <p>E must be boost::<span class="RenoLink">exception</span>, or a type that derives (indirectly) from boost::<span class="RenoLink">exception</span>.</p>
 <h4>Effects:</h4>
-<p>Stores a copy of v into x. If x already contains data of type <span class="RenoLink">error_info</span>&lt;Tag1,T1&gt;, that data is overwritten.</p>
+<p>Stores a copy of v into x. If x already contains data of type <span class="RenoLink">error_info</span>&lt;Tag,T&gt;, that data is overwritten.</p>
 <h4>Returns:</h4>
 <p>x.</p>
 <div class="RenoIncludeDIV"><h4>Throws:</h4>
 <p>std::bad_alloc, or any exception emitted by the T copy constructor.</p>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="BOOST_ERROR_INFO.html">BOOST_ERROR_INFO<br/>
 </a><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_error_info_hpp.html">boost/exception/info.hpp<br/>
+</a><a href="tutorial_diagnostic_information.html">Diagnostic Information<br/>
 </a><a href="error_info.html">error_info<br/>
 </a><a href="exception.html">exception<br/>
 </a><a href="exception_diagnostic_information.html">exception::diagnostic_information<br/>
 </a><a href="exception_constructors.html">exception::exception<br/>
 </a><a href="get_error_info.html">get_error_info<br/>
-</a><a href="tutorial_diagnostic_information.html">Tutorial: Diagnostic Information<br/>
-</a><a href="tutorial_enable_error_info.html">Tutorial: Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
+</a><a href="tutorial_enable_error_info.html">Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/operator_shl_tuple.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/operator_shl_tuple.html (original)
+++ branches/CMake/release/libs/exception/doc/operator_shl_tuple.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>operator&lt;&lt;, tuple overload</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>operator&lt;&lt;/tuple</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception/info_tuple.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -39,10 +40,12 @@
 <p>x.</p>
 <div class="RenoIncludeDIV"><h4>Throws:</h4>
 <p>std::bad_alloc, or any exception emitted by T1..TN copy constructor.</p>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_error_info_group_hpp.html">boost/exception/info_tuple.hpp<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/reno.css
==============================================================================
--- branches/CMake/release/libs/exception/doc/reno.css (original)
+++ branches/CMake/release/libs/exception/doc/reno.css 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -87,7 +87,7 @@
         border-left: 0;
         border-right: 0;
         font-size: 10pt;
- background-color: #F0F0F0;
+ background-color: #E5E5E5;
         padding-top: 5pt;
         padding-bottom: 5pt;
         padding-left: 5pt;

Modified: branches/CMake/release/libs/exception/doc/rethrow_exception.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/rethrow_exception.html (original)
+++ branches/CMake/release/libs/exception/doc/rethrow_exception.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>rethrow_exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>rethrow_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -30,10 +31,12 @@
 <p>ep shall not be null.</p>
 <h4>Throws:</h4>
 <p>The exception to which ep refers.</p>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_cloning_hpp.html">boost/exception_ptr.hpp<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/source/boost-exception.reno
==============================================================================
--- branches/CMake/release/libs/exception/doc/source/boost-exception.reno (original)
+++ branches/CMake/release/libs/exception/doc/source/boost-exception.reno 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,12 +13,7 @@
                                         </type>
                                         <object>
                                                 <source>
- <path>
- <empty>0</empty>
- <string>../../../..</string>
- <type>1</type>
- <base>0</base>
- </path>
+ <string>../..;../../../../boost</string>
                                                 </source>
                                                 <match>
                                                         <string>.*\.(cpp|hpp|h)$</string>
@@ -34,7 +29,7 @@
                                         </type>
                                         <object>
                                                 <sorted>
- <size>9</size>
+ <size>7</size>
                                                         <pair>
                                                                 <string>default</string>
                                                                 <shared_ptr>
@@ -58,28 +53,32 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
- <size>1</size>
- <strong>CAB4D823BD4720B71E1CA5BE482AC95B42A9E07CD5E08671EA23184635F281A2</strong>
- <weak>3077708282</weak>
- <size>89</size>
- <position>323</position>
+ <size>2</size>
+ <strong>D1AA2FC554CD67A50917905B0E9CCA2EBC1A9BA97368757B36ADF8419756ECF1</strong>
+ <weak>85276724</weak>
+ <size>4917</size>
+ <position>514</position>
+ <strong>156B870761DB092CE4269C1173B479A344A1041BA2B883765AF19A72B371D776</strong>
+ <weak>3239976720</weak>
+ <size>117</size>
+ <position>4794</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../../../boost/exception/error_info.hpp</string>
+ <string>../../../../boost/exception_ptr.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>boost/exception/error_info.hpp</string>
+ <string>rethrow_exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>exception_error_info_value_hpp</string>
+ <string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -87,7 +86,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -103,25 +102,29 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
- <size>1</size>
- <strong>49D31376D97691F7C84A134B5D8C7C66EF1ED6901D376CA250D634AE2B38AB5E</strong>
- <weak>549270010</weak>
- <size>163</size>
- <position>572</position>
+ <size>2</size>
+ <strong>D1AA2FC554CD67A50917905B0E9CCA2EBC1A9BA97368757B36ADF8419756ECF1</strong>
+ <weak>85276724</weak>
+ <size>4917</size>
+ <position>514</position>
+ <strong>ED09F845070FF7D381BE5EFB6B55313FD09FBA16B64B69992410380EFA45519C</strong>
+ <weak>2051939590</weak>
+ <size>78</size>
+ <position>433</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../../../boost/exception/info.hpp</string>
+ <string>../../../../boost/exception_ptr.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>BOOST_ERROR_INFO</string>
+ <string>exception_ptr</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
                                                                                                                                 <string></string>
@@ -132,7 +135,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -149,14 +152,14 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>2</size>
- <strong>C1FAB39F3B09548EC7B197853DC956883AE1C3A29A8A9D2FBDB97D8BEC76CD75</strong>
- <weak>173037458</weak>
- <size>6345</size>
+ <strong>35F026FF4EC46450D19A8F970D6E39B881DA6B0FC2E95774CCADC5E34C9D57F1</strong>
+ <weak>1990614462</weak>
+ <size>6369</size>
                                                                                                                                                         <position>737</position>
- <strong>65D13C1BB0A16823F69A32BAB56A51CA317075C7FC8B7441EE0D9B57AF5AB2AC</strong>
- <weak>2592266329</weak>
- <size>712</size>
- <position>1700</position>
+ <strong>61B57D0AE5F1033900B7DE4401AC1633F4639471A19194D5660F6C43465FCE3D</strong>
+ <weak>1668078447</weak>
+ <size>724</size>
+ <position>1712</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
@@ -181,7 +184,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -198,27 +201,27 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
- <strong>48A0C42CCA66A6C935724A9B7BD30B6B3DF16A0A808C804A585A5CC90D85DC5E</strong>
- <weak>1606229033</weak>
- <size>1723</size>
- <position>91</position>
+ <strong>9CC0F5ADB1C04555FD571DABD1D7D6775D8B11977ECC8320AD4451FC435E89A1</strong>
+ <weak>1325628148</weak>
+ <size>3147</size>
+ <position>323</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../../../boost/throw_exception.hpp</string>
+ <string>../../../../boost/exception/exception.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>boost/throw_exception.hpp</string>
+ <string>boost/exception/exception.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>throw_exception_hpp</string>
+ <string>exception_exception_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -226,7 +229,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -243,9 +246,9 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
- <strong>9CC0F5ADB1C04555FD571DABD1D7D6775D8B11977ECC8320AD4451FC435E89A1</strong>
- <weak>1325628148</weak>
- <size>3147</size>
+ <strong>E312FADF4C02B7A6CB1BE1EC16F05A21C20CBA3282D4EAFC8EBE0BA151F24779</strong>
+ <weak>2820045995</weak>
+ <size>5108</size>
                                                                                                                                                         <position>323</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
@@ -253,17 +256,17 @@
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../../../boost/exception/exception.hpp</string>
+ <string>../../../../boost/exception_ptr.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>boost/exception/exception.hpp</string>
+ <string>boost/exception_ptr.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>exception_exception_hpp</string>
+ <string>exception_cloning_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -271,7 +274,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -288,27 +291,27 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
- <strong>CE411E21EE9878B55B5906D033A0FC52574FB59D8A8CECB75405E9B1C9D782DB</strong>
- <weak>1173443713</weak>
- <size>308</size>
- <position>302</position>
+ <strong>49D31376D97691F7C84A134B5D8C7C66EF1ED6901D376CA250D634AE2B38AB5E</strong>
+ <weak>549270010</weak>
+ <size>163</size>
+ <position>572</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../example/logging.cpp</string>
+ <string>../../../../boost/exception/info.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>Tutorial: Diagnostic Information</string>
+ <string>BOOST_ERROR_INFO</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>tutorial_diagnostic_information</string>
+ <string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -316,7 +319,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -333,35 +336,33 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
- <strong>D9B8E6AA12A4F33953B1A961FA590C5A3840234B6531CA8C04AC985AD5800835</strong>
- <weak>2432554768</weak>
- <size>702</size>
- <position>408</position>
+ <strong>F4C951B28F7DE500973AA3DFAA99F2BADA6EDAFA2B406C30BEF3B7FBE6FD57D7</strong>
+ <weak>2263754923</weak>
+ <size>982</size>
+ <position>306</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../example/enable_error_info.cpp</string>
+ <string>../../example/error_info_2.cpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>Tutorial: Integrating Boost Exception in Existing Exception Class Hierarchies</string>
+ <string>adding of arbitrary data to active exception objects</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>tutorial_enable_error_info</string>
+ <string>adding_data_later</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -395,7 +396,7 @@
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>Tutorial: Adding Grouped Data to Exceptions</string>
+ <string>adding grouped data to exceptions</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
                                                                                                                                 <string>grouping_data</string>
@@ -421,33 +422,35 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
- <strong>187BFD2B78A0DD006717B5B06FFD465E2468F521C32A86FB793F7A68AB5417F3</strong>
- <weak>4276724153</weak>
- <size>574</size>
- <position>382</position>
+ <strong>A9C65F105342D728DE9C996079E82DF25408B94A272090039FAAC12D29659F69</strong>
+ <weak>2378831669</weak>
+ <size>94</size>
+ <position>227</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../example/error_info_1.cpp</string>
+ <string>../../../../boost/exception/enable_current_exception.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>Tutorial: Adding of Arbitrary Data at the Point of the Throw</string>
+ <string>boost/exception/enable_current_exception.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>adding_data_at_throw</string>
+ <string>exception_enable_exception_cloning_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -464,28 +467,28 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>2</size>
- <strong>07430F64896197A110C276D8A14CA8A75FBA482DDF50CD40D689A1898C84D054</strong>
- <weak>1712604289</weak>
- <size>1296</size>
- <position>396</position>
- <strong>BCCB91D0DCA6EC45F29CB70CB64AEA6AB54F32F8F1D1937C4CB80B059346DC81</strong>
- <weak>695614553</weak>
- <size>1264</size>
- <position>26</position>
+ <strong>D1AA2FC554CD67A50917905B0E9CCA2EBC1A9BA97368757B36ADF8419756ECF1</strong>
+ <weak>85276724</weak>
+ <size>4917</size>
+ <position>514</position>
+ <strong>F87D7E0321BDDAE23D5A6667CB12116411468AEC54E3B35FB9C8CA94BFECA41E</strong>
+ <weak>1149388739</weak>
+ <size>296</size>
+ <position>4496</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../../../boost/exception/info_tuple.hpp</string>
+ <string>../../../../boost/exception_ptr.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>operator&lt;&lt;/tuple</string>
+ <string>copy_exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
                                                                                                                                 <string></string>
@@ -496,7 +499,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -512,7 +515,7 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
- <size>4</size>
+ <size>2</size>
                                                                                                                                                         <strong>13F58566E4D9F20B49F3F30B28528AEE562CD709108ADC1AE19A2F01D86C62F4</strong>
                                                                                                                                                         <weak>1430141721</weak>
                                                                                                                                                         <size>2967</size>
@@ -521,14 +524,6 @@
                                                                                                                                                         <weak>4111403263</weak>
                                                                                                                                                         <size>1924</size>
                                                                                                                                                         <position>878</position>
- <strong>85EE1980CFB24E054EDB1B3BDFA61FD4D65AD0EF248A1A42D4C2552700459327</strong>
- <weak>2238151539</weak>
- <size>428</size>
- <position>923</position>
- <strong>AD3F339F7126003907BCBDB3EF846FCACA895132E1100D202DA67D2B7846EE65</strong>
- <weak>3032091776</weak>
- <size>60</size>
- <position>369</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
@@ -542,10 +537,10 @@
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>exception::~exception</string>
+ <string>exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>exception_destructor</string>
+ <string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -553,7 +548,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;----&#10;!!!See Also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;exception,member&quot; mod=&quot;w&quot;:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -570,27 +565,27 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
- <strong>F19D72C24D904689FEEE070D77ABD19090396E7C7663A5BA80E474F1EDA62861</strong>
- <weak>4081508978</weak>
- <size>6759</size>
- <position>323</position>
+ <strong>CE411E21EE9878B55B5906D033A0FC52574FB59D8A8CECB75405E9B1C9D782DB</strong>
+ <weak>1173443713</weak>
+ <size>308</size>
+ <position>302</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../../../boost/exception/info.hpp</string>
+ <string>../../example/logging.cpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>boost/exception/info.hpp</string>
+ <string>diagnostic information</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>exception_error_info_hpp</string>
+ <string>tutorial_diagnostic_information</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -598,7 +593,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -615,33 +610,35 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
- <strong>5373E336DC4892A41D31694BCA1146382FC3137819A04689CA1F9FFAF1CFAB3B</strong>
- <weak>4050491732</weak>
- <size>466</size>
- <position>307</position>
+ <strong>429F0DE3599A4CC08B9458E2AECA2EAC202AB3471554FE82C307493805E6676E</strong>
+ <weak>4224422781</weak>
+ <size>401</size>
+ <position>323</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../example/cloning_1.cpp</string>
+ <string>../../../../boost/exception.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>Tutorial: Using enable_current_exception at the Time of the Throw</string>
+ <string>boost/exception.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>using_enable_cloning</string>
+ <string>exception_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -657,34 +654,29 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
- <size>1</size>
- <strong>FC684D0DD5A9732B4130F2AB3DB6E0491D0F523E14B7FB738B2019EA2C7F8717</strong>
- <weak>2229778754</weak>
- <size>631</size>
- <position>319</position>
+ <size>0</size>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
- <empty>0</empty>
- <string>../../example/cloning_2.cpp</string>
- <type>0</type>
- <base>0</base>
+ <empty>1</empty>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>Tutorial: Cloning and Re-throwing an Exception</string>
+ <string>transporting of arbitrary data to the catch site</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>cloning_and_rethrowing</string>
+ <string>tutorial_transporting_data</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -701,27 +693,27 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
- <strong>CAD6C404CB725D336A44920D2341ECA131149AB02C368B59028F8147F16737BF</strong>
- <weak>2258638601</weak>
- <size>94</size>
- <position>227</position>
+ <strong>D9B8E6AA12A4F33953B1A961FA590C5A3840234B6531CA8C04AC985AD5800835</strong>
+ <weak>2432554768</weak>
+ <size>702</size>
+ <position>408</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../../../boost/exception/info_tuple.hpp</string>
+ <string>../../example/enable_error_info.cpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>boost/exception/info_tuple.hpp</string>
+ <string>integrating boost exception in existing exception class hierarchies</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>exception_error_info_group_hpp</string>
+ <string>tutorial_enable_error_info</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -729,7 +721,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -745,21 +737,28 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <strong>749C8E4B47A3FD6A90DD8418BF64C4556537CE6E17ACEB2317D9F81DBEBBB0B0</strong>
+ <weak>1688004766</weak>
+ <size>6783</size>
+ <position>323</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
- <empty>1</empty>
+ <empty>0</empty>
+ <string>../../../../boost/exception/info.hpp</string>
+ <type>0</type>
+ <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>Tutorial: Transporting of Arbitrary Data to the Catch Site</string>
+ <string>boost/exception/info.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>tutorial_transporting_data</string>
+ <string>exception_error_info_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -767,7 +766,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -784,35 +783,33 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
- <strong>CB567E3390BC92DA06F9899E700792C3790D3707C024CA21D15C930D908AD10A</strong>
- <weak>3422645546</weak>
- <size>5023</size>
- <position>323</position>
+ <strong>5373E336DC4892A41D31694BCA1146382FC3137819A04689CA1F9FFAF1CFAB3B</strong>
+ <weak>4050491732</weak>
+ <size>466</size>
+ <position>307</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
+ <string>../../example/cloning_1.cpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>boost/exception_ptr.hpp</string>
+ <string>using enable_current_exception at the time of the throw</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>exception_cloning_hpp</string>
+ <string>using_enable_cloning</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -828,34 +825,40 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
- <size>1</size>
- <strong>F4C951B28F7DE500973AA3DFAA99F2BADA6EDAFA2B406C30BEF3B7FBE6FD57D7</strong>
- <weak>2263754923</weak>
- <size>982</size>
- <position>306</position>
+ <size>2</size>
+ <strong>35F026FF4EC46450D19A8F970D6E39B881DA6B0FC2E95774CCADC5E34C9D57F1</strong>
+ <weak>1990614462</weak>
+ <size>6369</size>
+ <position>737</position>
+ <strong>F839AFD37DC086BB1231B8E87D8EEBD28129649A06FC685AC7DF65595871AE30</strong>
+ <weak>2291609923</weak>
+ <size>1204</size>
+ <position>243</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../example/error_info_2.cpp</string>
+ <string>../../../../boost/exception/info.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>Tutorial: Adding of Arbitrary Data to Active Exception Objects</string>
+ <string>error_info</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>adding_data_later</string>
+ <string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -872,28 +875,28 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>2</size>
- <strong>612485E090D76B2CC43C1A296F813075BA165C2496082E78E939F10B3DA8E09A</strong>
- <weak>1770110914</weak>
- <size>587</size>
- <position>1207</position>
- <strong>60F3F48B87487FA6E0D2CCC0750AF435CC92CEC80BBBF609AC71295031AADD0D</strong>
- <weak>3929437933</weak>
- <size>361</size>
- <position>213</position>
+ <strong>35F026FF4EC46450D19A8F970D6E39B881DA6B0FC2E95774CCADC5E34C9D57F1</strong>
+ <weak>1990614462</weak>
+ <size>6369</size>
+ <position>737</position>
+ <strong>C5A5927411FB16BB27418CF87226A27D6EC66958BD46DC87F97E571CB492E49D</strong>
+ <weak>2066106304</weak>
+ <size>261</size>
+ <position>1449</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
- <string>../../../../boost/throw_exception.hpp</string>
+ <string>../../../../boost/exception/info.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>throw_exception</string>
+ <string>operator&lt;&lt;/exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
                                                                                                                                 <string></string>
@@ -904,7 +907,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -920,21 +923,32 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
- <size>0</size>
+ <size>2</size>
+ <strong>F7633FDCF6615C0199645701EE6E7ACE5CBCD7A7CF6838573791E91ABB3C09F2</strong>
+ <weak>1668435395</weak>
+ <size>1332</size>
+ <position>396</position>
+ <strong>A1F443AF571973A12005D2F7D4AE09A32AAF686FEEAE272EC21512A65EB943E8</strong>
+ <weak>3879093659</weak>
+ <size>1300</size>
+ <position>26</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
- <empty>1</empty>
+ <empty>0</empty>
+ <string>../../../../boost/exception/info_tuple.hpp</string>
+ <type>0</type>
+ <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>Tutorial: Transporting of Exceptions between Threads</string>
+ <string>operator&lt;&lt;/tuple</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>tutorial_exception_ptr</string>
+ <string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -942,7 +956,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -958,742 +972,838 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
- <size>0</size>
+ <size>2</size>
+ <strong>D1AA2FC554CD67A50917905B0E9CCA2EBC1A9BA97368757B36ADF8419756ECF1</strong>
+ <weak>85276724</weak>
+ <size>4917</size>
+ <position>514</position>
+ <strong>9DEEF8ED70BF74F501A96BA5DE5BFD42FAD16DE333ABE189E512C332586FC465</strong>
+ <weak>2250569940</weak>
+ <size>1893</size>
+ <position>2601</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
- <empty>1</empty>
+ <empty>0</empty>
+ <string>../../../../boost/exception_ptr.hpp</string>
+ <type>0</type>
+ <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
- <string>Boost Exception</string>
+ <string>current_exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
- <string>boost-exception</string>
+ <string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>111</size>
- <variant>2</variant>
- <string>!!Introduction&#10;&#10;The purpose of Boost Exception is to ease the design of exception class hierarchies and to help write exception handling and error reporting code.&#10;&#10;It supports transporting of arbitrary data to the catch site, which is otherwise tricky due to the no-throw requirements (15.5.1) for exception classes. Data can be added to any exception object, either directly in the throw-expression (15.1), or at a later time as the exception object propagates up the call stack.&#10;&#10;The ability to add data to exception objects after they have been passed to throw is important, because often some of the information needed to handle an exception is unavailable in the context where the failure is detected. &#10;&#10;Boost Exception also supports (:link http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html|N2179:)-style (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-24</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>|copying:) of exception objects, implemented non-intrusively and automatically by the boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-23</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) function.&#10;&#10;!!Contents&#10;&#10;#Tutorial&#10;##(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-20</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10;##(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-11</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10;##(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-24</id>
- </shared_ptr>
- </weak_ptr>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;##(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-10</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10;#Documentation&#10;##Class (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>26</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>26</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>13F58566E4D9F20B49F3F30B28528AEE562CD709108ADC1AE19A2F01D86C62F4</strong>
- <weak>1430141721</weak>
- <size>2967</size>
- <position>503</position>
- <strong>09CB6839AC1E71887371FB8159C2BFCD273A397C54E07B25CEF2EEF2FA24286A</strong>
- <weak>4111403263</weak>
- <size>1924</size>
- <position>878</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception/exception.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>3</size>
+ <strong>13F58566E4D9F20B49F3F30B28528AEE562CD709108ADC1AE19A2F01D86C62F4</strong>
+ <weak>1430141721</weak>
+ <size>2967</size>
+ <position>503</position>
+ <strong>09CB6839AC1E71887371FB8159C2BFCD273A397C54E07B25CEF2EEF2FA24286A</strong>
+ <weak>4111403263</weak>
+ <size>1924</size>
+ <position>878</position>
+ <strong>BAC52AC87CFA3174B3352140A8DC10BB7F48C945FC87787C3AC96F0FC2CFDB40</strong>
+ <weak>1066412964</weak>
+ <size>165</size>
+ <position>57</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>exception</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception/exception.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>exception::diagnostic_information</string>
+ </title>
+ <file_name>
+ <string></string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;##Transporting of Arbitrary Data to the Catch Site&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>27</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>27</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>C1FAB39F3B09548EC7B197853DC956883AE1C3A29A8A9D2FBDB97D8BEC76CD75</strong>
- <weak>173037458</weak>
- <size>6345</size>
- <position>737</position>
- <strong>F839AFD37DC086BB1231B8E87D8EEBD28129649A06FC685AC7DF65595871AE30</strong>
- <weak>2291609923</weak>
- <size>1204</size>
- <position>243</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception/info.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>2</size>
+ <strong>05061ED1DD1B33224DE28BF86AB10D99286A48DC055D54A19FF93B36F22E8A90</strong>
+ <weak>3225446538</weak>
+ <size>372</size>
+ <position>408</position>
+ <strong>ED09AD72D3766F261A0044B58B9B73AA355EB50B1A8F602E5EE7F68D0D928596</strong>
+ <weak>328425570</weak>
+ <size>340</size>
+ <position>26</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>error_info</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception/diagnostic_information.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>diagnostic_information</string>
+ </title>
+ <file_name>
+ <string></string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>28</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>28</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>C1FAB39F3B09548EC7B197853DC956883AE1C3A29A8A9D2FBDB97D8BEC76CD75</strong>
- <weak>173037458</weak>
- <size>6345</size>
- <position>737</position>
- <strong>27AC1164E0A824D548386BEDCDC81DCAC283F3D286B0ECEE05B039BB8C392BFC</strong>
- <weak>1247954090</weak>
- <size>249</size>
- <position>1449</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception/info.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>4</size>
+ <strong>13F58566E4D9F20B49F3F30B28528AEE562CD709108ADC1AE19A2F01D86C62F4</strong>
+ <weak>1430141721</weak>
+ <size>2967</size>
+ <position>503</position>
+ <strong>09CB6839AC1E71887371FB8159C2BFCD273A397C54E07B25CEF2EEF2FA24286A</strong>
+ <weak>4111403263</weak>
+ <size>1924</size>
+ <position>878</position>
+ <strong>85EE1980CFB24E054EDB1B3BDFA61FD4D65AD0EF248A1A42D4C2552700459327</strong>
+ <weak>2238151539</weak>
+ <size>428</size>
+ <position>923</position>
+ <strong>AD3F339F7126003907BCBDB3EF846FCACA895132E1100D202DA67D2B7846EE65</strong>
+ <weak>3032091776</weak>
+ <size>60</size>
+ <position>369</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>operator&lt;&lt;/exception</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-14</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-7</id>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception/exception.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>exception::~exception</string>
+ </title>
+ <file_name>
+ <string>exception_destructor</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>29</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>29</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>D36D37BED1D119D9CB6040BE4A9694586CC5EFF7A50C30AB59BB06BF70458015</strong>
- <weak>993620616</weak>
- <size>2321</size>
- <position>457</position>
- <strong>248C5047CA4021C30DE8853D6AEBD138D11A76B3571C856A48C0A442D6D040A5</strong>
- <weak>1700162144</weak>
- <size>2289</size>
- <position>26</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception/enable_error_info.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>1</size>
+ <strong>187BFD2B78A0DD006717B5B06FFD465E2468F521C32A86FB793F7A68AB5417F3</strong>
+ <weak>4276724153</weak>
+ <size>574</size>
+ <position>382</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>enable_error_info</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-6</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10;##(:link http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html|N2179:) Transporting of Exceptions between Threads&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>30</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../example/error_info_1.cpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>adding of arbitrary data at the point of the throw</string>
+ </title>
+ <file_name>
+ <string>adding_data_at_throw</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>30</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>973F8368D72D56424349CBB81C8F3015CB9F4F0CD7B23A8C62C3DBADDA37CD57</strong>
- <weak>3833800883</weak>
- <size>4832</size>
- <position>514</position>
- <strong>ED09F845070FF7D381BE5EFB6B55313FD09FBA16B64B69992410380EFA45519C</strong>
- <weak>2051939590</weak>
- <size>78</size>
- <position>409</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>1</size>
+ <strong>FC684D0DD5A9732B4130F2AB3DB6E0491D0F523E14B7FB738B2019EA2C7F8717</strong>
+ <weak>2229778754</weak>
+ <size>631</size>
+ <position>319</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>exception_ptr</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>31</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../example/cloning_2.cpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>cloning and re-throwing an exception</string>
+ </title>
+ <file_name>
+ <string>cloning_and_rethrowing</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>31</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>392208A2FD122D1ED27D128A7BF65F9340218FAAD756EA58D26D2205D32681A6</strong>
- <weak>729208193</weak>
- <size>3206</size>
- <position>506</position>
- <strong>8F3B5E1A267CA225679713F4DDF528041F573BC02D1DBCD8FFEF57EF0AA599B9</strong>
- <weak>4197332561</weak>
- <size>180</size>
- <position>3020</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception/enable_current_exception.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>1</size>
+ <strong>ECAD4A1E70A31D7F87F79F557D107AB0A3C5161CB370139974E08ECAFBE2D32F</strong>
+ <weak>1816954312</weak>
+ <size>457</size>
+ <position>323</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>enable_current_exception</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception/diagnostic_information.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>boost/exception/diagnostic_information.hpp</string>
+ </title>
+ <file_name>
+ <string></string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>32</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>32</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>973F8368D72D56424349CBB81C8F3015CB9F4F0CD7B23A8C62C3DBADDA37CD57</strong>
- <weak>3833800883</weak>
- <size>4832</size>
- <position>514</position>
- <strong>9DEEF8ED70BF74F501A96BA5DE5BFD42FAD16DE333ABE189E512C332586FC465</strong>
- <weak>2250569940</weak>
- <size>1893</size>
- <position>2528</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>1</size>
+ <strong>0C00BEB179039380247D771B12C728884E9A3E5B483AC63CD5789852C7A5CC35</strong>
+ <weak>2506662970</weak>
+ <size>2467</size>
+ <position>323</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>current_exception</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception/enable_error_info.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>boost/exception/enable_error_info.hpp</string>
+ </title>
+ <file_name>
+ <string>exception_enable_error_info_hpp</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>33</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>33</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>973F8368D72D56424349CBB81C8F3015CB9F4F0CD7B23A8C62C3DBADDA37CD57</strong>
- <weak>3833800883</weak>
- <size>4832</size>
- <position>514</position>
- <strong>921FBF6991E17349BFF2AD6F165372F85AA9457DDB28E502ABB6B392BBA6B529</strong>
- <weak>3119269037</weak>
- <size>284</size>
- <position>4423</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>1</size>
+ <strong>CAB4D823BD4720B71E1CA5BE482AC95B42A9E07CD5E08671EA23184635F281A2</strong>
+ <weak>3077708282</weak>
+ <size>89</size>
+ <position>323</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>copy_exception</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception/error_info.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>boost/exception/error_info.hpp</string>
+ </title>
+ <file_name>
+ <string>exception_error_info_value_hpp</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>34</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>34</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>973F8368D72D56424349CBB81C8F3015CB9F4F0CD7B23A8C62C3DBADDA37CD57</strong>
- <weak>3833800883</weak>
- <size>4832</size>
- <position>514</position>
- <strong>156B870761DB092CE4269C1173B479A344A1041BA2B883765AF19A72B371D776</strong>
- <weak>3239976720</weak>
- <size>117</size>
- <position>4709</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>1</size>
+ <strong>CAD6C404CB725D336A44920D2341ECA131149AB02C368B59028F8147F16737BF</strong>
+ <weak>2258638601</weak>
+ <size>94</size>
+ <position>227</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>rethrow_exception</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception/info_tuple.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>boost/exception/info_tuple.hpp</string>
+ </title>
+ <file_name>
+ <string>exception_error_info_group_hpp</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>35</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>35</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>973F8368D72D56424349CBB81C8F3015CB9F4F0CD7B23A8C62C3DBADDA37CD57</strong>
- <weak>3833800883</weak>
- <size>4832</size>
- <position>514</position>
- <strong>9567A192BF523DDF741004FFF5BDB044D715FEB7CE9AEC89ACC25C1C33E48C4E</strong>
- <weak>2232115228</weak>
- <size>381</size>
- <position>26</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>1</size>
+ <strong>07959353ADCC10CF96D16F87F2D01195D75C3A6A2A797513ED3DDFA2F80E2E09</strong>
+ <weak>303643772</weak>
+ <size>1838</size>
+ <position>91</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>unknown_exception</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/throw_exception.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>boost/throw_exception.hpp</string>
+ </title>
+ <file_name>
+ <string>throw_exception_hpp</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;##(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>36</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>36</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>2</size>
- <strong>05061ED1DD1B33224DE28BF86AB10D99286A48DC055D54A19FF93B36F22E8A90</strong>
- <weak>3225446538</weak>
- <size>372</size>
- <position>408</position>
- <strong>ED09AD72D3766F261A0044B58B9B73AA355EB50B1A8F602E5EE7F68D0D928596</strong>
- <weak>328425570</weak>
- <size>340</size>
- <position>26</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception/diagnostic_information.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>3</size>
+ <strong>13F58566E4D9F20B49F3F30B28528AEE562CD709108ADC1AE19A2F01D86C62F4</strong>
+ <weak>1430141721</weak>
+ <size>2967</size>
+ <position>503</position>
+ <strong>09CB6839AC1E71887371FB8159C2BFCD273A397C54E07B25CEF2EEF2FA24286A</strong>
+ <weak>4111403263</weak>
+ <size>1924</size>
+ <position>878</position>
+ <strong>BACD79DFB4C710C1A67687FC6344DF2251E2379613C2DF5B2729B2CD37E24EA3</strong>
+ <weak>458367129</weak>
+ <size>154</size>
+ <position>246</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>diagnostic_information</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10;##(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-23</id>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception/exception.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>exception::exception</string>
+ </title>
+ <file_name>
+ <string>exception_constructors</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;##Headers&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>37</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>37</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>1</size>
- <strong>429F0DE3599A4CC08B9458E2AECA2EAC202AB3471554FE82C307493805E6676E</strong>
- <weak>4224422781</weak>
- <size>401</size>
- <position>323</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>2</size>
+ <strong>D1AA2FC554CD67A50917905B0E9CCA2EBC1A9BA97368757B36ADF8419756ECF1</strong>
+ <weak>85276724</weak>
+ <size>4917</size>
+ <position>514</position>
+ <strong>A098B6FA5BC8E72E0E69C0323195FCC142AE807564C6892FCBD88588F2FBE049</strong>
+ <weak>2579522516</weak>
+ <size>405</size>
+ <position>26</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>boost/exception.hpp</string>
- </title>
- <file_name>
- <string>exception_hpp</string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception_ptr.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>unknown_exception</string>
+ </title>
+ <file_name>
+ <string></string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>38</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>38</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>1</size>
- <strong>ECAD4A1E70A31D7F87F79F557D107AB0A3C5161CB370139974E08ECAFBE2D32F</strong>
- <weak>1816954312</weak>
- <size>457</size>
- <position>323</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception/diagnostic_information.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>2</size>
+ <strong>FA5027D9799B8059059C23397F469D6EF6328DC23E92E0BE0FF5BE019A576174</strong>
+ <weak>1806359597</weak>
+ <size>3234</size>
+ <position>506</position>
+ <strong>DF9EA87B0140AACF4422F1B76F6A6A409C15F32858BBBA85A35981A824C56BA9</strong>
+ <weak>1137981799</weak>
+ <size>192</size>
+ <position>3036</position>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>boost/exception/diagnostic_information.hpp</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception/enable_current_exception.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>enable_current_exception</string>
+ </title>
+ <file_name>
+ <string></string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>39</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>39</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
                                                                                                                                 <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>1</size>
- <strong>A9C65F105342D728DE9C996079E82DF25408B94A272090039FAAC12D29659F69</strong>
- <weak>2378831669</weak>
- <size>94</size>
- <position>227</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception/enable_current_exception.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
+ <stream_hook_path>
+ <container>
+ <size>0</size>
+ </container>
+ </stream_hook_path>
                                                                                                                                 </hook>
- <title>
- <string>boost/exception/enable_current_exception.hpp</string>
- </title>
- <file_name>
- <string>exception_enable_exception_cloning_hpp</string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
+ <file>
+ <path>
+ <empty>1</empty>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>Index</string>
+ </title>
+ <file_name>
+ <string>name_idx</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
- <variant>1</variant>
- <weak_ptr>
+ <string>(:auto !:)&#10;&#10;(:pagelist fmt=&quot;index&quot; except_tags=&quot;index,noindex&quot; mod=&quot;w&quot;:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>40</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
+ <hook>
+ <stream_hook_path>
+ <container>
+ <size>2</size>
+ <strong>7ACC4E316D4EDB3EC7AEC35FED3ADB47DDF75D575028D7BCD11C5233E4F4A277</strong>
+ <weak>4268848542</weak>
+ <size>2333</size>
+ <position>457</position>
+ <strong>61DE70107961C0B9A65674017F91FF85190CF84B4F3B0CA7AC04A7E16DE80B37</strong>
+ <weak>3187961206</weak>
+ <size>2301</size>
+ <position>26</position>
+ </container>
+ </stream_hook_path>
+ </hook>
+ <file>
+ <path>
+ <empty>0</empty>
+ <string>../../../../boost/exception/enable_error_info.hpp</string>
+ <type>0</type>
+ <base>0</base>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>enable_error_info</string>
+ </title>
+ <file_name>
+ <string></string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>41</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
+ <hook>
+ <stream_hook_path>
+ <container>
+ <size>0</size>
+ </container>
+ </stream_hook_path>
+ </hook>
+ <file>
+ <path>
+ <empty>1</empty>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>transporting of exceptions between threads</string>
+ </title>
+ <file_name>
+ <string>tutorial_exception_ptr</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>42</id>
+ <type>
+ <string>reno_context</string>
+ </type>
+ <object>
+ <hook>
+ <hook>
+ <stream_hook_path>
+ <container>
+ <size>0</size>
+ </container>
+ </stream_hook_path>
+ </hook>
+ <file>
+ <path>
+ <empty>1</empty>
+ </path>
+ </file>
+ </hook>
+ <title>
+ <string>boost exception</string>
+ </title>
+ <file_name>
+ <string>boost-exception</string>
+ </file_name>
+ </object>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>113</size>
+ <variant>2</variant>
+ <string>!!Introduction&#10;&#10;The purpose of Boost Exception is to ease the design of exception class hierarchies and to help write exception handling and error reporting code.&#10;&#10;It supports transporting of arbitrary data to the catch site, which is otherwise tricky due to the no-throw requirements (15.5.1) for exception types. Data can be added to any exception object, either directly in the throw-expression (15.1), or at a later time as the exception object propagates up the call stack.&#10;&#10;The ability to add data to exception objects after they have been passed to throw is important, because often some of the information needed to handle an exception is unavailable in the context where the failure is detected. &#10;&#10;Boost Exception also supports (:link http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html|N2179:)-style (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-41</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>|copying:) of exception objects, implemented non-intrusively and automatically by the boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>40</id>
+ <id>43</id>
                                                                                                                         <type>
                                                                                                                                 <string>reno_context</string>
                                                                                                                         </type>
@@ -1702,167 +1812,146 @@
                                                                                                                                         <hook>
                                                                                                                                                 <stream_hook_path>
                                                                                                                                                         <container>
- <size>1</size>
- <strong>091CEE4B0BEBD40D864A1BC8288C10A248BEFFD4E472647343F2BEDE0BDE0F10</strong>
- <weak>2732630308</weak>
- <size>2455</size>
- <position>323</position>
+ <size>2</size>
+ <strong>612485E090D76B2CC43C1A296F813075BA165C2496082E78E939F10B3DA8E09A</strong>
+ <weak>1770110914</weak>
+ <size>587</size>
+ <position>1322</position>
+ <strong>60F3F48B87487FA6E0D2CCC0750AF435CC92CEC80BBBF609AC71295031AADD0D</strong>
+ <weak>3929437933</weak>
+ <size>361</size>
+ <position>213</position>
                                                                                                                                                         </container>
                                                                                                                                                 </stream_hook_path>
                                                                                                                                         </hook>
                                                                                                                                         <file>
                                                                                                                                                 <path>
                                                                                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/enable_error_info.hpp</string>
+ <string>../../../../boost/throw_exception.hpp</string>
                                                                                                                                                         <type>0</type>
                                                                                                                                                         <base>0</base>
                                                                                                                                                 </path>
                                                                                                                                         </file>
                                                                                                                                 </hook>
                                                                                                                                 <title>
- <string>boost/exception/enable_error_info.hpp</string>
+ <string>throw_exception</string>
                                                                                                                                 </title>
                                                                                                                                 <file_name>
- <string>exception_enable_error_info_hpp</string>
+ <string></string>
                                                                                                                                 </file_name>
                                                                                                                         </object>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
+ <string>:) function.&#10;&#10;!!Contents&#10;&#10;#Tutorial&#10;##(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-5</id>
+ <id>-18</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
+ <string> mod=&quot;w&quot;:)&#10;##(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-9</id>
+ <id>-19</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
+ <string> mod=&quot;w&quot;:)&#10;##(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-16</id>
+ <id>-41</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
+ <string> mod=&quot;w&quot;:)&#10;##(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-19</id>
+ <id>-16</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
+ <string> mod=&quot;w&quot;:)&#10;#Documentation&#10;##Class (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-21</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;###(:link </string>
+ <string>:)&#10;##Transporting of Arbitrary Data to the Catch Site&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-8</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;#(:link </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>41</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
- <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>0</size>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>1</empty>
- </path>
- </file>
- </hook>
- <title>
- <string>Index</string>
- </title>
- <file_name>
- <string>name_idx</string>
- </file_name>
- </object>
+ <id>-23</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;&#10;&#10;!!Synopsis&#10;&#10;`#include &lt;(:link </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-37</id>
+ <id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-9</id>
+ <id>-7</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-16</id>
+ <id>-40</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-19</id>
+ <id>-10</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <string>:)&#10;##(:link http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html|N2179:) Transporting of Exceptions between Threads&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-40</id>
+ <id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -1871,43 +1960,43 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-21</id>
+ <id>-25</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-39</id>
+ <id>-14</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-8</id>
+ <id>-5</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;&#10;!!Class exception&#10;&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-37</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;&#10;!!Transporting of Arbitrary Data to the Catch Site&#10;&#10;(:include </string>
+ <string>:)&#10;##(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -1916,79 +2005,79 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:)&#10;##(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-28</id>
+ <id>-43</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:)&#10;##Headers&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-7</id>
+ <id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-29</id>
+ <id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-6</id>
+ <id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;!!Transporting of Exceptions between Threads&#10;&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-32</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-31</id>
+ <id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-32</id>
+ <id>-8</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-33</id>
+ <id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -1997,7 +2086,16 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:)&#10;###(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-9</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -2006,1760 +2104,160 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;&#10;!!Printing Diagnostic Information&#10;&#10;(:include </string>
+ <string>:)&#10;#(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-36</id>
+ <id>-39</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;&#10;!!Throwing Exceptions&#10;&#10;(:include </string>
+ <string>:)&#10;&#10;&#10;!!Synopsis&#10;&#10;`#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-23</id>
+ <id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso,exception&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-31</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-33</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-34</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-35</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-36</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-37</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-38</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-39</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-40</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-8</id>
+ </shared_ptr>
+ </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-41</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
+ <string> api pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-20</id>
+ </shared_ptr>
+ </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>!Index&#10;&#10;(:pagelist fmt=&quot;index&quot; except_tags=&quot;index,noindex&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>42</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
- <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>3</size>
- <strong>13F58566E4D9F20B49F3F30B28528AEE562CD709108ADC1AE19A2F01D86C62F4</strong>
- <weak>1430141721</weak>
- <size>2967</size>
- <position>503</position>
- <strong>09CB6839AC1E71887371FB8159C2BFCD273A397C54E07B25CEF2EEF2FA24286A</strong>
- <weak>4111403263</weak>
- <size>1924</size>
- <position>878</position>
- <strong>BAC52AC87CFA3174B3352140A8DC10BB7F48C945FC87787C3AC96F0FC2CFDB40</strong>
- <weak>1066412964</weak>
- <size>165</size>
- <position>57</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception/exception.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
- </hook>
- <title>
- <string>exception::diagnostic_information</string>
- </title>
- <file_name>
- <string></string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
+ <string> api pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-34</id>
+ </shared_ptr>
+ </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>43</id>
- <type>
- <string>reno_context</string>
- </type>
- <object>
- <hook>
- <hook>
- <stream_hook_path>
- <container>
- <size>3</size>
- <strong>13F58566E4D9F20B49F3F30B28528AEE562CD709108ADC1AE19A2F01D86C62F4</strong>
- <weak>1430141721</weak>
- <size>2967</size>
- <position>503</position>
- <strong>09CB6839AC1E71887371FB8159C2BFCD273A397C54E07B25CEF2EEF2FA24286A</strong>
- <weak>4111403263</weak>
- <size>1924</size>
- <position>878</position>
- <strong>BACD79DFB4C710C1A67687FC6344DF2251E2379613C2DF5B2729B2CD37E24EA3</strong>
- <weak>458367129</weak>
- <size>154</size>
- <position>246</position>
- </container>
- </stream_hook_path>
- </hook>
- <file>
- <path>
- <empty>0</empty>
- <string>../../../../boost/exception/exception.hpp</string>
- <type>0</type>
- <base>0</base>
- </path>
- </file>
- </hook>
- <title>
- <string>exception::exception</string>
- </title>
- <file_name>
- <string>exception_constructors</string>
- </file_name>
- </object>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>(:include include:)&#10;&#10;!!!See also:&#10;&#10;(:pagelist link=&quot;backlink&quot; except_tags=&quot;noalso&quot;:)&#10;</string>
- </container>
- </pair>
- </sorted>
- </object>
- </shared_ptr>
- </pair>
- <pair>
- <string>headers</string>
- <shared_ptr>
- <id>44</id>
- <type>
- <string>reno_layer</string>
- </type>
- <object>
- <sorted>
- <size>39</size>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-5</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-6</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-7</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-8</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-9</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-10</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-11</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-12</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-13</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-14</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-15</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-16</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-17</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-18</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-19</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-20</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-21</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-22</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-23</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-24</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-25</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@#include &lt;</string>
- <variant>1</variant>
- <weak_ptr>
- <expired>1</expired>
- </weak_ptr>
- <variant>2</variant>
- <string>&gt;@]</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-31</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-33</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-34</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@#include &lt;</string>
- <variant>1</variant>
- <weak_ptr>
- <expired>1</expired>
- </weak_ptr>
- <variant>2</variant>
- <string>&gt;@]</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-35</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-36</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-37</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-38</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-39</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-40</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-41</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-42</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-43</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- </sorted>
- </object>
- </shared_ptr>
- </pair>
- <pair>
- <string>ctors</string>
- <shared_ptr>
- <id>45</id>
- <type>
- <string>reno_layer</string>
- </type>
- <object>
- <sorted>
- <size>39</size>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-5</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-6</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-7</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-8</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-9</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-10</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-11</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-12</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-13</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-14</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-15</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-16</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-17</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-18</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-19</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-20</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-21</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-22</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-23</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-24</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-25</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-31</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-33</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-34</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-35</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-36</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-37</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-38</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-39</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-40</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-41</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-42</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-43</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- </sorted>
- </object>
- </shared_ptr>
- </pair>
- <pair>
- <string>free</string>
- <shared_ptr>
- <id>46</id>
- <type>
- <string>reno_layer</string>
- </type>
- <object>
- <sorted>
- <size>39</size>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-5</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-6</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-7</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-8</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-9</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-10</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-11</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-12</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-13</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-14</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-15</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-16</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-17</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-18</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-19</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-20</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-21</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-22</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-23</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-24</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-25</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-31</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-33</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-34</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-35</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-36</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-37</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-38</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-39</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-40</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-41</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-42</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-43</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- </sorted>
- </object>
- </shared_ptr>
- </pair>
- <pair>
- <string>decl</string>
- <shared_ptr>
- <id>47</id>
- <type>
- <string>reno_layer</string>
- </type>
- <object>
- <sorted>
- <size>39</size>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-5</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>3</size>
+ <string> api pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-32</id>
+ </shared_ptr>
+ </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>[@template &lt;class Tag, class T&gt;&#10;class (:link </string>
+ <string> api pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:);@]&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-6</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>9</size>
+ <string> api pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-9</id>
+ </shared_ptr>
+ </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>[@typedef (:link </string>
+ <string> api pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;struct tag_throw_function,char const *&gt; throw_function;&#10;typedef (:link </string>
+ <string> api pre_indent=&quot;4&quot;:)&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-35</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;struct tag_throw_file,char const *&gt; throw_file;&#10;typedef (:link </string>
+ <string> api pre_indent=&quot;4&quot;:)&#10; }@]&#10;&#10;!!Class exception&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;struct tag_throw_line,int&gt; throw_line;&#10;&#10;#define (:link </string>
+ <string>:)&#10;&#10;!!Transporting of Arbitrary Data to the Catch Site&#10;&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-22</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-23</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-24</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-7</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-40</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-10</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;!!Transporting of Exceptions between Threads&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -3768,80 +2266,126 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)\&#10; ::boost::throw_function(BOOST_CURRENT_FUNCTION) &lt;&lt;\&#10; ::boost::throw_file(__FILE__) &lt;&lt;\&#10; ::boost::throw_line((int)__LINE__)@]&#10;</string>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-14</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-5</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-37</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;&#10;!!Printing Diagnostic Information&#10;&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-27</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;&#10;!!Throwing Exceptions&#10;&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-43</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-7</id>
+ <id>-43</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@template &lt;class ErrorInfo,class E&gt;&#10;(:link http://www.boost.org/libs/smart_ptr/shared_ptr.htm|shared_ptr:)&lt;typename ErrorInfo::value_type const&gt; (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-7</id>
- </shared_ptr>
- </weak_ptr>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)( E const &amp; x );@]&#10;</string>
+ <string>(:include include:)&#10;(:auto also:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
+ </sorted>
+ </object>
+ </shared_ptr>
+ </pair>
+ <pair>
+ <string>def</string>
+ <shared_ptr>
+ <id>44</id>
+ <type>
+ <string>reno_layer</string>
+ </type>
+ <object>
+ <sorted>
+ <size>39</size>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-8</id>
+ <id>-5</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-23</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-9</id>
+ <id>-6</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-10</id>
+ <id>-7</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3852,7 +2396,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-11</id>
+ <id>-8</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3863,7 +2407,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-12</id>
+ <id>-9</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3874,7 +2418,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-13</id>
+ <id>-10</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3885,102 +2429,84 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-14</id>
+ <id>-11</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>7</size>
- <variant>2</variant>
- <string>[@template &lt;class E, class Tag1, class T1, ..., class TagN, class TN&gt;&#10;E const &amp; (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-14</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>|operator&lt;&lt;:)( E const &amp; x,&#10; (:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html|tuple:)&lt;&#10; (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&lt;Tag1,T1&gt;,&#10; ...,&#10; (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&lt;TagN,TN&gt; &gt; const &amp; v );@]&#10;</string>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-12</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-15</id>
+ <id>-13</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-15</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:::)();@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-16</id>
+ <id>-14</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>9</size>
                                                                                                         <variant>2</variant>
- <string>[@(:include </string>
+ <string>[@class&#10;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl:)&#10;&#10;(:include </string>
+ <string>:)&#10; {&#10; public:&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-7</id>
+ <id>-26</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl:)&#10;&#10;(:include </string>
+ <string> decl pre_indent=&quot;4&quot;:)&#10;&#10; protected:&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-6</id>
+ <id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl:)&#10;&#10;(:include </string>
+ <string> decl pre_indent=&quot;4&quot;:)&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -3989,14 +2515,14 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl:)@]&#10;</string>
+ <string> decl pre_indent=&quot;4&quot;:)&#10; };@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-17</id>
+ <id>-16</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4007,7 +2533,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-18</id>
+ <id>-17</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4018,29 +2544,18 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-19</id>
+ <id>-18</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-14</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-20</id>
+ <id>-19</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4051,65 +2566,18 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-21</id>
+ <id>-20</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>11</size>
- <variant>2</variant>
- <string>[@(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-35</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)&#10;&#10;(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)&#10;&#10;(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-33</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)&#10;&#10;(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)&#10;&#10;(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-34</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-22</id>
+ <id>-21</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4120,38 +2588,29 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-23</id>
+ <id>-22</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>5</size>
- <variant>2</variant>
- <string>[@#ifdef BOOST_NO_EXCEPTIONS&#10;&#10;void (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-23</id>
- </shared_ptr>
- </weak_ptr>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:)( std::exception const &amp; e ); // user defined&#10;&#10;#else&#10;&#10;template &lt;class E&gt;&#10;void (:link </string>
+ <string>[@template &lt;class Tag,class T&gt;&#10;class&#10;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-23</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)( E const &amp; e );&#10;&#10;#endif@]&#10;</string>
+ <string>:)&#10; {&#10; public:&#10;&#10; typedef T value_type;&#10;&#10; error_info( value_type const &amp; );&#10; };@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-24</id>
+ <id>-23</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4162,7 +2621,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-25</id>
+ <id>-24</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4173,146 +2632,66 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-26</id>
+ <id>-25</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>9</size>
- <variant>2</variant>
- <string>[@class&#10;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10; {&#10; public:&#10;&#10;(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-42</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10;&#10; protected:&#10;&#10;(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-43</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10;(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-15</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10; };@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-27</id>
+ <id>-26</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@template &lt;class Tag,class T&gt;&#10;class&#10;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&#10; {&#10; public:&#10;&#10; typedef T value_type;&#10;&#10; error_info( value_type const &amp; );&#10; };@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-28</id>
+ <id>-27</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>5</size>
- <variant>2</variant>
- <string>[@template &lt;class E, class Tag, class T&gt;&#10;E const &amp; (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>|operator&lt;&lt;:)( E const &amp; x, (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&lt;Tag,T&gt; const &amp; v );@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-29</id>
+ <id>-28</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@template &lt;class T&gt;&#10;---unspecified--- (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)( T const &amp; x );@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-30</id>
+ <id>-29</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@typedef ---unspecified--- (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:);@]&#10;</string>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-30</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4323,18 +2702,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@template &lt;class T&gt;&#10;---unspecified--- (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-31</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)( T const &amp; e );@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4345,27 +2713,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>5</size>
- <variant>2</variant>
- <string>[@(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)();@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4376,27 +2724,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>5</size>
- <variant>2</variant>
- <string>[@template &lt;class T&gt;&#10;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-33</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)( T const &amp; e );@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4407,27 +2735,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>5</size>
- <variant>2</variant>
- <string>[@void (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-34</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)( (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) const &amp; ep );</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4438,27 +2746,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>5</size>
- <variant>2</variant>
- <string>[@class&#10;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-35</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:):&#10; public std::exception&#10; public boost::</string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>&#10; {&#10; ---unspecified---&#10; };@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4469,18 +2757,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@std::string </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-36</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>( std::exception const &amp; x );@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4502,18 +2779,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-36</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4524,18 +2790,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-31</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4546,18 +2801,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> decl:)@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4579,18 +2823,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@virtual char const * (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-42</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:::)() const throw();@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4601,36 +2834,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>7</size>
- <variant>2</variant>
- <string>[@(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-43</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:::)();&#10;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-43</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:::)( (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) const &amp; x );@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                 </sorted>
@@ -4638,9 +2842,9 @@
                                                                 </shared_ptr>
                                                         </pair>
                                                         <pair>
- <string>include</string>
+ <string>api</string>
                                                                 <shared_ptr>
- <id>48</id>
+ <id>45</id>
                                                                         <type>
                                                                                 <string>reno_layer</string>
                                                                         </type>
@@ -4651,150 +2855,68 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-5</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>!!boost/exception/error_info.hpp&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-6</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>7</size>
- <variant>2</variant>
- <string>!!!BOOST_ERROR_INFO&#10;&#10;(:include synopsis:)&#10;&#10;This macro is designed to be used with (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>|operator&lt;&lt;:) when throwing a boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:), to store information about the location of the throw statement. It can be chained with other (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)s in a single throw expression.&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-7</id>
+ <id>-5</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>7</size>
- <variant>2</variant>
- <string>!!!get_error_info&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;The type of the x object must derive from boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:); ErrorInfo must be an instance of the (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) template.&#10;&#10;!!!!Returns:&#10;&#10;If x does not store an object of type ErrorInfo, returns an empty (:link http://www.boost.org/libs/smart_ptr/shared_ptr.htm|shared_ptr:); otherwise returns pointer to the stored value. Use (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>|operator&lt;&lt;:) to store values in exception objects.&#10;&#10;!!!!Throws:&#10;&#10;Nothing.&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-8</id>
+ <id>-6</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
- <variant>2</variant>
- <string>!!boost/throw_exception.hpp&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-9</id>
+ <id>-7</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
- <variant>2</variant>
- <string>!!boost/exception/exception.hpp&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-10</id>
+ <id>-8</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>21</size>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>!!Diagnostic Information&#10;&#10;Class boost::(:link </string>
+ <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) provides a virtual member function (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-42</id>
- </shared_ptr>
- </weak_ptr>
+ <string> def:)@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-9</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>11</size>
                                                                                                         <variant>2</variant>
- <string>:::), with a signature similar to the familiar std::exception::what function. The default implementation returns a string value that is not presentable as a friendly user message, but because it is generated automatically, it is useful for debugging or logging purposes. Here is an example:&#10;&#10;[@#include &lt;(:link </string>
+ <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -4803,70 +2925,54 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;iostream&gt;&#10;&#10;void f(); //throws unknown types that derive from boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:).&#10;&#10;void&#10;g()&#10; {&#10; try&#10; {&#10; f();&#10; }&#10; catch(&#10; boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) &amp; e )&#10; {&#10; std::cerr &lt;&lt; e.(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-42</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:::)();&#10; }&#10; }@]&#10;&#10;The (:link </string>
+ <string> decl:)&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-42</id>
+ <id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:::) member function iterates over all data objects stored in the boost::(:link </string>
+ <string> decl:)&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-14</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) through (:link </string>
+ <string> decl:)&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-28</id>
+ <id>-25</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>|operator&lt;&lt;:). The returned string is constructed by converting each data object to string and then concatenating these strings together.&#10;&#10;When the (:link </string>
+ <string> decl:)&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-5</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;Tag,T&gt; template is instantiated, the system attempts overload resolution for an unqualified call to to_string(x), where x is of type T. If this is successful, the to_string overload is used to convert objects of type T to string.&#10;&#10;Otherwise, the system attempts overload resolution for s &lt;&lt; x, where s is a std::ostringstream and x is of type T. If this is successful, the operator&lt;&lt; overload is used to convert objects of type T to string.&#10;&#10;Otherwise the system is unable to convert objects of type T to string, and an unspecified stub string value is used without issuing a compile error.&#10;</string>
+ <string> decl:)@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-10</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4877,666 +2983,811 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>27</size>
- <variant>2</variant>
- <string>!!Integrating Boost Exception in Existing Exception Class Hierarchies&#10;&#10;Some exception hierarchies can not be modified to make boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) a base type. For this case, the (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) function template can be used to make exception objects derive from boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) anyway. Here is an example:&#10;&#10;[@#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-37</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;stdexcept&gt;&#10;&#10;typedef boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&lt;struct tag_std_range_min,size_t&gt; std_range_min;&#10;typedef boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&lt;struct tag_std_range_max,size_t&gt; std_range_max;&#10;typedef boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&lt;struct tag_std_range_index,size_t&gt; std_range_index;&#10;&#10;template &lt;class T&gt;&#10;class&#10;my_container&#10; {&#10; public:&#10;&#10; size_t size() const;&#10;&#10; T const &amp;&#10; operator[]( size_t i ) const&#10; {&#10; if( i &gt; size() )&#10; throw boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)(std::range_error(&quot;Index out of range&quot;)) &lt;&lt;&#10; std_range_min(0) &lt;&lt;&#10; std_range_max(size()) &lt;&lt;&#10; std_range_index(i);&#10; //....&#10; }&#10; };&#10;@]&#10;&#10;The call to (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&lt;T&gt; gets us an object of &apos;&apos;unspecified type&apos;&apos; which is guaranteed to derive from both boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) and T. This makes it possible to use (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>|operator&lt;&lt;:) to store additional information in the exception object. The exception can be intercepted as T &amp;, so existing exception handling will not break. It can also be intercepted as boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-12</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-13</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:) &amp;, so that (:link </string>
+ <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-20</id>
+ <id>-38</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>|more information can be added to the exception at a later time:).&#10;</string>
+ <string> decl:)@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-14</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-12</id>
+ <id>-15</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>13</size>
- <variant>2</variant>
- <string>!!!Adding Grouped Data to Exceptions&#10;&#10;The code snippet below demonstrates how boost::(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html|tuple:) can be used to bundle the name of the function that failed, together with the reported errno so that they can be added to exception objects more conveniently together:&#10;&#10;[@#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-19</id>
- </shared_ptr>
- </weak_ptr>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-16</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-17</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>11</size>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;boost/shared_ptr.hpp&gt;&#10;#include &lt;stdio.h&gt;&#10;#include &lt;string&gt;&#10;#include &lt;errno.h&gt;&#10;&#10;typedef boost::(:link </string>
+ <string>[@#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;struct tag_file_name,std::string&gt; file_name_info;&#10;typedef boost::(:link </string>
+ <string>:)&gt;&#10;#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-34</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;struct tag_function,char const *&gt; function_info;&#10;typedef boost::(:link </string>
+ <string>:)&gt;&#10;#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;struct tag_errno,int&gt; errno_info;&#10;typedef boost::tuple&lt;function_info,errno_info&gt; clib_failure;&#10;&#10;class file_open_error: public boost::(:link </string>
+ <string>:)&gt;&#10;#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-9</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) { };&#10;&#10;boost::shared_ptr&lt;FILE&gt;&#10;file_open( char const * name, char const * mode )&#10; {&#10; if( FILE * f=fopen(name,mode) )&#10; return boost::shared_ptr&lt;FILE&gt;(f,fclose);&#10; else&#10; throw file_open_error() &lt;&lt;&#10; file_name_info(name) &lt;&lt;&#10; clib_failure(&quot;fopen&quot;,errno);&#10; }@]&#10;&#10;Note that the members of a boost::(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html|tuple:) are stored separately in exception objects; they can only be retrieved individually, using (:link </string>
+ <string>:)&gt;&#10;#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-7</id>
+ <id>-35</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:).&#10;</string>
+ <string>:)&gt;@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-13</id>
+ <id>-18</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>19</size>
- <variant>2</variant>
- <string>!!!Adding of Arbitrary Data at the Point of the Throw&#10;&#10;The following example demonstrates how errno can be stored in exception objects using Boost Exception:&#10;&#10;[@#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-37</id>
- </shared_ptr>
- </weak_ptr>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-19</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-20</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>9</size>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;errno.h&gt;&#10;#include &lt;iostream&gt;&#10;&#10;typedef boost::(:link </string>
+ <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;struct tag_errno,int&gt; errno_info; //(1)&#10;&#10;class my_error: public boost::(:link </string>
+ <string> def:)&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-7</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:), public std::exception { }; //(2)&#10;&#10;void&#10;f()&#10; {&#10; throw my_error() &lt;&lt; errno_info(errno); //(3)&#10; }&#10;@]&#10;&#10;First, we instantiate the (:link </string>
+ <string> decl:)&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-10</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) template using a unique identifier -- tag_errno, and the type of the info it identifies -- int. This provides compile-time type safety for the various values stored in exception objects.&#10;&#10;Second, we define class my_error, which derives from boost::(:link </string>
+ <string> decl:)&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-23</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:).&#10;&#10;Finally, (3) illustrates how the typedef from (1) can be used with (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
+ <string> decl:)@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-21</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-22</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-23</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-24</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-26</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-27</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-28</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-29</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-30</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-31</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>|operator&lt;&lt;:) to store values in exception objects at the point of the throw.&#10;&#10;The stored errno value can be recovered at a later time like this:&#10;&#10;[@// ...continued&#10;&#10;void&#10;g()&#10; {&#10; try&#10; {&#10; f();&#10; }&#10; catch(&#10; my_error &amp; x )&#10; {&#10; if( boost::shared_ptr&lt;int const&gt; err=boost::(:link </string>
+ <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-7</id>
+ <id>-27</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;errno_info&gt;(x) )&#10; std::cerr &lt;&lt; &quot;Error code: &quot; &lt;&lt; *err;&#10; }&#10; }@]&#10;&#10;The (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-7</id>
- </shared_ptr>
- </weak_ptr>
+ <string> decl:)@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-32</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:) function template is instantiated with the typedef from (1), and is passed an exception object of any type that derives publicly from boost::(:link </string>
+ <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-40</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:). If the exception object contains the requested value, the returned (:link http://www.boost.org/libs/smart_ptr/shared_ptr.htm|shared_ptr:) will point to it; otherwise an empty (:link http://www.boost.org/libs/smart_ptr/shared_ptr.htm|shared_ptr:) is returned.&#10;</string>
+ <string> decl:)@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-14</id>
+ <id>-33</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>5</size>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>!!!operator&lt;&lt;, tuple overload&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;E must be boost::(:link </string>
+ <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:), or a type that derives (indirectly) from boost::(:link </string>
+ <string> decl:)@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-34</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
+ <variant>2</variant>
+ <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:).&#10;&#10;!!!!Effects:&#10;&#10;Equivalent to x &lt;&lt; v.(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html#accessing_elements|get:)&lt;0&gt;() &lt;&lt; ... &lt;&lt; v.(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html#accessing_elements|get:)&lt;N&gt;().&#10;&#10;!!!!Returns:&#10;&#10;x.&#10;&#10;(:include throws:)&#10;</string>
+ <string> decl:)@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-15</id>
+ <id>-35</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
- <string>!!!exception::~exception&#10;&#10;(:include decl:)&#10;&#10;!!!!Effects:&#10;&#10;&#10;&#10;Frees all resources associated with a boost::(:link </string>
+ <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-43</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) object.&#10;&#10;!!!!Throws:&#10;&#10;&#10;&#10;Nothing.&#10;</string>
+ <string> decl:)@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-16</id>
+ <id>-36</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
- <variant>2</variant>
- <string>!!boost/exception/info.hpp&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-17</id>
+ <id>-37</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>13</size>
- <variant>2</variant>
- <string>!!!Using enable_current_exception at the Time of the Throw&#10;&#10;Here is how cloning can be enabled in a throw-expression (15.1):&#10;&#10;[@#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-39</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-16</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;stdio.h&gt;&#10;#include &lt;errno.h&gt;&#10;&#10;typedef boost::error_info&lt;struct tag_errno,int&gt; errno_info;&#10;&#10;class file_read_error: public boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) { };&#10;&#10;void&#10;file_read( FILE * f, void * buffer, size_t size )&#10; {&#10; if( size!=fread(buffer,1,size,f) )&#10; throw boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-31</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)(file_read_error()) &lt;&lt;&#10; errno_info(errno);&#10; }@]&#10;&#10;Of course, </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-31</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string> may be used with any exception type; there is no requirement that it should derive from boost::</string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>.</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-18</id>
+ <id>-38</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>37</size>
- <variant>2</variant>
- <string>!!!Cloning and Re-throwing an Exception&#10;&#10;When you catch an exception, you can call (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) to get an (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) object:&#10;&#10;[@#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-21</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;boost/thread.hpp&gt;&#10;#include &lt;boost/bind.hpp&gt;&#10;&#10;void do_work(); //throws cloning-enabled boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)s&#10;&#10;void&#10;worker_thread( boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:) &amp; error )&#10; {&#10; try&#10; {&#10; do_work();&#10; error = boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)();&#10; }&#10; catch(&#10; ... )&#10; {&#10; error = boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)();&#10; }&#10; }@]&#10;&#10;In the above example, note that (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-39</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-40</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-41</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-42</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-43</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ </sorted>
+ </object>
+ </shared_ptr>
+ </pair>
+ <pair>
+ <string>decl</string>
+ <shared_ptr>
+ <id>46</id>
+ <type>
+ <string>reno_layer</string>
+ </type>
+ <object>
+ <sorted>
+ <size>39</size>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-5</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>5</size>
                                                                                                         <variant>2</variant>
- <string>:) captures the original type of the exception object. The exception can be thrown again using the (:link </string>
+ <string>[@void (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-34</id>
+ <id>-5</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) function:&#10;&#10;[@// ...continued&#10;&#10;void&#10;work()&#10; {&#10; boost::(:link </string>
+ <string>:)( (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) error;&#10; boost::(:link http://www.boost.org/doc/html/boost/thread.html|thread:) t( boost::(:link http://www.boost.org/libs/bind/bind.html|bind:)(worker_thread,boost::(:link http://www.boost.org/doc/html/ref.html|ref:)(error)) );&#10; t.(:link http://www.boost.org/doc/html/boost/thread.html|join:)();&#10; if( error )&#10; boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-34</id>
- </shared_ptr>
- </weak_ptr>
+ <string>:) const &amp; ep );</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:)(error);&#10; }@]&#10;&#10;Note that (:link </string>
+ <string>[@typedef ---unspecified--- (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-32</id>
+ <id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) could fail to copy the original exception object in the following cases:* if there is not enough memory, in which case the returned (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
+ <string>:);@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-7</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:) points to an instance of std::bad_alloc, or&#10;* if (:link </string>
+ <string>[@template &lt;class ErrorInfo,class E&gt;&#10;(:link http://www.boost.org/libs/smart_ptr/shared_ptr.htm|shared_ptr:)&lt;typename ErrorInfo::value_type const&gt; (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-31</id>
+ <id>-7</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) was not used in the throw-expression passed to the original throw statement and the current implementation does not have the necessary compiler-specific support to copy the exception automatically, in which case the returned (:link </string>
+ <string>:)( E const &amp; x );@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-8</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-9</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-10</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>9</size>
+ <variant>2</variant>
+ <string>[@typedef (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) points to an instance of (:link </string>
+ <string>:)&lt;struct tag_throw_function,char const *&gt; throw_function;&#10;typedef (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-35</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:).&#10;&#10;&#10;&#10;Regardless, the use of (:link </string>
+ <string>:)&lt;struct tag_throw_file,char const *&gt; throw_file;&#10;typedef (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-32</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) and (:link </string>
+ <string>:)&lt;struct tag_throw_line,int&gt; throw_line;&#10;&#10;#define (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-34</id>
+ <id>-10</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) in the above examples is well-formed.&#10;</string>
+ <string>:)\&#10; ::boost::throw_function(BOOST_CURRENT_FUNCTION) &lt;&lt;\&#10; ::boost::throw_file(__FILE__) &lt;&lt;\&#10; ::boost::throw_line((int)__LINE__)@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-19</id>
+ <id>-11</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
- <variant>2</variant>
- <string>!!boost/exception/info_tuple.hpp&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-20</id>
+ <id>-12</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>11</size>
- <variant>2</variant>
- <string>!!Transporting of Arbitrary Data to the Catch Site&#10;&#10;All exception types that derive from boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-13</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-14</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>5</size>
                                                                                                         <variant>2</variant>
- <string>:) can be used as type-safe containers of arbitrary data objects, while complying with the no-throw requirements (15.5.1) of the ANSI C++ standard for exception types. Data can be added to a boost::(:link </string>
+ <string>[@template &lt;class T&gt;&#10;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) at the time of the throw, or at a later time.&#10;&#10;(:include </string>
+ <string>:) (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-13</id>
+ <id>-14</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-22</id>
- </shared_ptr>
- </weak_ptr>
+ <string>:)( T const &amp; e );@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>[@class </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-12</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;</string>
+ <string>;@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-16</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-17</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-18</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-19</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-20</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -5547,9 +3798,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
- <variant>2</variant>
- <string>!!boost/exception_ptr.hpp&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -5560,81 +3809,133 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>21</size>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>!!!Adding of Arbitrary Data to Active Exception Objects&#10;&#10;Sometimes the throw site does not have all the information that is needed at the catch site to make sense of what went wrong. Here is an example:&#10;&#10;[@#include &lt;stdio.h&gt;&#10;#include &lt;string&gt;&#10; &#10;class&#10;file_read_error&#10; {&#10; public:&#10;&#10; explicit&#10; file_read_error( std::string const &amp; fn ):&#10; fn_(fn)&#10; {&#10; };&#10;&#10; std::string const &amp;&#10; file_name() const&#10; {&#10; return fn_;&#10; }&#10;&#10; private:&#10;&#10; std::string fn_;&#10; };&#10;&#10;void&#10;file_read( FILE * f, void * buffer, size_t size )&#10; {&#10; if( size!=fread(buffer,1,size,f) )&#10; throw file_read_error(&quot;????&quot;);&#10; }@]&#10;&#10;We have defined an exception class file_read_error which can store a file name, so that when we catch a file_read_error object, we know which file the failure
 is related to. However, the file_read function does not have the file name at the time of the throw; all it has is a FILE handle.&#10;&#10;One possible solution is to not use FILE handles directly. We could have our own class file which stores both a FILE handle and a file name, and pass that to file_read. However, this could be problematic if we communicate with 3rd party code that does not use our class file (probably because they have their own similar class.)&#10;&#10;A better solution is to make class file_read_error derive (possibly indirectly) from boost::(:link </string>
+ <string>[@template &lt;class Tag,class T&gt;&#10;class (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:), and free the file_read function from the burden of storing the file name in exceptions it throws:&#10;&#10;[@#include &lt;(:link </string>
+ <string>:);@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-23</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>5</size>
+ <variant>2</variant>
+ <string>[@template &lt;class E, class Tag, class T&gt;&#10;E const &amp; (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-37</id>
+ <id>-23</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;stdio.h&gt;&#10;#include &lt;errno.h&gt;&#10;&#10;typedef boost::(:link </string>
+ <string>|operator&lt;&lt;:)( E const &amp; x, (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;struct tag_errno,int&gt; errno_info;&#10;&#10;class file_read_error: public boost::(:link </string>
+ <string>:)&lt;Tag,T&gt; const &amp; v );@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-24</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>7</size>
+ <variant>2</variant>
+ <string>[@template &lt;class E, class Tag1, class T1, ..., class TagN, class TN&gt;&#10;E const &amp; (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) { };&#10;&#10;void&#10;file_read( FILE * f, void * buffer, size_t size )&#10; {&#10; if( size!=fread(buffer,1,size,f) )&#10; throw file_read_error() &lt;&lt; errno_info(errno);&#10; }@]&#10;&#10;If file_read detects a failure, it throws an exception which contains the information that is available at the time, namely the errno. Other relevant information, such as the file name, can be added in a context higher up the call stack, where it is known naturally:&#10;&#10;[@#include &lt;(:link </string>
+ <string>|operator&lt;&lt;:)( E const &amp; x,&#10; (:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html|tuple:)&lt;&#10; (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-37</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;boost/shared_ptr.hpp&gt;&#10;#include &lt;stdio.h&gt;&#10;#include &lt;string&gt;&#10;&#10;typedef boost::(:link </string>
+ <string>:)&lt;Tag1,T1&gt;,&#10; ...,&#10; (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;struct tag_file_name,std::string&gt; file_name_info;&#10;&#10;boost::shared_ptr&lt;FILE&gt; file_open( char const * file_name, char const * mode );&#10;void file_read( FILE * f, void * buffer, size_t size );&#10;&#10;void&#10;parse_file( char const * file_name )&#10; {&#10; boost::shared_ptr&lt;FILE&gt; f = file_open(file_name,&quot;rb&quot;);&#10; assert(f);&#10; try&#10; {&#10; char buf[1024];&#10; file_read( f.get(), buf, sizeof(buf) );&#10; }&#10; catch(&#10; boost::(:link </string>
+ <string>:)&lt;TagN,TN&gt; &gt; const &amp; v );@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>5</size>
+ <variant>2</variant>
+ <string>[@(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) &amp; e )&#10; {&#10; e &lt;&lt; file_name_info(file_name);&#10; throw;&#10; }&#10; }@]&#10;&#10;The above function is (almost) exception-neutral -- if an exception is emitted by any function call within the try block, parse_file does not need to do any real work, but it intercepts any boost::(:link </string>
+ <string>:) (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-25</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) object, stores the file name, and re-throws using a throw-expression with no operand (15.1.6). The rationale for catching any boost::(:link </string>
+ <string>:)();@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-26</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
+ <variant>2</variant>
+ <string>[@virtual char const * (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -5643,130 +3944,261 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) object is that the file name is relevant to any failure that occurs in parse_file, &apos;&apos;even if the failure is unrelated to file I/O&apos;&apos;.&#10;&#10;As usual, the stored data can be retrieved using (:link </string>
+ <string> mod=&quot;m&quot;:)() const throw();@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-27</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
+ <variant>2</variant>
+ <string>[@std::string </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-7</id>
+ <id>-27</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:).&#10;</string>
+ <string>( std::exception const &amp; x );@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-23</id>
+ <id>-28</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>9</size>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>!!!throw_exception&#10;&#10;&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;E must derive publicly from std::exception.&#10;&#10;!!!!Effects:&#10;&#10;* If BOOST_NO_EXCEPTIONS is not defined, boost::(:link </string>
+ <string>[@(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-23</id>
+ <id>-28</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)(e) is equivalent to throw boost::(:link </string>
+ <string> mod=&quot;m&quot;:)();@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-29</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-30</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-31</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-32</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-33</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-34</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-35</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-36</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>7</size>
+ <variant>2</variant>
+ <string>[@(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-31</id>
+ <id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)(boost::(:link </string>
+ <string> mod=&quot;m&quot;:)();&#10;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-29</id>
+ <id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)(e)), unless BOOST_EXCEPTION_DISABLE is defined, in which case boost::(:link </string>
+ <string> mod=&quot;m&quot;:)( (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-23</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)(e) is equivalent to throw e;&#10;* If BOOST_NO_EXCEPTIONS is defined, the function is left undefined, and the user is expected to supply an appropriate definition. Callers of throw_exception are allowed to assume that the function never returns; therefore, if the user-defined throw_exception returns, the behavior is undefined.&#10;</string>
+ <string>:) const &amp; x );@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-24</id>
+ <id>-37</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>11</size>
+ <size>5</size>
                                                                                                         <variant>2</variant>
- <string>!!Transporting of Exceptions between Threads&#10;&#10;&#10;&#10;Boost Exception supports transporting of exception objects between threads through cloning. This system is similar to (:link http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html|N2179:), but because Boost Exception can not rely on language support, the use of (:link </string>
+ <string>[@class&#10;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-31</id>
+ <id>-37</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) at the time of the throw is required in order to use cloning.&#10;&#10;!!!!Note:&#10;&#10;All exceptions emitted by the familiar function boost::(:link </string>
+ <string>:):&#10; public std::exception&#10; public boost::</string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-23</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) are guaranteed to derive from boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-26</id>
- </shared_ptr>
- </weak_ptr>
+ <string>&#10; {&#10; ---unspecified---&#10; };@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:) and to support cloning.&#10;&#10;(:include </string>
+ <string>[@template &lt;class T&gt;&#10;---unspecified--- (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-17</id>
+ <id>-38</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:)( T const &amp; e );@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-39</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-40</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
+ <variant>2</variant>
+ <string>[@template &lt;class T&gt;&#10;---unspecified--- (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-18</id>
+ <id>-40</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;</string>
+ <string>:)( T const &amp; x );@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-25</id>
+ <id>-41</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -5777,76 +4209,140 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-26</id>
+ <id>-42</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>19</size>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-43</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>5</size>
                                                                                                         <variant>2</variant>
- <string>!!!exception&#10;&#10;(:include synopsis:)&#10;&#10;Class boost::(:link </string>
+ <string>[@#ifdef BOOST_NO_EXCEPTIONS&#10;&#10;void (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-43</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) is designed to be used as a universal base for user-defined exception types.&#10;&#10;An object of any type deriving from boost::(:link </string>
+ <string>:)( std::exception const &amp; e ); // user defined&#10;&#10;#else&#10;&#10;template &lt;class E&gt;&#10;void (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-43</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) can store data of arbitrary types, using the (:link </string>
+ <string>:)( E const &amp; e );&#10;&#10;#endif@]&#10;</string>
+ </container>
+ </pair>
+ </sorted>
+ </object>
+ </shared_ptr>
+ </pair>
+ <pair>
+ <string>include</string>
+ <shared_ptr>
+ <id>47</id>
+ <type>
+ <string>reno_layer</string>
+ </type>
+ <object>
+ <sorted>
+ <size>39</size>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-5</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Precondition:&#10;&#10;ep shall not be null.&#10;&#10;!!!!Throws:&#10;&#10;&#10;&#10;The exception to which ep refers.&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>9</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;The (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) wrapper and (:link </string>
+ <string>:) type can be used to refer to a copy of an exception object. It is Default Constructible, Copy Constructible, Assignable and Equality Comparable; (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-28</id>
+ <id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>|operator&lt;&lt;:).&#10;&#10;To retrieve data from a boost::(:link </string>
+ <string>:)&apos;s operations do not throw.&#10;&#10;Two instances of (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) object, use the (:link </string>
+ <string>:) are equivalent and compare equal if and only if they refer to the same exception.&#10;&#10;The default constructor of (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-7</id>
+ <id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) function template.&#10;&#10;(:include </string>
+ <string>:) produces the null value of the type. The null value is equivalent only to itself.&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-7</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>7</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;* ErrorInfo must be an instance of the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-43</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:) template.&#10;* E must be polymorphic.&#10;&#10;!!!!Returns:&#10;&#10;* If dynamic_cast&lt;boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -5855,271 +4351,248 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;(:include </string>
+ <string>:) const *&gt;(&amp;x) is 0, or if x does not store an object of type ErrorInfo, the returned value is an empty shared_ptr.&#10;* Otherwise, the returned shared_ptr points to the stored value (use (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-42</id>
+ <id>-23</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&#10;&#10;</string>
+ <string>|operator&lt;&lt;:) to store values in exception objects.) The shared_ptr is valid even after x has been destroyed.&#10;&#10;!!!!Throws:&#10;&#10;Nothing.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-27</id>
+ <id>-8</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>21</size>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>!!!error_info&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;T must have accessible copy constructor and must not be a reference.&#10;&#10;!!!!Description:&#10;&#10;This class template is used to associate a Tag type with a value type T. Objects of type (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-27</id>
- </shared_ptr>
- </weak_ptr>
+ <string>(:auto !!:)&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-9</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&lt;Tag,T&gt; can be passed to (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
+ <string>(:auto !!:)&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-10</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>7</size>
                                                                                                         <variant>2</variant>
- <string>|operator&lt;&lt;:) to be stored in objects of type boost::(:link </string>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;This macro is designed to be used with (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-23</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:).&#10;&#10;!!!!Note:&#10;&#10;The header &lt;(:link </string>
+ <string>|operator&lt;&lt;:) when throwing a boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-5</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt; provides a declaration of the (:link </string>
+ <string>:), to store information about the location of the throw statement. It can be chained with other (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) template, which is sufficient for the purpose of typedefing an instance for specific Tag and T, like this:&#10;&#10;[@#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-5</id>
- </shared_ptr>
- </weak_ptr>
+ <string> mod=&quot;p&quot;:) in a single throw expression.&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-11</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>21</size>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;&#10;typedef boost::(:link </string>
+ <string>(:auto !!!:)&#10;&#10;Sometimes the throw site does not have all the information that is needed at the catch site to make sense of what went wrong. Here is an example:&#10;&#10;[@#include &lt;stdio.h&gt;&#10;#include &lt;string&gt;&#10; &#10;class&#10;file_read_error&#10; {&#10; public:&#10;&#10; explicit&#10; file_read_error( std::string const &amp; fn ):&#10; fn_(fn)&#10; {&#10; };&#10;&#10; std::string const &amp;&#10; file_name() const&#10; {&#10; return fn_;&#10; }&#10;&#10; private:&#10;&#10; std::string fn_;&#10; };&#10;&#10;void&#10;file_read( FILE * f, void * buffer, size_t size )&#10; {&#10; if( size!=fread(buffer,1,size,f) )&#10; throw file_read_error(&quot;????&quot;);&#10; }@]&#10;&#10;We have defined an exception class file_read_error which can store a file name, so that when we catch a file_read_error object, we know which file the failure is related to. However, the file_read func
tion does not have the file name at the time of the throw; all it has is a FILE handle.&#10;&#10;One possible solution is to not use FILE handles directly. We could have our own class file which stores both a FILE handle and a file name, and pass that to file_read. However, this could be problematic if we communicate with 3rd party code that does not use our class file (probably because they have their own similar class.)&#10;&#10;A better solution is to make class file_read_error derive (possibly indirectly) from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;struct tag_errno,int&gt; errno_info;@]&#10;&#10;Of course, to actually add an errno_info object to exceptions using (:link </string>
+ <string>:), and free the file_read function from the burden of storing the file name in exceptions it throws:&#10;&#10;[@#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-28</id>
+ <id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>|operator&lt;&lt;:), or to retrieve it using (:link </string>
+ <string>:)&gt;&#10;#include &lt;stdio.h&gt;&#10;#include &lt;errno.h&gt;&#10;&#10;typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-7</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:), you must first #include &lt;(:link </string>
+ <string>:)&lt;struct tag_errno,int&gt; errno_info;&#10;&#10;class file_read_error: public boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-16</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;.&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-28</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>7</size>
- <variant>2</variant>
- <string>!!!operator&lt;&lt;, error_info overload&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;E must be boost::(:link </string>
+ <string>:) { };&#10;&#10;void&#10;file_read( FILE * f, void * buffer, size_t size )&#10; {&#10; if( size!=fread(buffer,1,size,f) )&#10; throw file_read_error() &lt;&lt; errno_info(errno);&#10; }@]&#10;&#10;If file_read detects a failure, it throws an exception which contains the information that is available at the time, namely the errno. Other relevant information, such as the file name, can be added in a context higher up the call stack, where it is known naturally:&#10;&#10;[@#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:), or a type that derives (indirectly) from boost::(:link </string>
+ <string>:)&gt;&#10;#include &lt;boost/shared_ptr.hpp&gt;&#10;#include &lt;stdio.h&gt;&#10;#include &lt;string&gt;&#10;&#10;typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:).&#10;&#10;!!!!Effects:&#10;&#10;Stores a copy of v into x. If x already contains data of type (:link </string>
+ <string>:)&lt;struct tag_file_name,std::string&gt; file_name_info;&#10;&#10;boost::shared_ptr&lt;FILE&gt; file_open( char const * file_name, char const * mode );&#10;void file_read( FILE * f, void * buffer, size_t size );&#10;&#10;void&#10;parse_file( char const * file_name )&#10; {&#10; boost::shared_ptr&lt;FILE&gt; f = file_open(file_name,&quot;rb&quot;);&#10; assert(f);&#10; try&#10; {&#10; char buf[1024];&#10; file_read( f.get(), buf, sizeof(buf) );&#10; }&#10; catch(&#10; boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-27</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&lt;Tag1,T1&gt;, that data is overwritten.&#10;&#10;!!!!Returns:&#10;&#10;x.&#10;&#10;(:include throws:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>7</size>
- <variant>2</variant>
- <string>!!!enable_error_info&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;T must be a user-defined type with accessible no-throw copy constructor.&#10;&#10;!!!!Returns:&#10;&#10;An object of unspecified type with no-throw copy semantics, which derives publicly from both T, and class boost::(:link </string>
+ <string>:) &amp; e )&#10; {&#10; e &lt;&lt; file_name_info(file_name);&#10; throw;&#10; }&#10; }@]&#10;&#10;The above function is (almost) exception-neutral -- if an exception is emitted by any function call within the try block, parse_file does not need to do any real work, but it intercepts any boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:). The T sub-object is initialized from x by the T copy constructor. If T already derives from boost::(:link </string>
+ <string>:) object, stores the file name, and re-throws using a throw-expression with no operand (15.1.6). The rationale for catching any boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:), then the type of the returned object does not derive boost::(:link </string>
+ <string>:) object is that the file name is relevant to any failure that occurs in parse_file, &apos;&apos;even if the failure is unrelated to file I/O&apos;&apos;.&#10;&#10;As usual, the stored data can be retrieved using (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-7</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:).&#10;&#10;!!!!Throws:&#10;&#10;Nothing.&#10;</string>
+ <string>:).&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-30</id>
+ <id>-12</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>15</size>
- <variant>2</variant>
- <string>!!!exception_ptr&#10;&#10;(:include synopsis:)&#10;&#10;The (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-30</id>
- </shared_ptr>
- </weak_ptr>
+ <size>13</size>
                                                                                                         <variant>2</variant>
- <string>:) type can be used to refer to a copy of an exception object. It is Default Constructible, Copy Constructible, Assignable and Equality Comparable; (:link </string>
+ <string>(:auto !!!:)&#10;&#10;The code snippet below demonstrates how boost::(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html|tuple:) can be used to bundle the name of the function that failed, together with the reported errno so that they can be added to exception objects more conveniently together:&#10;&#10;[@#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-34</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&apos;s operations do not throw.&#10;&#10;Two instances of (:link </string>
+ <string>:)&gt;&#10;#include &lt;boost/shared_ptr.hpp&gt;&#10;#include &lt;stdio.h&gt;&#10;#include &lt;string&gt;&#10;#include &lt;errno.h&gt;&#10;&#10;typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) are equivalent and compare equal if and only if they refer to the same exception.&#10;&#10;The default constructor of (:link </string>
+ <string>:)&lt;struct tag_file_name,std::string&gt; file_name_info;&#10;typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) produces the null value of the type. The null value is equivalent only to itself.&#10;&#10;!!!!Note:&#10;&#10; (:link </string>
+ <string>:)&lt;struct tag_function,char const *&gt; function_info;&#10;typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) objects are returned by (:link </string>
+ <string>:)&lt;struct tag_errno,int&gt; errno_info;&#10;typedef boost::tuple&lt;function_info,errno_info&gt; clib_failure;&#10;&#10;class file_open_error: public boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-32</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) and (:link </string>
+ <string>:) { };&#10;&#10;boost::shared_ptr&lt;FILE&gt;&#10;file_open( char const * name, char const * mode )&#10; {&#10; if( FILE * f=fopen(name,mode) )&#10; return boost::shared_ptr&lt;FILE&gt;(f,fclose);&#10; else&#10; throw file_open_error() &lt;&lt;&#10; file_name_info(name) &lt;&lt;&#10; clib_failure(&quot;fopen&quot;,errno);&#10; }@]&#10;&#10;Note that the members of a boost::(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html|tuple:) are stored separately in exception objects; they can only be retrieved individually, using (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-33</id>
+ <id>-7</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -6130,67 +4603,75 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-31</id>
+ <id>-13</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>17</size>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>!!!enable_current_exception&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;T must have an accessible no-throw copy constructor&#10;&#10;!!!!Returns:&#10;&#10;An object of &apos;&apos;unspecified&apos;&apos; type which derives publicly from T. That is, the returned object can be intercepted by a catch(T &amp;).&#10;&#10;!!!!Description:&#10;&#10;&#10;&#10;This function is designed to be used directly in a throw-expression to enable the exception_ptr support in Boost Exception. For example:&#10;&#10;[@class&#10;my_exception:&#10; public std::exception&#10; {&#10; };&#10;&#10;....&#10;throw boost::(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-31</id>
- </shared_ptr>
- </weak_ptr>
+ <string>(:auto !!:)&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-14</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:)(my_exception());@]&#10;&#10;Unless (:link </string>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Effects:&#10;&#10;As if try { throw e; } catch( ... ) { return (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-31</id>
+ <id>-25</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) is called at the time an exception object is used in a throw-expression, an attempt to copy it using (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
+ <string>:)(); }&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>19</size>
                                                                                                         <variant>2</variant>
- <string>:) may return an (:link </string>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;Class boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) which refers to an instance of (:link </string>
+ <string>:) is designed to be used as a universal base for user-defined exception types.&#10;&#10;An object of any type deriving from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-35</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:). See (:link </string>
+ <string>:) can store data of arbitrary types, using the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-32</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) for details.&#10;&#10;!!!!Note:&#10;&#10;Instead of using the throw keyword directly, it is preferable to call boost::(:link </string>
+ <string>:) wrapper and (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -6199,119 +4680,110 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:). This is guaranteed to throw an exception that derives from boost::(:link </string>
+ <string>|operator&lt;&lt;:).&#10;&#10;To retrieve data from a boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) and supports exception_ptr functionality.&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>29</size>
- <variant>2</variant>
- <string>!!!current_exception&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;The (:link </string>
+ <string>:) object, use the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-32</id>
+ <id>-7</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) function must not be called outside of a catch block.&#10;&#10;!!!!Returns:&#10;&#10;* An (:link </string>
+ <string>:) function template.&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) that refers to the currently handled exception or a copy of the currently handled exception.&#10;* If the function needs to allocate memory and the attempt fails, it returns an (:link </string>
+ <string>:)&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-28</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) that refers to an instance of std::bad_alloc.&#10;&#10;!!!!Throws:&#10;&#10;Nothing.&#10;&#10;!!!!Notes:&#10;&#10;* It is unspecified whether the return values of two successive calls to (:link </string>
+ <string>:)&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-32</id>
+ <id>-26</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) refer to the same exception object.&#10;* Correct implementation of (:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-32</id>
- </shared_ptr>
- </weak_ptr>
+ <string>:)&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-16</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>21</size>
                                                                                                         <variant>2</variant>
- <string>:) may require compiler support, unless (:link </string>
+ <string>(:auto !!:)&#10;&#10;Class boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-31</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) is used at the time the currently handled exception object was passed to throw. If (:link </string>
+ <string>:) provides a virtual member function (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-31</id>
+ <id>-26</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) is not used, and if the compiler does not provide the necessary support, then (:link </string>
+ <string> mod=&quot;m&quot;:), with a signature similar to the familiar std::exception::what function. The default implementation returns a string value that is not presentable as a friendly user message, but because it is generated automatically, it is useful for debugging or logging purposes. Here is an example:&#10;&#10;[@#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-32</id>
+ <id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) may return an (:link </string>
+ <string>:)&gt;&#10;#include &lt;iostream&gt;&#10;&#10;void f(); //throws unknown types that derive from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) that refers to an instance of (:link </string>
+ <string>:).&#10;&#10;void&#10;g()&#10; {&#10; try&#10; {&#10; f();&#10; }&#10; catch(&#10; boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-35</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:). In this case, if the original exception object derives from boost::(:link </string>
+ <string>:) &amp; e )&#10; {&#10; std::cerr &lt;&lt; e.(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -6320,7 +4792,7 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:), then the boost::(:link </string>
+ <string> mod=&quot;m&quot;:)();&#10; }&#10; }@]&#10;&#10;The (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -6329,558 +4801,860 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) sub-object of the (:link </string>
+ <string> mod=&quot;m&quot;:) member function iterates over all data objects stored in the boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-35</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) object is initialized by the boost::(:link </string>
+ <string>:) through (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-23</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) copy constructor.&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-33</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>3</size>
- <variant>2</variant>
- <string>!!!copy_exception&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Effects:&#10;&#10;As if try { throw e; } catch( ... ) { return (:link </string>
+ <string>|operator&lt;&lt;:). The returned string is constructed by converting each data object to string and then concatenating these strings together.&#10;&#10;When the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-32</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)(); }&#10;</string>
+ <string>:)&lt;Tag,T&gt; template is instantiated, the system attempts overload resolution for an unqualified call to to_string(x), where x is of type T. If this is successful, the to_string overload is expected to return std::string and is used to convert objects of type T to string.&#10;&#10;Otherwise, the system attempts overload resolution for s &lt;&lt; x, where s is a std::ostringstream and x is of type T. If this is successful, the operator&lt;&lt; overload is used to convert objects of type T to string.&#10;&#10;Otherwise the system is unable to convert objects of type T to string, and an unspecified stub string value is used without issuing a compile error.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-34</id>
+ <id>-17</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>!!!rethrow_exception&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Precondition:&#10;&#10;ep shall not be null.&#10;&#10;!!!!Throws:&#10;&#10;&#10;&#10;The exception to which ep refers.&#10;</string>
+ <string>(:auto !!:)&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-35</id>
+ <id>-18</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>5</size>
+ <size>11</size>
                                                                                                         <variant>2</variant>
- <string>!!!unknown_exception&#10;&#10;(:include synopsis:)&#10;&#10;This type is used by the </string>
+ <string>(:auto !!:)&#10;&#10;All exception types that derive from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-30</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> support in Boost Exception. Please see (:link </string>
+ <string>:) can be used as type-safe containers of arbitrary data objects, while complying with the no-throw requirements (15.5.1) of the ANSI C++ standard for exception types. Data can be added to a boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-32</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:).&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-36</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>5</size>
- <variant>2</variant>
- <string>!!!diagnostic_information&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Returns:&#10;&#10;If dynamic_cast&lt;boost::(:link </string>
+ <string>:) at the time of the throw, or at a later time.&#10;&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-29</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) *&gt;(&amp;x) is not null, the returned string is initialized by a call to (:link </string>
+ <string>:)&#10;(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-42</id>
+ <id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:); otherwise, the returned string combines the output of x.what() and typeid(x).name().&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-37</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>!!boost/exception.hpp&#10;&#10;!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-38</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>!!boost/exception/diagnostic_information.hpp&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-39</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>!!boost/exception/enable_current_exception.hpp&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-40</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
- <variant>2</variant>
- <string>!!boost/exception/enable_error_info.hpp&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-41</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-12</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-42</id>
+ <id>-19</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>7</size>
+ <size>27</size>
                                                                                                         <variant>2</variant>
- <string>!!!exception::diagnostic_information&#10;&#10;(:include decl:)&#10;&#10;!!!!Returns:&#10;&#10;An string representation of all data stored in the boost::(:link </string>
+ <string>(:auto !!:)&#10;&#10;Some exception hierarchies can not be modified to make boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) object by the (:link </string>
+ <string>:) a base type. In this case, the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-28</id>
+ <id>-40</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>|operator&lt;&lt;:) function. See &quot;(:link </string>
+ <string>:) function template can be used to make exception objects derive from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-10</id>
+ <id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&quot; for details.&#10;&#10;!!!!Throws:&#10;&#10;Nothing.&#10;&#10;!!!!Note:&#10;&#10;The return value remains valid until the exception object from which it is obtained is destroyed or modified.&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-43</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>7</size>
+ <string>:) anyway. Here is an example:&#10;&#10;[@#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-17</id>
+ </shared_ptr>
+ </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>!!!exception::exception&#10;&#10;(:include decl:)&#10;&#10;!!!!Effects:&#10;&#10;* Default constructor: initializes an empty boost::(:link </string>
+ <string>:)&gt;&#10;#include &lt;stdexcept&gt;&#10;&#10;typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) object.&#10;* Copy constructor: initializes a boost::(:link </string>
+ <string>:)&lt;struct tag_std_range_min,size_t&gt; std_range_min;&#10;typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-26</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:) object which shares with x all data added through (:link </string>
+ <string>:)&lt;struct tag_std_range_max,size_t&gt; std_range_max;&#10;typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-28</id>
+ <id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>|operator&lt;&lt;:), including data that is added at a future time.&#10;&#10;!!!!Throws:&#10;&#10;Nothing.&#10;</string>
- </container>
- </pair>
- </sorted>
- </object>
- </shared_ptr>
- </pair>
- <pair>
- <string>throws</string>
- <shared_ptr>
- <id>49</id>
- <type>
- <string>reno_layer</string>
- </type>
- <object>
- <sorted>
- <size>39</size>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-5</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-6</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-7</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-8</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-9</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-10</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-11</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-12</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-13</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-14</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>1</size>
+ <string>:)&lt;struct tag_std_range_index,size_t&gt; std_range_index;&#10;&#10;template &lt;class T&gt;&#10;class&#10;my_container&#10; {&#10; public:&#10;&#10; size_t size() const;&#10;&#10; T const &amp;&#10; operator[]( size_t i ) const&#10; {&#10; if( i &gt; size() )&#10; throw boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-40</id>
+ </shared_ptr>
+ </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>!!!!Throws:&#10;&#10;std::bad_alloc, or any exception emitted by T1..TN copy constructor.&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-15</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-16</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-17</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-18</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
+ <string>:)(std::range_error(&quot;Index out of range&quot;)) &lt;&lt;&#10; std_range_min(0) &lt;&lt;&#10; std_range_max(size()) &lt;&lt;&#10; std_range_index(i);&#10; //....&#10; }&#10; };&#10;@]&#10;&#10;The call to (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-40</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&lt;T&gt; gets us an object of &apos;&apos;unspecified type&apos;&apos; which is guaranteed to derive from both boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) and T. This makes it possible to use (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-23</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>|operator&lt;&lt;:) to store additional information in the exception object. The exception can be intercepted as T &amp;, so existing exception handling will not break. It can also be intercepted as boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) &amp;, so that (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-18</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>|more information can be added to the exception at a later time:).&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-19</id>
+ <id>-20</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:auto !!:)&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-20</id>
+ <id>-21</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>13</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;Here is how cloning can be enabled in a throw-expression (15.1):&#10;&#10;[@#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-13</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt;&#10;#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-20</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt;&#10;#include &lt;stdio.h&gt;&#10;#include &lt;errno.h&gt;&#10;&#10;typedef boost::error_info&lt;struct tag_errno,int&gt; errno_info;&#10;&#10;class file_read_error: public boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) { };&#10;&#10;void&#10;file_read( FILE * f, void * buffer, size_t size )&#10; {&#10; if( size!=fread(buffer,1,size,f) )&#10; throw boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)(file_read_error()) &lt;&lt;&#10; errno_info(errno);&#10; }@]&#10;&#10;Of course, (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) may be used with any exception type; there is no requirement that it should derive from boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:).&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-21</id>
+ <id>-22</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>25</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;T must have accessible copy constructor and must not be a reference (there is no requirement that T&apos;s copy constructor does not throw.)&#10;&#10;!!!!Description:&#10;&#10;This class template is used to associate a Tag type with a value type T. Objects of type (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-22</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&lt;Tag,T&gt; can be passed to (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-23</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>|operator&lt;&lt;:) to be stored in objects of type boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:).&#10;&#10;!!!!Note:&#10;&#10;The header &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-33</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt; provides a declaration of the (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-22</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) template, which is sufficient for the purpose of typedefing an instance for specific Tag and T, like this:&#10;&#10;[@#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-33</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt;&#10;&#10;typedef boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-22</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&lt;struct tag_errno,int&gt; errno_info;@]&#10;&#10;Of course, to actually add an (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-22</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) object to (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string> mod=&quot;p&quot;:) using (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-23</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>|operator&lt;&lt;:), or to retrieve it using (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-7</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:), you must first #include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-20</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt;.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-22</id>
+ <id>-23</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>7</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;E must be boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:), or a type that derives (indirectly) from boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:).&#10;&#10;!!!!Effects:&#10;&#10;Stores a copy of v into x. If x already contains data of type (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-22</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&lt;Tag,T&gt;, that data is overwritten.&#10;&#10;!!!!Returns:&#10;&#10;x.&#10;&#10;(:include throws:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-23</id>
+ <id>-24</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>5</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;E must be boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:), or a type that derives (indirectly) from boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:).&#10;&#10;!!!!Effects:&#10;&#10;Equivalent to x &lt;&lt; v.(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html#accessing_elements|get:)&lt;0&gt;() &lt;&lt; ... &lt;&lt; v.(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html#accessing_elements|get:)&lt;N&gt;().&#10;&#10;!!!!Returns:&#10;&#10;x.&#10;&#10;(:include throws:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-24</id>
+ <id>-25</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>29</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;The (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) function must not be called outside of a catch block.&#10;&#10;!!!!Returns:&#10;&#10;* An (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) that refers to the currently handled exception or a copy of the currently handled exception.&#10;* If the function needs to allocate memory and the attempt fails, it returns an (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) that refers to an instance of std::bad_alloc.&#10;&#10;!!!!Throws:&#10;&#10;Nothing.&#10;&#10;!!!!Notes:&#10;&#10;* It is unspecified whether the return values of two successive calls to (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) refer to the same exception object.&#10;* Correct implementation of (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) may require compiler support, unless (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) was used at the time the currently handled exception object was passed to throw. If (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) was not used, and if the compiler does not provide the necessary support, then (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) may return an (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) that refers to an instance of (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-37</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:). In this case, if the original exception object derives from boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:), then the boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) sub-object of the (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-37</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) object is initialized by the boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) copy constructor.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-25</id>
+ <id>-26</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>15</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include decl:)&#10;&#10;!!!!Returns:&#10;&#10;A string representation of all data stored in the boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) object by the (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-23</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>|operator&lt;&lt;:) function. See &quot;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-16</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string> mod=&quot;w&quot;:)&quot; for details.&#10;&#10;!!!!Throws:&#10;&#10;Nothing.&#10;&#10;!!!!Notes:&#10;&#10;*The return value remains valid until the exception object from which it was obtained is destroyed or modified.&#10;*The header </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-31</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string> provides a namespace-scope function </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-27</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string> which takes a std::exception. It calls </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-26</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string> if its argument can be converted to boost::</string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>; otherwise it returns a string that combines the value of std::exception::what and the exception&apos;s dynamic type.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-26</id>
+ <id>-27</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>5</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Returns:&#10;&#10;If dynamic_cast&lt;boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) const *&gt;(&amp;x) is not null, the returned string is initialized by a call to (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-26</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:); otherwise, the returned string combines the output of x.what() and typeid(x).name().&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-27</id>
+ <id>-28</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>3</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include decl:)&#10;&#10;!!!!Effects:&#10;&#10;&#10;&#10;Frees all resources associated with a boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) object.&#10;&#10;!!!!Throws:&#10;&#10;&#10;&#10;Nothing.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-28</id>
+ <id>-29</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
+ <size>17</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;The following example demonstrates how errno can be stored in exception objects using Boost Exception:&#10;&#10;[@#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-17</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt;&#10;#include &lt;errno.h&gt;&#10;#include &lt;iostream&gt;&#10;&#10;typedef boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-22</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&lt;struct tag_errno,int&gt; errno_info; //(1)&#10;&#10;class my_error: public boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:), public std::exception { }; //(2)&#10;&#10;void&#10;f()&#10; {&#10; throw my_error() &lt;&lt; errno_info(errno); //(3)&#10; }&#10;@]&#10;&#10;First, we instantiate the (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-22</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) template using a unique identifier -- tag_errno, and the type of the info it identifies -- int. This provides compile-time type safety for the various values stored in exception objects.&#10;&#10;Second, we define class my_error, which derives from boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:).&#10;&#10;Finally, (3) illustrates how the typedef from (1) can be used with (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-23</id>
+ </shared_ptr>
+ </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>!!!!Throws:&#10;&#10;std::bad_alloc, or any exception emitted by the T copy constructor.&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-29</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
+ <string>|operator&lt;&lt;:) to store values in exception objects at the point of the throw.&#10;&#10;The stored errno value can be recovered at a later time like this:&#10;&#10;[@// ...continued&#10;&#10;void&#10;g()&#10; {&#10; try&#10; {&#10; f();&#10; }&#10; catch(&#10; my_error &amp; x )&#10; {&#10; if( boost::shared_ptr&lt;int const&gt; err=boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-7</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&lt;errno_info&gt;(x) )&#10; std::cerr &lt;&lt; &quot;Error code: &quot; &lt;&lt; *err;&#10; }&#10; }@]&#10;&#10;The (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-7</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) function template is instantiated with the typedef from (1), and is passed an exception object of a polymorphic type. If the exception object contains the requested value, the returned (:link http://www.boost.org/libs/smart_ptr/shared_ptr.htm|shared_ptr:) will point to it; otherwise an empty (:link http://www.boost.org/libs/smart_ptr/shared_ptr.htm|shared_ptr:) is returned.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6891,7 +5665,171 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>37</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;When you catch an exception, you can call (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) to get an (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) object:&#10;&#10;[@#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-9</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt;&#10;#include &lt;boost/thread.hpp&gt;&#10;#include &lt;boost/bind.hpp&gt;&#10;&#10;void do_work(); //throws cloning-enabled boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)s&#10;&#10;void&#10;worker_thread( boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) &amp; error )&#10; {&#10; try&#10; {&#10; do_work();&#10; error = boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)();&#10; }&#10; catch(&#10; ... )&#10; {&#10; error = boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)();&#10; }&#10; }@]&#10;&#10;In the above example, note that (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) captures the original type of the exception object. The exception can be thrown again using the (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-5</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) function:&#10;&#10;[@// ...continued&#10;&#10;void&#10;work()&#10; {&#10; boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) error;&#10; boost::(:link http://www.boost.org/doc/html/boost/thread.html|thread:) t( boost::(:link http://www.boost.org/libs/bind/bind.html|bind:)(worker_thread,boost::(:link http://www.boost.org/doc/html/ref.html|ref:)(error)) );&#10; t.(:link http://www.boost.org/doc/html/boost/thread.html|join:)();&#10; if( error )&#10; boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-5</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)(error);&#10; }@]&#10;&#10;Note that (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) could fail to copy the original exception object in the following cases:&#10;&#10;* if there is not enough memory, in which case the returned (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) points to an instance of std::bad_alloc, or&#10;* if (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) was not used in the throw-expression passed to the original throw statement and the current implementation does not have the necessary compiler-specific support to copy the exception automatically, in which case the returned (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) points to an instance of (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-37</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:).&#10;&#10;Regardless, the use of (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) and (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-5</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) in the above examples is well-formed.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6902,7 +5840,9 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:auto !!:)&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6913,7 +5853,9 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:auto !!:)&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6924,7 +5866,9 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:auto !!:)&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6935,7 +5879,9 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:auto !!:)&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6946,7 +5892,9 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>(:auto !!:)&#10;&#10;!!!Synopsis&#10;&#10;(:include synopsis:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6957,7 +5905,36 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>7</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include decl:)&#10;&#10;!!!!Effects:&#10;&#10;* Default constructor: initializes an empty boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) object.&#10;* Copy constructor: initializes a boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) object which shares with x all data added through (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-23</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>|operator&lt;&lt;:), including data that is added at a future time.&#10;&#10;!!!!Throws:&#10;&#10;Nothing.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6968,7 +5945,27 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>5</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;This type is used by the (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) support in Boost Exception. Please see (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:).&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6979,7 +5976,99 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>21</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;T must be of user-defined type with an accessible no-throw copy constructor.&#10;&#10;!!!!Returns:&#10;&#10;An object of &apos;&apos;unspecified&apos;&apos; type which derives publicly from T. That is, the returned object can be intercepted by a catch(T &amp;).&#10;&#10;!!!!Description:&#10;&#10;&#10;&#10;This function is designed to be used directly in a throw-expression to enable the (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) support in Boost Exception. For example:&#10;&#10;[@class&#10;my_exception:&#10; public std::exception&#10; {&#10; };&#10;&#10;....&#10;throw boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)(my_exception());@]&#10;&#10;Unless (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) is called at the time an exception object is used in a throw-expression, an attempt to copy it using (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) may return an (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) which refers to an instance of (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-37</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:). See (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-25</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) for details.&#10;&#10;!!!!Note:&#10;&#10;Instead of using the throw keyword directly, it is preferable to call boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-43</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:). This is guaranteed to throw an exception that derives from boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) and supports the (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-6</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) functionality.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -7001,7 +6090,27 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>5</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;T must be a user-defined type with accessible no-throw copy constructor as per (15.5.1).&#10;&#10;!!!!Returns:&#10;&#10;* If T derives from boost::</string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>, the returned object is of type T and is a copy of x.&#10;* Otherwise, the returned object is of an unspecified type that derives publicly from both T and boost::</string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>. The T sub-object is initialized from x by the T copy constructor.&#10;&#10;!!!!Throws:&#10;&#10;Nothing.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -7012,7 +6121,54 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>11</size>
+ <variant>2</variant>
+ <string>(:auto !!:)&#10;&#10;Boost Exception supports transporting of exception objects between threads through cloning. This system is similar to (:link http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html|N2179:), but because Boost Exception can not rely on language support, the use of (:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) at the time of the throw is required in order to use cloning.&#10;&#10;!!!!Note:&#10;&#10;All exceptions emitted by the familiar function boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-43</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) are guaranteed to derive from boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-15</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:) and to support cloning.&#10;&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-21</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-30</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -7034,7 +6190,63 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>13</size>
+ <variant>2</variant>
+ <string>(:auto !!!:)&#10;&#10;(:include synopsis:)&#10;&#10;!!!!Requirements:&#10;&#10;E must derive publicly from std::exception.&#10;&#10;!!!!Effects:&#10;&#10;* If BOOST_NO_EXCEPTIONS is not defined, boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-43</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)(e) is equivalent to throw boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-38</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)(boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-40</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)(e)), unless BOOST_EXCEPTION_DISABLE is defined, in which case boost::(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-43</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)(e) is equivalent to throw e;&#10;* If BOOST_NO_EXCEPTIONS is defined, the function is left undefined, and the user is expected to supply an appropriate definition. Callers of </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-43</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string> are allowed to assume that the function never returns; therefore, if the user-defined </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-43</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string> returns, the behavior is undefined.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                 </sorted>
@@ -7042,9 +6254,9 @@
                                                                 </shared_ptr>
                                                         </pair>
                                                         <pair>
- <string>members</string>
+ <string>throws</string>
                                                                 <shared_ptr>
- <id>50</id>
+ <id>48</id>
                                                                         <type>
                                                                                 <string>reno_layer</string>
                                                                         </type>
@@ -7257,7 +6469,9 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>!!!!Throws:&#10;&#10;std::bad_alloc, or any exception emitted by the T copy constructor.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -7268,7 +6482,9 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>!!!!Throws:&#10;&#10;std::bad_alloc, or any exception emitted by T1..TN copy constructor.&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -7487,7 +6703,7 @@
                                                         <pair>
                                                                 <string>synopsis</string>
                                                                 <shared_ptr>
- <id>51</id>
+ <id>49</id>
                                                                         <type>
                                                                                 <string>reno_layer</string>
                                                                         </type>
@@ -7502,19 +6718,6 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
- <variant>2</variant>
- <string>[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-6</id>
- </shared_ptr>
- </weak_ptr>
- <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
                                                                                                         <string>`#include &lt;(:link </string>
@@ -7522,7 +6725,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-16</id>
+ <id>-9</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -7533,7 +6736,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-7</id>
+ <id>-6</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7544,7 +6747,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-16</id>
+ <id>-9</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -7555,73 +6758,86 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-8</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>5</size>
- <variant>2</variant>
- <string>[@#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-39</id>
- </shared_ptr>
- </weak_ptr>
+ <id>-7</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;(:link </string>
+ <string>`#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-40</id>
+ <id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;exception&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-9</id>
+ <id>-8</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
- <string>[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>[@namespace&#10;boost&#10; {&#10;(:include api pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-10</id>
+ <id>-9</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>3</size>
+ <variant>2</variant>
+ <string>[@#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-8</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include api pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-11</id>
+ <id>-10</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>3</size>
+ <variant>2</variant>
+ <string>`#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-20</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-12</id>
+ <id>-11</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7632,7 +6848,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-13</id>
+ <id>-12</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7643,71 +6859,73 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-14</id>
+ <id>-13</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>5</size>
- <variant>2</variant>
- <string>`#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-19</id>
- </shared_ptr>
- </weak_ptr>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include </string>
+ <string>[@#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-14</id>
+ <id>-8</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string> decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>:)&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include api pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-15</id>
+ <id>-14</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>3</size>
+ <variant>2</variant>
+ <string>`#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-9</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-16</id>
+ <id>-15</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
- <string>[@#include &lt;(:link </string>
+ <string>`#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-9</id>
+ <id>-8</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;boost/current_function.hpp&gt;&#10;#include &lt;boost/shared_ptr.hpp&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include def pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-17</id>
+ <id>-16</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7718,31 +6936,31 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-18</id>
+ <id>-17</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>1</size>
+ <variant>2</variant>
+ <string>[@(:include api:)@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-19</id>
+ <id>-18</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
- <variant>2</variant>
- <string>[@#include &lt;boost/tuple/tuple.hpp&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-20</id>
+ <id>-19</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7753,29 +6971,29 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-21</id>
+ <id>-20</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
- <string>[@#include &lt;</string>
+ <string>[@#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-9</id>
+ <id>-8</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>:)&gt;&#10;#include &lt;boost/current_function.hpp&gt;&#10;#include &lt;boost/shared_ptr.hpp&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include api pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-22</id>
+ <id>-21</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7786,7 +7004,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-23</id>
+ <id>-22</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7797,40 +7015,18 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-8</id>
+ <id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-24</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
- </container>
- </pair>
- <pair>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-25</id>
- </shared_ptr>
- </weak_ptr>
- <container>
- <size>0</size>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include def pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-26</id>
+ <id>-23</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7841,40 +7037,49 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-9</id>
+ <id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>:)&gt;\\&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-27</id>
+ <id>-24</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
+ <size>5</size>
                                                                                                         <variant>2</variant>
                                                                                                         <string>`#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-16</id>
+ <id>-34</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-24</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string> decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-28</id>
+ <id>-25</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7885,40 +7090,29 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-16</id>
+ <id>-9</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;\\&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-29</id>
+ <id>-26</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>`#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-40</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-30</id>
+ <id>-27</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7929,7 +7123,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-21</id>
+ <id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -7940,150 +7134,112 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-31</id>
+ <id>-28</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>`#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-39</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-32</id>
+ <id>-29</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>`#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-21</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-33</id>
+ <id>-30</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>`#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-21</id>
- </shared_ptr>
- </weak_ptr>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-31</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>[@#include &lt;exception&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include api pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-34</id>
+ <id>-32</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
- <string>`#include &lt;(:link </string>
+ <string>[@#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-21</id>
+ <id>-8</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>:)&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include api pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-35</id>
+ <id>-33</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>`#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-21</id>
- </shared_ptr>
- </weak_ptr>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>[@namespace&#10;boost&#10; {&#10;(:include api pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-36</id>
+ <id>-34</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>`#include &lt;</string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-38</id>
- </shared_ptr>
- </weak_ptr>
+ <size>1</size>
                                                                                                         <variant>2</variant>
- <string>&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>[@#include &lt;boost/tuple/tuple.hpp&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include api pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
- <id>-37</id>
+ <id>-35</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>11</size>
+ <size>5</size>
                                                                                                         <variant>2</variant>
                                                                                                         <string>[@#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-16</id>
+ <id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -8092,38 +7248,44 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-19</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;</string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-38</id>
+ <id>-32</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>&gt;&#10;#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-21</id>
- </shared_ptr>
- </weak_ptr>
+ <string>:)&gt;&#10;#include &lt;exception&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include api pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-36</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>0</size>
+ </container>
+ </pair>
+ <pair>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-37</id>
+ </shared_ptr>
+ </weak_ptr>
+ <container>
+ <size>3</size>
                                                                                                         <variant>2</variant>
- <string>:)&gt;&#10;#include &lt;(:link </string>
+ <string>`#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-8</id>
+ <id>-9</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>:)&gt;@]&#10;</string>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -8134,9 +7296,18 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>1</size>
+ <size>3</size>
+ <variant>2</variant>
+ <string>`#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-13</id>
+ </shared_ptr>
+ </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>[@#include &lt;exception&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -8147,18 +7318,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>3</size>
- <variant>2</variant>
- <string>[@#include &lt;(:link </string>
- <variant>1</variant>
- <weak_ptr>
- <expired>0</expired>
- <shared_ptr>
- <id>-9</id>
- </shared_ptr>
- </weak_ptr>
- <variant>2</variant>
- <string>:)&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -8171,16 +7331,16 @@
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
- <string>[@#include &lt;</string>
+ <string>`#include &lt;(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
- <id>-9</id>
+ <id>-32</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
- <string>&gt;&#10;&#10;namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -8213,7 +7373,18 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
- <size>0</size>
+ <size>3</size>
+ <variant>2</variant>
+ <string>`#include &lt;(:link </string>
+ <variant>1</variant>
+ <weak_ptr>
+ <expired>0</expired>
+ <shared_ptr>
+ <id>-35</id>
+ </shared_ptr>
+ </weak_ptr>
+ <variant>2</variant>
+ <string>:)&gt;&#10;&#10;[@namespace&#10;boost&#10; {&#10;(:include decl pre_indent=&quot;4&quot;:)&#10; }@]&#10;</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                 </sorted>
@@ -8226,7 +7397,7 @@
                         </layers>
                         <contexts>
                                 <shared_ptr>
- <id>52</id>
+ <id>50</id>
                                         <type>
                                                 <string>reno_context_map</string>
                                         </type>
@@ -8370,7 +7541,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-25</id>
+ <id>-42</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8387,7 +7558,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-24</id>
+ <id>-41</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8404,7 +7575,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-20</id>
+ <id>-18</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8421,7 +7592,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-41</id>
+ <id>-39</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8429,23 +7600,23 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
- <strong>CB567E3390BC92DA06F9899E700792C3790D3707C024CA21D15C930D908AD10A</strong>
- <weak>3422645546</weak>
- <size>5023</size>
- <position>323</position>
+ <strong>07959353ADCC10CF96D16F87F2D01195D75C3A6A2A797513ED3DDFA2F80E2E09</strong>
+ <weak>303643772</weak>
+ <size>1838</size>
+ <position>91</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
+ <string>../../../../boost/throw_exception.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-21</id>
+ <id>-35</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8453,51 +7624,47 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
- <strong>091CEE4B0BEBD40D864A1BC8288C10A248BEFFD4E472647343F2BEDE0BDE0F10</strong>
- <weak>2732630308</weak>
- <size>2455</size>
- <position>323</position>
+ <strong>FC684D0DD5A9732B4130F2AB3DB6E0491D0F523E14B7FB738B2019EA2C7F8717</strong>
+ <weak>2229778754</weak>
+ <size>631</size>
+ <position>319</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/enable_error_info.hpp</string>
+ <string>../../example/cloning_2.cpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-40</id>
+ <id>-30</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>2</size>
- <strong>D36D37BED1D119D9CB6040BE4A9694586CC5EFF7A50C30AB59BB06BF70458015</strong>
- <weak>993620616</weak>
- <size>2321</size>
- <position>457</position>
- <strong>248C5047CA4021C30DE8853D6AEBD138D11A76B3571C856A48C0A442D6D040A5</strong>
- <weak>1700162144</weak>
- <size>2289</size>
- <position>26</position>
+ <size>1</size>
+ <strong>ECAD4A1E70A31D7F87F79F557D107AB0A3C5161CB370139974E08ECAFBE2D32F</strong>
+ <weak>1816954312</weak>
+ <size>457</size>
+ <position>323</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/enable_error_info.hpp</string>
+ <string>../../../../boost/exception/diagnostic_information.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-29</id>
+ <id>-31</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8505,23 +7672,23 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
- <strong>FC684D0DD5A9732B4130F2AB3DB6E0491D0F523E14B7FB738B2019EA2C7F8717</strong>
- <weak>2229778754</weak>
- <size>631</size>
- <position>319</position>
+ <strong>D9B8E6AA12A4F33953B1A961FA590C5A3840234B6531CA8C04AC985AD5800835</strong>
+ <weak>2432554768</weak>
+ <size>702</size>
+ <position>408</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../example/cloning_2.cpp</string>
+ <string>../../example/enable_error_info.cpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-18</id>
+ <id>-19</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8529,9 +7696,9 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
- <strong>ECAD4A1E70A31D7F87F79F557D107AB0A3C5161CB370139974E08ECAFBE2D32F</strong>
- <weak>1816954312</weak>
- <size>457</size>
+ <strong>0C00BEB179039380247D771B12C728884E9A3E5B483AC63CD5789852C7A5CC35</strong>
+ <weak>2506662970</weak>
+ <size>2467</size>
                                                                                                 <position>323</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
@@ -8539,13 +7706,13 @@
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/diagnostic_information.hpp</string>
+ <string>../../../../boost/exception/enable_error_info.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-38</id>
+ <id>-32</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8553,23 +7720,23 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
- <strong>D9B8E6AA12A4F33953B1A961FA590C5A3840234B6531CA8C04AC985AD5800835</strong>
- <weak>2432554768</weak>
- <size>702</size>
- <position>408</position>
+ <strong>5373E336DC4892A41D31694BCA1146382FC3137819A04689CA1F9FFAF1CFAB3B</strong>
+ <weak>4050491732</weak>
+ <size>466</size>
+ <position>307</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../example/enable_error_info.cpp</string>
+ <string>../../example/cloning_1.cpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-11</id>
+ <id>-21</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8577,79 +7744,71 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
- <strong>5373E336DC4892A41D31694BCA1146382FC3137819A04689CA1F9FFAF1CFAB3B</strong>
- <weak>4050491732</weak>
- <size>466</size>
- <position>307</position>
+ <strong>49D31376D97691F7C84A134B5D8C7C66EF1ED6901D376CA250D634AE2B38AB5E</strong>
+ <weak>549270010</weak>
+ <size>163</size>
+ <position>572</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../example/cloning_1.cpp</string>
+ <string>../../../../boost/exception/info.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-17</id>
+ <id>-10</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>2</size>
- <strong>07430F64896197A110C276D8A14CA8A75FBA482DDF50CD40D689A1898C84D054</strong>
- <weak>1712604289</weak>
- <size>1296</size>
- <position>396</position>
- <strong>BCCB91D0DCA6EC45F29CB70CB64AEA6AB54F32F8F1D1937C4CB80B059346DC81</strong>
- <weak>695614553</weak>
- <size>1264</size>
- <position>26</position>
+ <size>1</size>
+ <strong>A9C65F105342D728DE9C996079E82DF25408B94A272090039FAAC12D29659F69</strong>
+ <weak>2378831669</weak>
+ <size>94</size>
+ <position>227</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/info_tuple.hpp</string>
+ <string>../../../../boost/exception/enable_current_exception.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-14</id>
+ <id>-13</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>2</size>
- <strong>973F8368D72D56424349CBB81C8F3015CB9F4F0CD7B23A8C62C3DBADDA37CD57</strong>
- <weak>3833800883</weak>
- <size>4832</size>
- <position>514</position>
- <strong>921FBF6991E17349BFF2AD6F165372F85AA9457DDB28E502ABB6B392BBA6B529</strong>
- <weak>3119269037</weak>
- <size>284</size>
- <position>4423</position>
+ <size>1</size>
+ <strong>429F0DE3599A4CC08B9458E2AECA2EAC202AB3471554FE82C307493805E6676E</strong>
+ <weak>4224422781</weak>
+ <size>401</size>
+ <position>323</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
+ <string>../../../../boost/exception.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-33</id>
+ <id>-17</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8657,27 +7816,27 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>2</size>
- <strong>973F8368D72D56424349CBB81C8F3015CB9F4F0CD7B23A8C62C3DBADDA37CD57</strong>
- <weak>3833800883</weak>
- <size>4832</size>
- <position>514</position>
- <strong>9567A192BF523DDF741004FFF5BDB044D715FEB7CE9AEC89ACC25C1C33E48C4E</strong>
- <weak>2232115228</weak>
- <size>381</size>
- <position>26</position>
+ <strong>FA5027D9799B8059059C23397F469D6EF6328DC23E92E0BE0FF5BE019A576174</strong>
+ <weak>1806359597</weak>
+ <size>3234</size>
+ <position>506</position>
+ <strong>DF9EA87B0140AACF4422F1B76F6A6A409C15F32858BBBA85A35981A824C56BA9</strong>
+ <weak>1137981799</weak>
+ <size>192</size>
+ <position>3036</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
+ <string>../../../../boost/exception/enable_current_exception.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-35</id>
+ <id>-38</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8685,42 +7844,38 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>2</size>
- <strong>973F8368D72D56424349CBB81C8F3015CB9F4F0CD7B23A8C62C3DBADDA37CD57</strong>
- <weak>3833800883</weak>
- <size>4832</size>
- <position>514</position>
- <strong>9DEEF8ED70BF74F501A96BA5DE5BFD42FAD16DE333ABE189E512C332586FC465</strong>
- <weak>2250569940</weak>
- <size>1893</size>
- <position>2528</position>
+ <strong>7ACC4E316D4EDB3EC7AEC35FED3ADB47DDF75D575028D7BCD11C5233E4F4A277</strong>
+ <weak>4268848542</weak>
+ <size>2333</size>
+ <position>457</position>
+ <strong>61DE70107961C0B9A65674017F91FF85190CF84B4F3B0CA7AC04A7E16DE80B37</strong>
+ <weak>3187961206</weak>
+ <size>2301</size>
+ <position>26</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
+ <string>../../../../boost/exception/enable_error_info.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-32</id>
+ <id>-40</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>2</size>
- <strong>973F8368D72D56424349CBB81C8F3015CB9F4F0CD7B23A8C62C3DBADDA37CD57</strong>
- <weak>3833800883</weak>
- <size>4832</size>
- <position>514</position>
- <strong>156B870761DB092CE4269C1173B479A344A1041BA2B883765AF19A72B371D776</strong>
- <weak>3239976720</weak>
- <size>117</size>
- <position>4709</position>
+ <size>1</size>
+ <strong>E312FADF4C02B7A6CB1BE1EC16F05A21C20CBA3282D4EAFC8EBE0BA151F24779</strong>
+ <weak>2820045995</weak>
+ <size>5108</size>
+ <position>323</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
@@ -8733,7 +7888,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-34</id>
+ <id>-9</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8741,51 +7896,55 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>2</size>
- <strong>973F8368D72D56424349CBB81C8F3015CB9F4F0CD7B23A8C62C3DBADDA37CD57</strong>
- <weak>3833800883</weak>
- <size>4832</size>
- <position>514</position>
- <strong>ED09F845070FF7D381BE5EFB6B55313FD09FBA16B64B69992410380EFA45519C</strong>
- <weak>2051939590</weak>
- <size>78</size>
- <position>409</position>
+ <strong>05061ED1DD1B33224DE28BF86AB10D99286A48DC055D54A19FF93B36F22E8A90</strong>
+ <weak>3225446538</weak>
+ <size>372</size>
+ <position>408</position>
+ <strong>ED09AD72D3766F261A0044B58B9B73AA355EB50B1A8F602E5EE7F68D0D928596</strong>
+ <weak>328425570</weak>
+ <size>340</size>
+ <position>26</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception_ptr.hpp</string>
+ <string>../../../../boost/exception/diagnostic_information.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-30</id>
+ <id>-27</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>1</size>
- <strong>49D31376D97691F7C84A134B5D8C7C66EF1ED6901D376CA250D634AE2B38AB5E</strong>
- <weak>549270010</weak>
- <size>163</size>
- <position>572</position>
+ <size>2</size>
+ <strong>612485E090D76B2CC43C1A296F813075BA165C2496082E78E939F10B3DA8E09A</strong>
+ <weak>1770110914</weak>
+ <size>587</size>
+ <position>1322</position>
+ <strong>60F3F48B87487FA6E0D2CCC0750AF435CC92CEC80BBBF609AC71295031AADD0D</strong>
+ <weak>3929437933</weak>
+ <size>361</size>
+ <position>213</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/info.hpp</string>
+ <string>../../../../boost/throw_exception.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-6</id>
+ <id>-43</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8793,17 +7952,17 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
- <strong>48A0C42CCA66A6C935724A9B7BD30B6B3DF16A0A808C804A585A5CC90D85DC5E</strong>
- <weak>1606229033</weak>
- <size>1723</size>
- <position>91</position>
+ <strong>9CC0F5ADB1C04555FD571DABD1D7D6775D8B11977ECC8320AD4451FC435E89A1</strong>
+ <weak>1325628148</weak>
+ <size>3147</size>
+ <position>323</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/throw_exception.hpp</string>
+ <string>../../../../boost/exception/exception.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
@@ -8817,9 +7976,9 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
- <strong>F19D72C24D904689FEEE070D77ABD19090396E7C7663A5BA80E474F1EDA62861</strong>
- <weak>4081508978</weak>
- <size>6759</size>
+ <strong>CAB4D823BD4720B71E1CA5BE482AC95B42A9E07CD5E08671EA23184635F281A2</strong>
+ <weak>3077708282</weak>
+ <size>89</size>
                                                                                                 <position>323</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
@@ -8827,13 +7986,13 @@
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/info.hpp</string>
+ <string>../../../../boost/exception/error_info.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-16</id>
+ <id>-33</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8841,23 +8000,23 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
- <strong>A9C65F105342D728DE9C996079E82DF25408B94A272090039FAAC12D29659F69</strong>
- <weak>2378831669</weak>
- <size>94</size>
- <position>227</position>
+ <strong>749C8E4B47A3FD6A90DD8418BF64C4556537CE6E17ACEB2317D9F81DBEBBB0B0</strong>
+ <weak>1688004766</weak>
+ <size>6783</size>
+ <position>323</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/enable_current_exception.hpp</string>
+ <string>../../../../boost/exception/info.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-39</id>
+ <id>-20</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8865,79 +8024,71 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
- <strong>429F0DE3599A4CC08B9458E2AECA2EAC202AB3471554FE82C307493805E6676E</strong>
- <weak>4224422781</weak>
- <size>401</size>
- <position>323</position>
+ <strong>CAD6C404CB725D336A44920D2341ECA131149AB02C368B59028F8147F16737BF</strong>
+ <weak>2258638601</weak>
+ <size>94</size>
+ <position>227</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception.hpp</string>
+ <string>../../../../boost/exception/info_tuple.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-37</id>
+ <id>-34</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>2</size>
- <strong>C1FAB39F3B09548EC7B197853DC956883AE1C3A29A8A9D2FBDB97D8BEC76CD75</strong>
- <weak>173037458</weak>
- <size>6345</size>
- <position>737</position>
- <strong>F839AFD37DC086BB1231B8E87D8EEBD28129649A06FC685AC7DF65595871AE30</strong>
- <weak>2291609923</weak>
- <size>1204</size>
- <position>243</position>
+ <size>1</size>
+ <strong>F4C951B28F7DE500973AA3DFAA99F2BADA6EDAFA2B406C30BEF3B7FBE6FD57D7</strong>
+ <weak>2263754923</weak>
+ <size>982</size>
+ <position>306</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/info.hpp</string>
+ <string>../../example/error_info_2.cpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-27</id>
+ <id>-11</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>2</size>
- <strong>C1FAB39F3B09548EC7B197853DC956883AE1C3A29A8A9D2FBDB97D8BEC76CD75</strong>
- <weak>173037458</weak>
- <size>6345</size>
- <position>737</position>
- <strong>65D13C1BB0A16823F69A32BAB56A51CA317075C7FC8B7441EE0D9B57AF5AB2AC</strong>
- <weak>2592266329</weak>
- <size>712</size>
- <position>1700</position>
+ <size>1</size>
+ <strong>CE411E21EE9878B55B5906D033A0FC52574FB59D8A8CECB75405E9B1C9D782DB</strong>
+ <weak>1173443713</weak>
+ <size>308</size>
+ <position>302</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/info.hpp</string>
+ <string>../../example/logging.cpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-7</id>
+ <id>-16</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8945,14 +8096,14 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>2</size>
- <strong>C1FAB39F3B09548EC7B197853DC956883AE1C3A29A8A9D2FBDB97D8BEC76CD75</strong>
- <weak>173037458</weak>
- <size>6345</size>
+ <strong>35F026FF4EC46450D19A8F970D6E39B881DA6B0FC2E95774CCADC5E34C9D57F1</strong>
+ <weak>1990614462</weak>
+ <size>6369</size>
                                                                                                 <position>737</position>
- <strong>27AC1164E0A824D548386BEDCDC81DCAC283F3D286B0ECEE05B039BB8C392BFC</strong>
- <weak>1247954090</weak>
- <size>249</size>
- <position>1449</position>
+ <strong>F839AFD37DC086BB1231B8E87D8EEBD28129649A06FC685AC7DF65595871AE30</strong>
+ <weak>2291609923</weak>
+ <size>1204</size>
+ <position>243</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
@@ -8965,7 +8116,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-28</id>
+ <id>-22</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8973,27 +8124,27 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>2</size>
- <strong>05061ED1DD1B33224DE28BF86AB10D99286A48DC055D54A19FF93B36F22E8A90</strong>
- <weak>3225446538</weak>
- <size>372</size>
- <position>408</position>
- <strong>ED09AD72D3766F261A0044B58B9B73AA355EB50B1A8F602E5EE7F68D0D928596</strong>
- <weak>328425570</weak>
- <size>340</size>
- <position>26</position>
+ <strong>35F026FF4EC46450D19A8F970D6E39B881DA6B0FC2E95774CCADC5E34C9D57F1</strong>
+ <weak>1990614462</weak>
+ <size>6369</size>
+ <position>737</position>
+ <strong>61B57D0AE5F1033900B7DE4401AC1633F4639471A19194D5660F6C43465FCE3D</strong>
+ <weak>1668078447</weak>
+ <size>724</size>
+ <position>1712</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/diagnostic_information.hpp</string>
+ <string>../../../../boost/exception/info.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-36</id>
+ <id>-7</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -9001,21 +8152,21 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>2</size>
- <strong>612485E090D76B2CC43C1A296F813075BA165C2496082E78E939F10B3DA8E09A</strong>
- <weak>1770110914</weak>
- <size>587</size>
- <position>1207</position>
- <strong>60F3F48B87487FA6E0D2CCC0750AF435CC92CEC80BBBF609AC71295031AADD0D</strong>
- <weak>3929437933</weak>
- <size>361</size>
- <position>213</position>
+ <strong>35F026FF4EC46450D19A8F970D6E39B881DA6B0FC2E95774CCADC5E34C9D57F1</strong>
+ <weak>1990614462</weak>
+ <size>6369</size>
+ <position>737</position>
+ <strong>C5A5927411FB16BB27418CF87226A27D6EC66958BD46DC87F97E571CB492E49D</strong>
+ <weak>2066106304</weak>
+ <size>261</size>
+ <position>1449</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/throw_exception.hpp</string>
+ <string>../../../../boost/exception/info.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
@@ -9028,48 +8179,56 @@
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>1</size>
- <strong>9CC0F5ADB1C04555FD571DABD1D7D6775D8B11977ECC8320AD4451FC435E89A1</strong>
- <weak>1325628148</weak>
- <size>3147</size>
- <position>323</position>
+ <size>2</size>
+ <strong>D1AA2FC554CD67A50917905B0E9CCA2EBC1A9BA97368757B36ADF8419756ECF1</strong>
+ <weak>85276724</weak>
+ <size>4917</size>
+ <position>514</position>
+ <strong>F87D7E0321BDDAE23D5A6667CB12116411468AEC54E3B35FB9C8CA94BFECA41E</strong>
+ <weak>1149388739</weak>
+ <size>296</size>
+ <position>4496</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/exception.hpp</string>
+ <string>../../../../boost/exception_ptr.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-9</id>
+ <id>-14</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>1</size>
- <strong>CAB4D823BD4720B71E1CA5BE482AC95B42A9E07CD5E08671EA23184635F281A2</strong>
- <weak>3077708282</weak>
- <size>89</size>
- <position>323</position>
+ <size>2</size>
+ <strong>D1AA2FC554CD67A50917905B0E9CCA2EBC1A9BA97368757B36ADF8419756ECF1</strong>
+ <weak>85276724</weak>
+ <size>4917</size>
+ <position>514</position>
+ <strong>A098B6FA5BC8E72E0E69C0323195FCC142AE807564C6892FCBD88588F2FBE049</strong>
+ <weak>2579522516</weak>
+ <size>405</size>
+ <position>26</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/error_info.hpp</string>
+ <string>../../../../boost/exception_ptr.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-5</id>
+ <id>-37</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -9077,99 +8236,111 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>2</size>
- <strong>392208A2FD122D1ED27D128A7BF65F9340218FAAD756EA58D26D2205D32681A6</strong>
- <weak>729208193</weak>
- <size>3206</size>
- <position>506</position>
- <strong>8F3B5E1A267CA225679713F4DDF528041F573BC02D1DBCD8FFEF57EF0AA599B9</strong>
- <weak>4197332561</weak>
- <size>180</size>
- <position>3020</position>
+ <strong>D1AA2FC554CD67A50917905B0E9CCA2EBC1A9BA97368757B36ADF8419756ECF1</strong>
+ <weak>85276724</weak>
+ <size>4917</size>
+ <position>514</position>
+ <strong>9DEEF8ED70BF74F501A96BA5DE5BFD42FAD16DE333ABE189E512C332586FC465</strong>
+ <weak>2250569940</weak>
+ <size>1893</size>
+ <position>2601</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/enable_current_exception.hpp</string>
+ <string>../../../../boost/exception_ptr.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-31</id>
+ <id>-25</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>1</size>
- <strong>CAD6C404CB725D336A44920D2341ECA131149AB02C368B59028F8147F16737BF</strong>
- <weak>2258638601</weak>
- <size>94</size>
- <position>227</position>
+ <size>2</size>
+ <strong>D1AA2FC554CD67A50917905B0E9CCA2EBC1A9BA97368757B36ADF8419756ECF1</strong>
+ <weak>85276724</weak>
+ <size>4917</size>
+ <position>514</position>
+ <strong>156B870761DB092CE4269C1173B479A344A1041BA2B883765AF19A72B371D776</strong>
+ <weak>3239976720</weak>
+ <size>117</size>
+ <position>4794</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../../../boost/exception/info_tuple.hpp</string>
+ <string>../../../../boost/exception_ptr.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-19</id>
+ <id>-5</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>1</size>
- <strong>F4C951B28F7DE500973AA3DFAA99F2BADA6EDAFA2B406C30BEF3B7FBE6FD57D7</strong>
- <weak>2263754923</weak>
- <size>982</size>
- <position>306</position>
+ <size>2</size>
+ <strong>D1AA2FC554CD67A50917905B0E9CCA2EBC1A9BA97368757B36ADF8419756ECF1</strong>
+ <weak>85276724</weak>
+ <size>4917</size>
+ <position>514</position>
+ <strong>ED09F845070FF7D381BE5EFB6B55313FD09FBA16B64B69992410380EFA45519C</strong>
+ <weak>2051939590</weak>
+ <size>78</size>
+ <position>433</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../example/error_info_2.cpp</string>
+ <string>../../../../boost/exception_ptr.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-22</id>
+ <id>-6</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
- <size>1</size>
- <strong>CE411E21EE9878B55B5906D033A0FC52574FB59D8A8CECB75405E9B1C9D782DB</strong>
- <weak>1173443713</weak>
- <size>308</size>
- <position>302</position>
+ <size>2</size>
+ <strong>F7633FDCF6615C0199645701EE6E7ACE5CBCD7A7CF6838573791E91ABB3C09F2</strong>
+ <weak>1668435395</weak>
+ <size>1332</size>
+ <position>396</position>
+ <strong>A1F443AF571973A12005D2F7D4AE09A32AAF686FEEAE272EC21512A65EB943E8</strong>
+ <weak>3879093659</weak>
+ <size>1300</size>
+ <position>26</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
- <string>../../example/logging.cpp</string>
+ <string>../../../../boost/exception/info_tuple.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-10</id>
+ <id>-24</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -9193,7 +8364,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-13</id>
+ <id>-29</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -9245,7 +8416,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-26</id>
+ <id>-15</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -9281,7 +8452,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-15</id>
+ <id>-28</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -9313,7 +8484,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-42</id>
+ <id>-26</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -9345,7 +8516,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
- <id>-43</id>
+ <id>-36</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                         </sorted>
@@ -9355,7 +8526,7 @@
                         </contexts>
                         <index>
                                 <shared_ptr>
- <id>53</id>
+ <id>51</id>
                                         <type>
                                                 <string>tag_index</string>
                                         </type>
@@ -9376,7 +8547,7 @@
                                                                                         <id>-5</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>boost/exception/error_info.hpp,error_info,header</string>
+ <string>exception_ptr,free,function,rethrow_exception</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9385,7 +8556,7 @@
                                                                                         <id>-6</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>BOOST_ERROR_INFO,error_info,macro</string>
+ <string>exception_ptr,type</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9403,7 +8574,7 @@
                                                                                         <id>-8</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>boost/throw_exception.hpp,header,throw_exception</string>
+ <string>boost/exception/exception.hpp,exception,header</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9412,7 +8583,7 @@
                                                                                         <id>-9</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>boost/exception/exception.hpp,exception,header</string>
+ <string>boost/exception_ptr.hpp,exception_ptr,header</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9421,7 +8592,7 @@
                                                                                         <id>-10</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>tutorial</string>
+ <string>BOOST_ERROR_INFO,error_info,macro</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9430,7 +8601,7 @@
                                                                                         <id>-11</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>tutorial</string>
+ <string>noalso,noindex,tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9448,7 +8619,7 @@
                                                                                         <id>-13</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>noalso,noindex,tutorial</string>
+ <string>boost/exception/enable_current_exception.hpp,enable_current_exception,exception_ptr,header</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9457,7 +8628,7 @@
                                                                                         <id>-14</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>error_info,free,function,operator&lt;&lt;,operator&lt;&lt;/tuple</string>
+ <string>copy_exception,exception_ptr,free,function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9466,7 +8637,7 @@
                                                                                         <id>-15</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>exception,exception::~exception,function,member</string>
+ <string>exception,type</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9475,7 +8646,7 @@
                                                                                         <id>-16</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>boost/exception/info.hpp,error_info,header,info</string>
+ <string>tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9484,7 +8655,7 @@
                                                                                         <id>-17</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>noalso,noindex,tutorial</string>
+ <string>boost/exception.hpp,header</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9493,7 +8664,7 @@
                                                                                         <id>-18</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>noalso,noindex,tutorial</string>
+ <string>tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9502,7 +8673,7 @@
                                                                                         <id>-19</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>boost/exception/info_tuple.hpp,error_info,header,info_tuple</string>
+ <string>tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9511,7 +8682,7 @@
                                                                                         <id>-20</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>tutorial</string>
+ <string>boost/exception/info.hpp,error_info,header,info</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9520,7 +8691,7 @@
                                                                                         <id>-21</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>boost/exception_ptr.hpp,exception_ptr,header</string>
+ <string>noalso,noindex,tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9529,7 +8700,7 @@
                                                                                         <id>-22</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>noalso,noindex,tutorial</string>
+ <string>error_info,free,type</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9538,7 +8709,7 @@
                                                                                         <id>-23</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>free,function,throw_exception</string>
+ <string>error_info,free,function,operator&lt;&lt;,operator&lt;&lt;/exception</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9547,7 +8718,7 @@
                                                                                         <id>-24</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>tutorial</string>
+ <string>error_info,free,function,operator&lt;&lt;,operator&lt;&lt;/tuple</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9556,7 +8727,7 @@
                                                                                         <id>-25</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>noindex</string>
+ <string>current_exception,exception_ptr,free,function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9565,7 +8736,7 @@
                                                                                         <id>-26</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>exception,type</string>
+ <string>diagnostic_information,exception,exception::diagnostic_information,function,member</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9574,7 +8745,7 @@
                                                                                         <id>-27</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>error_info,free,type</string>
+ <string>diagnostic_information,free,function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9583,7 +8754,7 @@
                                                                                         <id>-28</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>error_info,free,function,operator&lt;&lt;,operator&lt;&lt;/exception</string>
+ <string>exception,exception::~exception,function,member</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9592,7 +8763,7 @@
                                                                                         <id>-29</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>enable_error_info,error_info,free,function</string>
+ <string>noalso,noindex,tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9601,7 +8772,7 @@
                                                                                         <id>-30</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>exception_ptr,type</string>
+ <string>noalso,noindex,tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9610,7 +8781,7 @@
                                                                                         <id>-31</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>enable_current_exception,exception_ptr,free,function</string>
+ <string>boost/exception/diagnostic_information.hpp,diagnostic_information,header</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9619,7 +8790,7 @@
                                                                                         <id>-32</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>current_exception,exception_ptr,free,function</string>
+ <string>boost/exception/enable_error_info.hpp,enable_error_info,error_info,header</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9628,7 +8799,7 @@
                                                                                         <id>-33</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>copy_exception,exception_ptr,free,function</string>
+ <string>boost/exception/error_info.hpp,error_info,header</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9637,7 +8808,7 @@
                                                                                         <id>-34</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>exception_ptr,free,function,rethrow_exception</string>
+ <string>boost/exception/info_tuple.hpp,error_info,header,info_tuple</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9646,7 +8817,7 @@
                                                                                         <id>-35</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>exception_ptr,type,unknown_exception</string>
+ <string>boost/throw_exception.hpp,header,throw_exception</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9655,7 +8826,7 @@
                                                                                         <id>-36</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>diagnostic_information,free,function</string>
+ <string>exception,exception::exception,function,member</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9664,7 +8835,7 @@
                                                                                         <id>-37</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>boost/exception.hpp,header</string>
+ <string>exception_ptr,type,unknown_exception</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9673,7 +8844,7 @@
                                                                                         <id>-38</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>boost/exception/diagnostic_information.hpp,diagnostic_information,header</string>
+ <string>enable_current_exception,exception_ptr,free,function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9682,7 +8853,7 @@
                                                                                         <id>-39</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>boost/exception/enable_current_exception.hpp,enable_current_exception,exception_ptr,header</string>
+ <string>index,noindex</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9691,7 +8862,7 @@
                                                                                         <id>-40</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>boost/exception/enable_error_info.hpp,enable_error_info,error_info,header</string>
+ <string>enable_error_info,error_info,free,function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9700,7 +8871,7 @@
                                                                                         <id>-41</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>index,noindex</string>
+ <string>tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9709,7 +8880,7 @@
                                                                                         <id>-42</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>diagnostic_information,exception,exception::diagnostic_information,function,member</string>
+ <string>noindex</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -9718,7 +8889,7 @@
                                                                                         <id>-43</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
- <string>exception,exception::exception,function,member</string>
+ <string>free,function,throw_exception</string>
                                                                 </pair>
                                                         </sorted>
                                                 </tag_index>

Modified: branches/CMake/release/libs/exception/doc/throw_exception.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/throw_exception.html (original)
+++ branches/CMake/release/libs/exception/doc/throw_exception.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>throw_exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>throw_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/throw_exception.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -39,14 +40,16 @@
 <p>E must derive publicly from std::exception.</p>
 <h4>Effects:</h4>
 <div><ul><li> If BOOST_NO_EXCEPTIONS is not defined, boost::<span class="RenoLink">throw_exception</span>(e) is equivalent to throw boost::<span class="RenoLink">enable_current_exception</span>(boost::<span class="RenoLink">enable_error_info</span>(e)), unless BOOST_EXCEPTION_DISABLE is defined, in which case boost::<span class="RenoLink">throw_exception</span>(e) is equivalent to throw e;</li>
-<li> If BOOST_NO_EXCEPTIONS is defined, the function is left undefined, and the user is expected to supply an appropriate definition. Callers of throw_exception are allowed to assume that the function never returns; therefore, if the user-defined throw_exception returns, the behavior is undefined.</li>
+<li> If BOOST_NO_EXCEPTIONS is defined, the function is left undefined, and the user is expected to supply an appropriate definition. Callers of <span class="RenoLink">throw_exception</span> are allowed to assume that the function never returns; therefore, if the user-defined <span class="RenoLink">throw_exception</span> returns, the behavior is undefined.</li>
 </ul></div>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="throw_exception_hpp.html">boost/throw_exception.hpp<br/>
 </a><a href="enable_current_exception.html">enable_current_exception<br/>
-</a><a href="tutorial_exception_ptr.html">Tutorial: Transporting of Exceptions between Threads<br/>
+</a><a href="tutorial_exception_ptr.html">Transporting of Exceptions Between Threads<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/throw_exception_hpp.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/throw_exception_hpp.html (original)
+++ branches/CMake/release/libs/exception/doc/throw_exception_hpp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>boost/throw_exception.hpp</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>boost/throw_exception.hpp</h2>
+</div>
 <h3>Synopsis</h3>
 <div class="RenoIncludeDIV"><pre>#include &lt;<span class="RenoLink">boost/exception/enable_current_exception.hpp</span>&gt;
 #include &lt;<span class="RenoLink">boost/exception/enable_error_info.hpp</span>&gt;
@@ -39,11 +40,13 @@
     
     #endif</span></span>
     }</pre>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_hpp.html">boost/exception.hpp<br/>
 </a><a href="throw_exception.html">throw_exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/tutorial_diagnostic_information.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/tutorial_diagnostic_information.html (original)
+++ branches/CMake/release/libs/exception/doc/tutorial_diagnostic_information.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
 <head>
         <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
- <title>Tutorial: Diagnostic Information</title>
+ <title>diagnostic information</title>
         <link href='reno.css' type='text/css' rel='stylesheet'/>
 </head>
 <body>
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>Diagnostic Information</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>Diagnostic Information</h2>
+</div>
 <p>Class boost::<span class="RenoLink">exception</span> provides a virtual member function <span class="RenoLink">diagnostic_information</span>, with a signature similar to the familiar std::exception::what function. The default implementation returns a string value that is not presentable as a friendly user message, but because it is generated automatically, it is useful for debugging or logging purposes. Here is an example:</p>
 <pre>#include &lt;<span class="RenoLink">boost/exception.hpp</span>&gt;
 #include &lt;iostream&gt;
@@ -40,13 +41,15 @@
         }
     }</pre>
 <p>The <span class="RenoLink">diagnostic_information</span> member function iterates over all data objects stored in the boost::<span class="RenoLink">exception</span> through <span class="RenoLink">operator<<</span>. The returned string is constructed by converting each data object to string and then concatenating these strings together.</p>
-<p>When the <span class="RenoLink">error_info</span>&lt;Tag,T&gt; template is instantiated, the system attempts overload resolution for an unqualified call to to_string(x), where x is of type T. If this is successful, the to_string overload is used to convert objects of type T to string.</p>
+<p>When the <span class="RenoLink">error_info</span>&lt;Tag,T&gt; template is instantiated, the system attempts overload resolution for an unqualified call to to_string(x), where x is of type T. If this is successful, the to_string overload is expected to return std::string and is used to convert objects of type T to string.</p>
 <p>Otherwise, the system attempts overload resolution for s &lt;&lt; x, where s is a std::ostringstream and x is of type T. If this is successful, the operator&lt;&lt; overload is used to convert objects of type T to string.</p>
 <p>Otherwise the system is unable to convert objects of type T to string, and an unspecified stub string value is used without issuing a compile error.</p>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_diagnostic_information.html">exception::diagnostic_information<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/tutorial_enable_error_info.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/tutorial_enable_error_info.html (original)
+++ branches/CMake/release/libs/exception/doc/tutorial_enable_error_info.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
 <head>
         <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
- <title>Tutorial: Integrating Boost Exception in Existing Exception Class Hierarchies</title>
+ <title>integrating boost exception in existing exception class hierarchies</title>
         <link href='reno.css' type='text/css' rel='stylesheet'/>
 </head>
 <body>
@@ -19,8 +19,9 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>Integrating Boost Exception in Existing Exception Class Hierarchies</h2>
-<p>Some exception hierarchies can not be modified to make boost::<span class="RenoLink">exception</span> a base type. For this case, the <span class="RenoLink">enable_error_info</span> function template can be used to make exception objects derive from boost::<span class="RenoLink">exception</span> anyway. Here is an example:</p>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>Integrating Boost Exception in Existing Exception Class Hierarchies</h2>
+</div>
+<p>Some exception hierarchies can not be modified to make boost::<span class="RenoLink">exception</span> a base type. In this case, the <span class="RenoLink">enable_error_info</span> function template can be used to make exception objects derive from boost::<span class="RenoLink">exception</span> anyway. Here is an example:</p>
 <pre>#include &lt;<span class="RenoLink">boost/exception.hpp</span>&gt;
 #include &lt;stdexcept&gt;
 
@@ -49,9 +50,11 @@
     };
 </pre>
 <p>The call to <span class="RenoLink">enable_error_info</span>&lt;T&gt; gets us an object of <i>unspecified type</i> which is guaranteed to derive from both boost::<span class="RenoLink">exception</span> and T. This makes it possible to use <span class="RenoLink">operator<<</span> to store additional information in the exception object. The exception can be intercepted as T &amp;, so existing exception handling will not break. It can also be intercepted as boost::<span class="RenoLink">exception</span> &amp;, so that <span class="RenoLink">more information can be added to the exception at a later time</span>.</p>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/tutorial_exception_ptr.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/tutorial_exception_ptr.html (original)
+++ branches/CMake/release/libs/exception/doc/tutorial_exception_ptr.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
 <head>
         <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
- <title>Tutorial: Transporting of Exceptions between Threads</title>
+ <title>transporting of exceptions between threads</title>
         <link href='reno.css' type='text/css' rel='stylesheet'/>
 </head>
 <body>
@@ -19,11 +19,13 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>Transporting of Exceptions between Threads</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>Transporting of Exceptions Between Threads</h2>
+</div>
 <p>Boost Exception supports transporting of exception objects between threads through cloning. This system is similar to <span class="RenoLink">N2179</span>, but because Boost Exception can not rely on language support, the use of <span class="RenoLink">enable_current_exception</span> at the time of the throw is required in order to use cloning.</p>
 <h4>Note:</h4>
 <p>All exceptions emitted by the familiar function boost::<span class="RenoLink">throw_exception</span> are guaranteed to derive from boost::<span class="RenoLink">exception</span> and to support cloning.</p>
-<div class="RenoIncludeDIV"><h3>Using enable_current_exception at the Time of the Throw</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>Using enable_current_exception at the Time of the Throw</h3>
+</div>
 <p>Here is how cloning can be enabled in a throw-expression (15.1):</p>
 <pre>#include &lt;<span class="RenoLink">boost/exception/enable_current_exception.hpp</span>&gt;
 #include &lt;<span class="RenoLink">boost/exception/info.hpp</span>&gt;
@@ -42,7 +44,8 @@
             errno_info(errno);
     }</pre>
 <p>Of course, <span class="RenoLink">enable_current_exception</span> may be used with any exception type; there is no requirement that it should derive from boost::<span class="RenoLink">exception</span>.</p>
-</div><div class="RenoIncludeDIV"><h3>Cloning and Re-throwing an Exception</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>Cloning and Re-Throwing an Exception</h3>
+</div>
 <p>When you catch an exception, you can call <span class="RenoLink">current_exception</span> to get an <span class="RenoLink">exception_ptr</span> object:</p>
 <pre>#include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;
 #include &lt;boost/thread.hpp&gt;
@@ -76,13 +79,16 @@
     if( error )
         boost::<span class="RenoLink">rethrow_exception</span>(error);
     }</pre>
-<p>Note that <span class="RenoLink">current_exception</span> could fail to copy the original exception object in the following cases:* if there is not enough memory, in which case the returned <span class="RenoLink">exception_ptr</span> points to an instance of std::bad_alloc, or</p>
-<div><ul><li> if <span class="RenoLink">enable_current_exception</span> was not used in the throw-expression passed to the original throw statement and the current implementation does not have the necessary compiler-specific support to copy the exception automatically, in which case the returned <span class="RenoLink">exception_ptr</span> points to an instance of <span class="RenoLink">unknown_exception</span>.</li>
+<p>Note that <span class="RenoLink">current_exception</span> could fail to copy the original exception object in the following cases:</p>
+<div><ul><li> if there is not enough memory, in which case the returned <span class="RenoLink">exception_ptr</span> points to an instance of std::bad_alloc, or</li>
+<li> if <span class="RenoLink">enable_current_exception</span> was not used in the throw-expression passed to the original throw statement and the current implementation does not have the necessary compiler-specific support to copy the exception automatically, in which case the returned <span class="RenoLink">exception_ptr</span> points to an instance of <span class="RenoLink">unknown_exception</span>.</li>
 </ul></div>
 <p>Regardless, the use of <span class="RenoLink">current_exception</span> and <span class="RenoLink">rethrow_exception</span> in the above examples is well-formed.</p>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/tutorial_transporting_data.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/tutorial_transporting_data.html (original)
+++ branches/CMake/release/libs/exception/doc/tutorial_transporting_data.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
 <head>
         <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
- <title>Tutorial: Transporting of Arbitrary Data to the Catch Site</title>
+ <title>transporting of arbitrary data to the catch site</title>
         <link href='reno.css' type='text/css' rel='stylesheet'/>
 </head>
 <body>
@@ -19,9 +19,11 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h2>Transporting of Arbitrary Data to the Catch Site</h2>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h2>Transporting of Arbitrary Data to the Catch Site</h2>
+</div>
 <p>All exception types that derive from boost::<span class="RenoLink">exception</span> can be used as type-safe containers of arbitrary data objects, while complying with the no-throw requirements (15.5.1) of the ANSI C++ standard for exception types. Data can be added to a boost::<span class="RenoLink">exception</span> at the time of the throw, or at a later time.</p>
-<div class="RenoIncludeDIV"><h3>Adding of Arbitrary Data at the Point of the Throw</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>Adding of Arbitrary Data at the Point of the Throw</h3>
+</div>
 <p>The following example demonstrates how errno can be stored in exception objects using Boost Exception:</p>
 <pre>#include &lt;<span class="RenoLink">boost/exception.hpp</span>&gt;
 #include &lt;errno.h&gt;
@@ -57,8 +59,9 @@
             std::cerr &lt;&lt; "Error code: " &lt;&lt; *err;
         }
     }</pre>
-<p>The <span class="RenoLink">get_error_info</span> function template is instantiated with the typedef from (1), and is passed an exception object of any type that derives publicly from boost::<span class="RenoLink">exception</span>. If the exception object contains the requested value, the returned <span class="RenoLink">shared_ptr</span> will point to it; otherwise an empty <span class="RenoLink">shared_ptr</span> is returned.</p>
-</div><div class="RenoIncludeDIV"><h3>Adding of Arbitrary Data to Active Exception Objects</h3>
+<p>The <span class="RenoLink">get_error_info</span> function template is instantiated with the typedef from (1), and is passed an exception object of a polymorphic type. If the exception object contains the requested value, the returned <span class="RenoLink">shared_ptr</span> will point to it; otherwise an empty <span class="RenoLink">shared_ptr</span> is returned.</p>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>Adding of Arbitrary Data to Active Exception Objects</h3>
+</div>
 <p>Sometimes the throw site does not have all the information that is needed at the catch site to make sense of what went wrong. Here is an example:</p>
 <pre>#include &lt;stdio.h&gt;
 #include &lt;string&gt;
@@ -138,7 +141,8 @@
     }</pre>
 <p>The above function is (almost) exception-neutral -- if an exception is emitted by any function call within the try block, parse_file does not need to do any real work, but it intercepts any boost::<span class="RenoLink">exception</span> object, stores the file name, and re-throws using a throw-expression with no operand (15.1.6). The rationale for catching any boost::<span class="RenoLink">exception</span> object is that the file name is relevant to any failure that occurs in parse_file, <i>even if the failure is unrelated to file I/O</i>.</p>
 <p>As usual, the stored data can be retrieved using <span class="RenoLink">get_error_info</span>.</p>
-</div><div class="RenoIncludeDIV"><h3>Adding Grouped Data to Exceptions</h3>
+</div><div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>Adding Grouped Data to Exceptions</h3>
+</div>
 <p>The code snippet below demonstrates how boost::<span class="RenoLink">tuple</span> can be used to bundle the name of the function that failed, together with the reported errno so that they can be added to exception objects more conveniently together:</p>
 <pre>#include &lt;<span class="RenoLink">boost/exception/info_tuple.hpp</span>&gt;
 #include &lt;boost/shared_ptr.hpp&gt;
@@ -164,10 +168,12 @@
             clib_failure("fopen",errno);
     }</pre>
 <p>Note that the members of a boost::<span class="RenoLink">tuple</span> are stored separately in exception objects; they can only be retrieved individually, using <span class="RenoLink">get_error_info</span>.</p>
-</div></div><h3>See also:</h3>
+</div></div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
-</a><a href="tutorial_enable_error_info.html">Tutorial: Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
+</a><a href="tutorial_enable_error_info.html">Integrating Boost Exception in Existing Exception Class Hierarchies<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/doc/unknown_exception.html
==============================================================================
--- branches/CMake/release/libs/exception/doc/unknown_exception.html (original)
+++ branches/CMake/release/libs/exception/doc/unknown_exception.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,8 @@
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
-<div class="RenoIncludeDIV"><h3>unknown_exception</h3>
+<div class="RenoIncludeDIV"><div class="RenoAutoDIV"><h3>unknown_exception</h3>
+</div>
 <div class="RenoIncludeDIV"><p><span class="RenoEscape">&#35;<!--<wiki>`&#35;</wiki>--></span>include &lt;<span class="RenoLink">boost/exception_ptr.hpp</span>&gt;</p>
 <pre>namespace
 boost
@@ -33,12 +34,14 @@
         };</span>
     }</pre>
 </div><p>This type is used by the <span class="RenoLink">exception_ptr</span> support in Boost Exception. Please see <span class="RenoLink">current_exception</span>.</p>
-</div><h3>See also:</h3>
+</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
+<h3>See Also:</h3>
 <div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
 </a><a href="exception_cloning_hpp.html">boost/exception_ptr.hpp<br/>
 </a><a href="current_exception.html">current_exception<br/>
 </a><a href="enable_current_exception.html">enable_current_exception<br/>
 </a></div>
+</div>
 <!-- Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. -->
 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

Modified: branches/CMake/release/libs/exception/example/Jamfile
==============================================================================
--- branches/CMake/release/libs/exception/example/Jamfile (original)
+++ branches/CMake/release/libs/exception/example/Jamfile 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,7 +9,7 @@
 obj error_info_1 : error_info_1.cpp ;
 obj error_info_2 : error_info_2.cpp ;
 obj cloning_1 : cloning_1.cpp ;
-obj cloning_2 : cloning_2.cpp ;
+obj cloning_2 : cloning_2.cpp : <threading>multi ;
 obj info_tuple : info_tuple.cpp ;
 obj enable_error_info : enable_error_info.cpp ;
 obj logging : logging.cpp ;

Modified: branches/CMake/release/libs/exception/test/diagnostic_information_test.cpp
==============================================================================
--- branches/CMake/release/libs/exception/test/diagnostic_information_test.cpp (original)
+++ branches/CMake/release/libs/exception/test/diagnostic_information_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -50,14 +50,14 @@
     using namespace boost;
         {
         error1 x;
- BOOST_TEST(x.what()==std::string("error1"));
+ BOOST_TEST(x.what()==std::string("error1"));
         std::string di=get_diagnostic_information(x);
         BOOST_TEST(di.find("type:")!=std::string::npos);
         BOOST_TEST(di.find("error1")!=std::string::npos);
         }
         {
         error2 x; x << tag_int(42);
- BOOST_TEST(x.what()==std::string("error2"));
+ BOOST_TEST(x.what()==std::string("error2"));
         std::string di=get_diagnostic_information(x);
         BOOST_TEST(di.find("type:")!=std::string::npos);
         BOOST_TEST(di.find("error2")!=std::string::npos);

Modified: branches/CMake/release/libs/filesystem/doc/index.htm
==============================================================================
--- branches/CMake/release/libs/filesystem/doc/index.htm (original)
+++ branches/CMake/release/libs/filesystem/doc/index.htm 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -332,7 +332,7 @@
 systems which will work with the Filesystem Library.</p>
 <p>The object-library can be built for static or dynamic (shared/dll) linking.
 This is controlled by the BOOST_ALL_DYN_LINK or BOOST_FILESYSTEM_DYN_LINK
-macros. See the <a href="http://www.boost.org/more/separate_compilation.html">Separate
+macros. See the <a href="http://www.boost.org/development/separate_compilation.html">Separate
 Compilation</a> page for a description of the techniques used.</p>
 <h3>Note for <a name="Cgywin">Cygwin</a> users</h3>
 <p>The library's implementation code automatically detects the current platform,
@@ -562,4 +562,4 @@
 
 </body>
 
-</html>
\ No newline at end of file
+</html>

Modified: branches/CMake/release/libs/filesystem/doc/reference.html
==============================================================================
--- branches/CMake/release/libs/filesystem/doc/reference.html (original)
+++ branches/CMake/release/libs/filesystem/doc/reference.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -123,7 +123,6 @@
 &nbsp; </code>
 <a href="#Suggestions-for-fstream">&nbsp;implementations</a><br>
 <a href="#Path-decomposition-table">Path decomposition table</a><br>
-Issues<br>
 <a href="#Acknowledgements">Acknowledgements</a><br>
 <a href="#References">References</a><br>
 &nbsp;</td>
@@ -369,14 +368,14 @@
       // predicate functions
       bool status_known( file_status s );
       bool exists( file_status s );
- bool is_regular( file_status s );
+ bool is_regular_file( file_status s );
       bool is_directory( file_status s );
       bool is_symlink( file_status s );
       bool is_other( file_status s );
 
       template &lt;class Path&gt; bool exists(const Path&amp; p);
       template &lt;class Path&gt; bool is_directory(const Path&amp; p);
- template &lt;class Path&gt; bool is_regular(const Path&amp; p);
+ template &lt;class Path&gt; bool is_regular_file(const Path&amp; p);
       template &lt;class Path&gt; bool is_other(const Path&amp; p);
       template &lt;class Path&gt; bool is_symlink(const Path&amp; p);
       template &lt;class Path&gt; bool is_empty(const Path&amp; p);
@@ -417,7 +416,7 @@
       template &lt;class Path&gt; typename Path::string_type extension(const Path&amp; p);
       template &lt;class Path&gt; typename Path::string_type basename(const Path&amp; p);
       template &lt;class Path&gt;
- Path replace_extension(const Path&amp; p, const typename Path::string_type&amp; new_extension);
+ Path change_extension(const Path&amp; p, const typename Path::string_type&amp; new_extension);
 
     } // namespace filesystem
   } // namespace boost</pre>
@@ -547,7 +546,8 @@
 
         <span style="background-color: #FFFFFF">void clear();
         void swap( basic_path &amp; rhs );</span>
- basic_path&amp; remove_leaf();
+ basic_path&amp; remove_filename();
+ basic_path&amp; replace_extension(const string_type &amp; new_extension = &quot;&quot;);
 
         // observers
         const string_type string() const;
@@ -561,8 +561,12 @@
         string_type root_directory() const;
         basic_path root_path() const;
         basic_path relative_path() const;
- string_type leaf() const;
- basic_path branch_path() const;
+
+ basic_path parent_path() const;
+ string_type filename() const;
+
+ string_type stem() const;
+ string_type extension() const;
 
         bool empty() const;
         bool is_complete() const;
@@ -570,8 +574,8 @@
         bool has_root_directory() const;
         bool has_root_path() const;
         bool has_relative_path() const;
- bool has_leaf() const;
- bool has_branch_path() const;
+ bool has_filename() const;
+ bool has_parent_path() const;
 
         // iterators
         class iterator;
@@ -856,9 +860,9 @@
   <p><i><span style="background-color: #FFFFFF">Complexity: </span></i>
   <span style="background-color: #FFFFFF">constant time.</span></p>
 </blockquote>
-<pre>basic_path&amp; remove_leaf();</pre>
+<pre>basic_path&amp; remove_filename();</pre>
 <blockquote>
- <p><i>Effects:</i> If <code>has_branch_path()</code> then remove the last <i>filename</i> from the stored path. If that leaves
+ <p><i>Effects:</i> If <code>has_parent_path()</code> then remove the last <i>filename</i> from the stored path. If that leaves
   the stored path with one or more trailing <i>slash</i> elements not
   representing&nbsp; <i>root-directory</i>, remove them.</p>
   <p><i>Returns:</i> <code>*this</code></p>
@@ -866,6 +870,15 @@
   basic_directory_iterator</code>. It is made public to allow additional uses. <i>-- end
   note</i>]</p>
 </blockquote>
+<pre>basic_path&amp; replace_extension( const string_type &amp; new_extension = &quot;&quot; );</pre>
+<blockquote>
+ <p><i>Postcondition: </i> <code>extension() == <i>replacement</i></code>,
+ where <code><i>replacement</i></code> is <code>new_extension</code> if <code>
+ new_extension.empty() || new_extension[0] ==</code> the dot character,
+ otherwise <code><i>replacement</i></code> is the dot character followed by
+ <code>new_extension</code>.</p>
+ <p><i>Returns:</i> <code>*this</code></p>
+</blockquote>
 <h4> <a name="basic_path-observers"> <code>basic_path</code> observers</a></h4>
 <blockquote>
 <p><span style="background-color: #E0E0E0"><i>See the
@@ -931,11 +944,11 @@
 with the first <i>filename</i> after <i>root-path</i>.
 Otherwise, an empty <code>basic_path</code>.</p>
 </blockquote>
-<pre>string_type leaf() const;</pre>
+<pre>string_type filename() const;</pre>
 <blockquote>
   <p><i>Returns:</i> <code>empty() ? string_type() : *--end()</code></p>
 </blockquote>
-<pre>basic_path branch_path() const;</pre>
+<pre>basic_path parent_path() const;</pre>
 <blockquote>
   <p><i>Returns:</i> <code>(string().empty() || begin() == --end()) ? path_type(&quot;&quot;) :
   <i>br</i></code>, where <code><i>br</i></code> is constructed as if by
@@ -943,6 +956,25 @@
   operator/=</code> for each element in the range <code>begin()</code>, <code>
   --end()</code>.</p>
 </blockquote>
+<pre>string_type stem(const Path &amp; p) const;</pre>
+<blockquote>
+ <p><i>Returns:</i> if <code>p.filename()</code> contains a <i>dot</i>, returns
+ the substring of <code>p.filename()</code> starting at its beginning and
+ ending at the last <i>dot</i> (the <i>dot</i> is not included). Otherwise,
+ returns <code>
+ p.filename()</code>.</p>
+</blockquote>
+<pre>string_type extension(const Path &amp; p) const;</pre>
+<blockquote>
+ <p><i>Returns:</i> if <code>p.filename()</code> contains a <i>dot</i>, returns
+ the substring of <code>p.filename()</code> starting at the rightmost <i>dot</i>
+ and ending at the string's end. Otherwise, returns an empty string. </p>
+ <p>[<i>Note:<b> </b></i>The <i>dot</i> is included in the return value so that
+ it is possible to distinguish between no extension and an empty extension. </p>
+ <p>Implementations are permitted but not required to define additional
+ behavior for file systems which append additional elements to extensions, such
+ as alternate data stream or partitioned dataset names. <i>-- end note</i>]</p>
+</blockquote>
 <pre>bool empty() const;</pre>
 <blockquote>
   <p><i>Returns:</i> <code>string().empty()</code>.</p>
@@ -968,13 +1000,13 @@
 <blockquote>
   <p><i>Returns:</i> <code>!relative_path().empty()</code></p>
 </blockquote>
-<pre>bool has_leaf() const;</pre>
+<pre>bool has_filename() const;</pre>
 <blockquote>
- <p><i>Returns:</i> <code>!leaf().empty()</code></p>
+ <p><i>Returns:</i> <code>!filename().empty()</code></p>
 </blockquote>
-<pre>bool has_branch_path() const;</pre>
+<pre>bool has_parent_path() const;</pre>
 <blockquote>
- <p><i>Returns:</i> <code>!branch_path().empty()</code></p>
+ <p><i>Returns:</i> <code>!parent_path().empty()</code></p>
 </blockquote>
 <h4> <a name="basic_path-iterators"> <code>basic_path</code> iterators</a></h4>
 <p> A <code>basic_path::iterator</code> is a constant iterator satisfying all
@@ -1099,7 +1131,7 @@
     <span style="background-color: #FFFFFF">basic_path&lt;String, Traits&gt;</span></code></td>
     <td width="55%" height="30"><code><span style="background-color: #FFFFFF">
     basic_path&lt;String, Traits&gt; tmp(a);<br>
- return a /= </span></code><i><b><span style="background-color: #FFFFFF">b'</span></b></i><code><span style="background-color: #FFFFFF">;</span></code></td>
+ return tmp /= </span></code><i><b><span style="background-color: #FFFFFF">b'</span></b></i><code><span style="background-color: #FFFFFF">;</span></code></td>
   </tr>
   <tr>
     <td width="20%" align="center" height="19" valign="top"><code>
@@ -1364,7 +1396,7 @@
 
         // modifiers
         void assign(const path_type&amp; p, <span style="background-color: #FFFFFF">file_status</span> st=file_status(), <span style="background-color: #FFFFFF">file_status</span> symlink_st=file_status());
- void replace_leaf(const string_type&amp; s, <span style="background-color: #FFFFFF">file_status</span> st=file_status(), <span style="background-color: #FFFFFF">file_status</span> symlink_st=file_status());
+ void replace_filename(const string_type&amp; s, <span style="background-color: #FFFFFF">file_status</span> st=file_status(), <span style="background-color: #FFFFFF">file_status</span> symlink_st=file_status());
 
         // observers
         const Path&amp; path() const;
@@ -1474,7 +1506,7 @@
     </tr>
   </table>
 </blockquote>
-<pre>void replace_leaf(const string_type&amp; s, <span style="background-color: #FFFFFF">file_status</span> st=file_status(), <span style="background-color: #FFFFFF">file_status</span> symlink_st=file_status());</pre>
+<pre>void replace_filename(const string_type&amp; s, <span style="background-color: #FFFFFF">file_status</span> st=file_status(), <span style="background-color: #FFFFFF">file_status</span> symlink_st=file_status());</pre>
 <blockquote>
   <p><i>Postconditions:</i></p>
   <table border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="43%">
@@ -1645,8 +1677,8 @@
   {
     for (directory_iterator itr(p); itr!=directory_iterator(); ++itr)
     {
- cout &lt;&lt; itr-&gt;path().leaf() &lt;&lt; ' '; // display filename only
- if (is_regular(itr-&gt;status())) cout &lt;&lt; &quot; [&quot; &lt;&lt; file_size(itr-&gt;path()) &lt;&lt; ']';
+ cout &lt;&lt; itr-&gt;path().filename() &lt;&lt; ' '; // display filename only
+ if (is_regular_file(itr-&gt;status())) cout &lt;&lt; &quot; [&quot; &lt;&lt; file_size(itr-&gt;path()) &lt;&lt; ']';
       cout &lt;&lt; '\n';
     }
   }
@@ -1807,11 +1839,11 @@
 <blockquote>
   <p><i>Returns:</i></p>
   <blockquote>
- For <code>status,</code> determine the attributes
+ For <code>status</code>, determine the attributes
     of
     <code>p</code> as if by<i> POSIX </i> <code>
   <a href="http://www.opengroup.org/onlinepubs/000095399/functions/stat.html">stat()</a></code>,
- for <code>symlink_status</code> determine the attributes as if by <i>POSIX </i> <code>
+ for <code>symlink_status</code>, determine the attributes as if by <i>POSIX </i> <code>
     <a href="http://www.opengroup.org/onlinepubs/000095399/functions/lstat.html">
     lstat()</a></code>.<blockquote>
       <p>[<i>Note:</i> For symbolic links, <code>stat()</code> continues
@@ -1819,14 +1851,23 @@
       does not. <i>--
     end note</i>]</p>
     </blockquote>
- <p>If the operating system reports an error during attribute determination:</p>
+ <p>If the underlying file system reports an error during attribute determination:</p>
     <ul>
- <li>If the error indicating that <code>p</code> could not
- be resolved, as if by POSIX error codes ENOENT or ENOTDIR, set ec to 0 and return <code>
+ <li>If the error indicating that <code>p</code> could not be resolved, as
+ if by POSIX errors ENOENT or ENOTDIR, call <code>ec.clear()</code> and return <code>
       file_status(not_found_flag)</code>.</li>
     </ul>
+ <blockquote>
+ <blockquote>
+ <p>[<i>Note:</i> The effect of this behavior is to distinguish between
+ knowing that p
+ does not exist, and not being able to determine the status of p. This
+ distinction is important to users.&nbsp; <i>--end note</i>]</p>
+ </blockquote>
+ </blockquote>
     <ul>
- <li>Otherwise, set ec to the error code reported by the operating system
+ <li>Otherwise, set ec to the error number reported by the underlying
+ implementation API
       and return <code>
       file_status(status_unknown)</code>.</li>
     </ul>
@@ -1899,14 +1940,14 @@
 <blockquote>
   <p><i>Returns:</i> <code>exists( status(p) )</code></p>
 </blockquote>
-<pre><span style="background-color: #FFFFFF">bool </span><code><span style="background-color: #FFFFFF">is_regular</span></code><span style="background-color: #FFFFFF">(file_status</span><span style="background-color: #FFFFFF"> s);</span></pre>
+<pre><span style="background-color: #FFFFFF">bool </span><code><span style="background-color: #FFFFFF">is_regular_file</span></code><span style="background-color: #FFFFFF">(file_status</span><span style="background-color: #FFFFFF"> s);</span></pre>
 <blockquote>
   <p><i><span style="background-color: #FFFFFF">Returns:</span></i><span style="background-color: #FFFFFF">
   <code>s.type() == regular_file</code></span></p>
 </blockquote>
-<pre><code>template &lt;class Path&gt; bool is_regular(const Path&amp; p);</code></pre>
+<pre><code>template &lt;class Path&gt; bool is_regular_file(const Path&amp; p);</code></pre>
 <blockquote>
- <p><i>Returns:</i> <code>is_regular( status(p) )</code></p>
+ <p><i>Returns:</i> <code>is_regular_file( status(p) )</code></p>
 </blockquote>
 <pre><span style="background-color: #FFFFFF">bool </span><code><span style="background-color: #FFFFFF">is_directory</span></code><span style="background-color: #FFFFFF">(file_status</span><span style="background-color: #FFFFFF"> s);</span></pre>
 <blockquote>
@@ -1929,7 +1970,7 @@
 <pre><span style="background-color: #FFFFFF">bool <a name="exists">is_other</a>(file_status s);</span></pre>
 <blockquote>
   <p><i><span style="background-color: #FFFFFF">Returns:</span></i><span style="background-color: #FFFFFF">
- <code>return exists(s) &amp;&amp; !is_regular(s) &amp;&amp; !is_directory(s) &amp;&amp; !is_symlink(s)</code></span></p>
+ <code>return exists(s) &amp;&amp; !is_regular_file(s) &amp;&amp; !is_directory(s) &amp;&amp; !is_symlink(s)</code></span></p>
   <p><span style="background-color: #FFFFFF">[<i>Note: </i>The specification of
   <code>is_other()</code> will remain unchanged even if additional <code>is_xxx()</code>
   functions are added in the future. <i>-- end note</i>]</span></p>
@@ -2154,24 +2195,38 @@
   </span> <code>basic_filesystem_error&lt;Path1, Path2&gt;</code><span style="background-color: #FFFFFF">
   if <code>ec</code> is not zero.</span></p>
   </blockquote>
-<pre>template &lt;class Path&gt; bool remove(const Path&amp; p);</pre>
+<pre>template &lt;class Path&gt; void remove(const Path&amp; p, system::error_code &amp; ec = <i>singular</i> );</pre>
 <blockquote>
- <p><i>Precondition:</i> <code>!p.empty()</code></p>
- <p><i>Effects:</i>&nbsp; Attempts to delete the file <code>p</code> resolves
- to,
+ <p><i>Effects:</i>&nbsp; Removes the file <code>p</code>,
   as if by<i> POSIX </i><code>
- <a href="http://www.opengroup.org/onlinepubs/000095399/functions/link.html">
- remove()</a></code>.</p>
- <p><i>Returns:</i> The value of <code>exists(p)</code> prior to the
- establishment of the postcondition.</p>
- <p><i>Postcondition:</i> <code>!exists(p)</code></p>
- <p><i>Throws:</i> <code>basic_filesystem_error&lt;Path&gt;</code> if:</p>
+ remove()</code>.
+ If no error is reported by the underlying removal implementation or if <code>
+ status(p).type() == file_not_found</code>, then:</p>
   <ul>
- <li><code>p.empty() || (exists(p) &amp;&amp; is_directory(p) &amp;&amp; !empty(p))</code>.</li>
- <li><i>Effects</i> fails for any reason other than because <code>p</code>
- does not resolve to an existing file.</li>
+ <li>if <code>ec != </code><i><code>singular</code></i>, then <code>ec.clear()</code>.</li>
   </ul>
- <p>[<i>Note:</i> A symbolic link is itself removed, rather than what it
+ <p>Otherwise,</p>
+ <ul>
+ <li>if <code>ec != </code><i><code>singular</code></i>, then set <code>ec</code>
+ to represent the error.</li>
+ <li>otherwise, throw <code>basic_filesystem_error&lt;Path&gt;</code> to represent
+ the error.if <code>ec != </code><i><code>singular</code></i>, then <code>
+ ec.clear()</code></li>
+ </ul>
+ <p><i>Postcondition:</i> <code>!exists(p)</code></p>
+ <p><i>Throws:</i> See <i>Effects</i>.</p>
+ <p>[<i>Note:</i> A symbolic link is itself removed, rather than the file it
+ resolves to being removed. <i>-- end note</i>]</p>
+</blockquote>
+<pre>template &lt;class Path&gt; unsigned long remove_all(const Path&amp; p);</pre>
+<blockquote>
+ <p><i>Effects:</i>&nbsp; Recursively deletes the contents of p if it exists,
+ then deletes file <code>p</code> itself,
+ as if by<i> POSIX </i><code>
+ remove()</code>.</p>
+ <p><i>Returns:</i> The number of files removed.</p>
+ <p><i>Postcondition:</i> <code>!exists(p)</code></p>
+ <p>[<i>Note:</i> A symbolic link is itself removed, rather than the file it
   resolves to being removed. <i>-- end note</i>]</p>
 </blockquote>
 <pre>template &lt;class Path1, class Path2&gt; void rename(const Path1&amp; from_p, const Path2&amp; to_p);</pre>
@@ -2197,7 +2252,7 @@
   <p><i>Effects:</i> The contents and attributes of the file <code>from_fp</code>
   resolves to are copied to the file <code>to_fp</code> resolves to.</p>
   <p><i>Throws:</i> <code>basic_filesystem_error&lt;Path&gt;</code> if <code>
- from_fp.empty() || to_fp.empty() ||!exists(from_fp) || !is_regular(from_fp)
+ from_fp.empty() || to_fp.empty() ||!exists(from_fp) || !is_regular_file(from_fp)
   || exists(to_fp)</code></p>
 </blockquote>
 <pre>template &lt;class Path&gt; Path complete(const Path&amp; p, const Path&amp; base=initial_path&lt;Path&gt;());</pre>
@@ -2275,11 +2330,18 @@
   <p><i>Throws:</i>&nbsp; <code>basic_filesystem_error&lt;Path&gt;</code> if<code>
   exists(p) &amp;&amp; !is_directory(p)</code></p>
 </blockquote>
+<table border="1" cellpadding="5" cellspacing="1" style="border-collapse: collapse" bordercolor="#111111">
+ <tr>
+ <td>
+ <h4>Deprecated convenience functions</h4>
+ <p>The following functions have been replaced by <code>basic_path</code>
+ member functions <code>extension()</code>, <code>stem()</code>, and <code>
+ replace_extension()</code>.</p>
 <pre>template &lt;class Path&gt; typename Path::string_type extension(const Path &amp; p);</pre>
 <blockquote>
- <p><i>Returns:</i> if <code>p.leaf()</code> contains a <i>dot</i>, returns the
- substring of <code>p.leaf()</code> starting at the rightmost <i>dot</i> and
- ending at the string's end. Otherwise, returns an empty string. </p>
+ <p><i>Returns:</i> if <code>p.filename()</code> contains a <i>dot</i>, returns
+ the substring of <code>p.filename()</code> starting at the rightmost <i>dot</i>
+ and ending at the string's end. Otherwise, returns an empty string. </p>
   <p>[<i>Note:<b> </b></i>The <i>dot</i> is included in the return value so that
   it is possible to distinguish between no extension and an empty extension. </p>
   <p>Implementations are permitted but not required to define additional
@@ -2288,13 +2350,14 @@
 </blockquote>
 <pre>template &lt;class Path&gt; typename Path::string_type basename(const Path &amp; p);</pre>
 <blockquote>
- <p><i>Returns:</i> if <code>p.leaf()</code> contains a <i>dot</i>, returns the
- substring of <code>p.leaf()</code> starting at its beginning and ending at the
- last <i>dot</i> (the <i>dot</i> is not included). Otherwise, returns <code>
- p.leaf()</code>.</p>
+ <p><i>Returns:</i> if <code>p.filename()</code> contains a <i>dot</i>, returns
+ the substring of <code>p.filename()</code> starting at its beginning and
+ ending at the last <i>dot</i> (the <i>dot</i> is not included). Otherwise,
+ returns <code>
+ p.filename()</code>.</p>
 </blockquote>
 <pre>template &lt;class Path&gt;
- Path replace_extension(const Path &amp; p, const typename Path::string_type &amp; new_extension);</pre>
+ Path change_extension(const Path &amp; p, const typename Path::string_type &amp; new_extension);</pre>
 <blockquote>
   <p><i>Postcondition:</i> <code>basename(<i>return_value</i>) == basename(p) &amp;&amp;
   extension(<i>return_value</i>) == new_extension</code> </p>
@@ -2302,33 +2365,9 @@
   that <code>new_extension</code> should include <i>dot</i> to achieve
   reasonable results. <i>-- end note</i>]</p>
 </blockquote>
-<h3><a name="header-cerrno">Additions</a> to header <code>&lt;cerrno&gt;</code></h3>
-<p>The header &lt;cerrno&gt; shall include an additional symbolic constant macro for
-each of the values returned by the to_errno
-function. The macro names shall be as defined in <i>POSIX</i>
-<a href="http://www.opengroup.org/onlinepubs/000095399/basedefs/errno.h.html">
-errno.h</a>, with the additions below.</p>
-<blockquote>
-<p><i><span style="background-color: #E0E0E0">This codifies existing practice.
-The required names are only a sub-set of those defined by POSIX, and are usually already
-supplied in &lt;errno.h&gt; (as wrapped by &lt;cerrno&gt;) as shipped with POSIX and Windows compilers.
-These implementations require no changes to their underlying C headers to conform with the above
-requirement.</span></i></p>
-<table border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="33%">
- <tr>
- <td width="18%" align="center"><i><b>Name</b></i></td>
- <td width="82%" align="center"><i><b>Meaning</b></i></td>
- </tr>
- <tr>
- <td width="18%"><code>EBADHANDLE</code></td>
- <td width="82%">Bad operating system handle.</td>
- </tr>
- <tr>
- <td width="18%"><code>EOTHER</code></td>
- <td width="82%">Other error.</td>
+ </td>
   </tr>
 </table>
-</blockquote>
 <h3><a name="header-fstream">Additions</a> to header <code>&lt;fstream&gt;</code></h3>
 <blockquote>
 <p><span style="background-color: #E0E0E0; font-style:italic">These additions have been carefully
@@ -2361,14 +2400,14 @@
 sentence:</i></span></p>
 <blockquote>
 <p><span style="background-color: #FFFFFF">It then opens a file, if possible,
-whose name is the NTBS s (“as if” by calling <code>std::fopen(s ,<i>modstr</i>
+whose name is the NTBS s (“as if” by calling <code>std::fopen(s ,<i>modstr</i>
 ))</code>.</span></p>
 </blockquote>
 <p><span style="background-color: #FFFFFF"><i>with:</i></span></p>
 <blockquote>
 <p><span style="background-color: #FFFFFF">It then opens, if possible, the file
 that
-<code>p</code> or <code>path(s)</code> resolves to, “as if” by calling <code>std::fopen()</code> with a
+<code>p</code> or <code>path(s)</code> resolves to, “as if” by calling <code>std::fopen()</code> with a
 second argument of <i>modstr</i>.</span></p>
 </blockquote>
 <p><span style="background-color: #FFFFFF"><i>In 27.8.1.5 Class template
@@ -2487,8 +2526,8 @@
 <td width="48"><b><code>root_<br>name()</code></b></td>
 <td width="88"><b><code>root_<br>directory()</code></b></td>
 <td width="96"><b><code>relative_<br>path()<br>.string()</code></b></td>
-<td width="72"><b><code>branch_<br>path()<br>.string()</code></b></td>
-<td width="72"><b><code>leaf()</code></b></td>
+<td width="72"><b><code>parent_<br>path()<br>.string()</code></b></td>
+<td width="72"><b><code>filename()</code></b></td>
 </tr>
 <tr>
 <td width="112"><code>&quot;&quot;</code></td>
@@ -2992,29 +3031,6 @@
 classes, overriding the constructors and opens taking pathname arguments, and
 providing the additional overloads. In Lillehammer LWG members indicated lack of
 support for this alternative, feeling that costs outweigh benefits.</span></p>
-<h2><a name="Issues">Issues</a></h2>
-<h3>1. Return type of certain basic_path members returning strings. [Howard
-Hinnant]</h3>
-<p>For member functions described as returning &quot;<code>const string_type</code>&quot;
-or &quot;<code>const external_string_type</code>&quot;, implementations are permitted to
-return &quot;<code>const string_type&amp;</code>&quot; or&nbsp; &quot;<code>const
-external_string_type&amp;</code>&quot; respectively.</p>
-<p>This allows implementations to avoid unnecessary copies. Return-by-value is
-specified as
-<code>const</code> to ensure programs won't break if moved to a
-return-by-reference implementation.</p>
-<p>For example, the Boost implementation keeps the internal representation of a
-pathname in the portable format, so string() returns by reference and is inlined:</p>
-<blockquote>
- <pre>const string_type &amp; string() const { return m_path; }</pre>
-</blockquote>
-<p>Howard Hinnant comments: This may inhibit optimization if rvalue reference is
-accepted.&nbsp; Const-qualified return types can't be moved from.&nbsp; I'd
-rather see either the return type specified as
-<code>const string_type&amp;</code> or <code>string_type</code>.</p>
-<p>Beman Dawes comments: I can't make up my mind. Removing the const will bite
-users, but not very often. OTOH, excessive copying is a real concern, and if
-move semantics can alleviate that, I'm all for it. What does the LWG think?</p>
 <h2><a name="Acknowledgements">Acknowledgements</a></h2>
 <p>This Filesystem Library is dedicated to my wife, Sonda, who provided the
 support necessary to see both a trial implementation and the proposal itself
@@ -3024,8 +3040,7 @@
 Boost Filesystem Library. See
 <a href="http://www.boost.org/libs/filesystem/doc/index.htm#Acknowledgements">
 http://www.boost.org/libs/filesystem/doc/index.htm#Acknowledgements>.</p>
-<p>Dietmar Kühl contributed the original Boost Filesystem Library
-directory_iterator design. Peter Dimov, Walter Landry, Rob Stewart, and Thomas
+<p>Dietmar Kuehl contributed the original Boost Filesystem Library directory_iterator design. Peter Dimov, Walter Landry, Rob Stewart, and Thomas
 Witt were particularly helpful in refining the library.</p>
 <p>The create_directories, extension, basename, and replace_extension functions
 were developed by Vladimir Prus.</p>
@@ -3037,7 +3052,7 @@
   <tr>
     <td width="16%" valign="top">[<a name="ISO_POSIX">ISO-POSIX</a>]</td>
     <td width="84%">ISO/IEC 9945:2003, IEEE&nbsp;Std&nbsp;1003.1-2001, and The Open Group
- Base Specifications, Issue 6. Also known as The Single Unix<font face="Times New Roman">®
+ Base Specifications, Issue 6. Also known as The Single Unix<font face="Times New Roman">®
     Specification, Version 3. Available from each of the organizations involved
     in its creation. For example, read online or download from
     <a href="
http://www.unix.org/single_unix_specification/">
@@ -3057,7 +3072,7 @@
 <p>Distributed under the Boost Software License, Version 1.0. See
 <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a></p>
 <p>Revised
-<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B %Y" startspan -->18 March 2008<!--webbot bot="Timestamp" endspan i-checksum="27357" --></p>
+<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B %Y" startspan -->06 July 2008<!--webbot bot="Timestamp" endspan i-checksum="18830" --></p>
 
 </body>
 

Modified: branches/CMake/release/libs/filesystem/example/mbcopy.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/example/mbcopy.cpp (original)
+++ branches/CMake/release/libs/filesystem/example/mbcopy.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -72,9 +72,9 @@
   for ( fs::wdirectory_iterator it( L"." );
     it != fs::wdirectory_iterator(); ++it )
   {
- if ( fs::is_regular(it->status()) )
+ if ( fs::is_regular_file(it->status()) )
     {
- copy_file( *it, target_dir / it->leaf() );
+ copy_file( *it, target_dir / it->filename() );
     }
   }
 

Modified: branches/CMake/release/libs/filesystem/example/mbpath.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/example/mbpath.cpp (original)
+++ branches/CMake/release/libs/filesystem/example/mbpath.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // Boost.Filesystem mbpath.hpp ---------------------------------------------//
 
-// © Copyright Beman Dawes 2005
+// (c) Copyright Beman Dawes 2005
 
 // Use, modification, and distribution is subject to the Boost Software
 // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
@@ -14,7 +14,7 @@
 # endif
 
 #include "mbpath.hpp"
-#include <cerrno>
+#include <boost/system/system_error.hpp>
 #include <boost/scoped_array.hpp>
 
 namespace fs = boost::filesystem;

Modified: branches/CMake/release/libs/filesystem/example/simple_ls.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/example/simple_ls.cpp (original)
+++ branches/CMake/release/libs/filesystem/example/simple_ls.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -51,24 +51,24 @@
         if ( fs::is_directory( dir_itr->status() ) )
         {
           ++dir_count;
- std::cout << dir_itr->leaf() << " [directory]\n";
+ std::cout << dir_itr->filename() << " [directory]\n";
         }
- else if ( fs::is_regular( dir_itr->status() ) )
+ else if ( fs::is_regular_file( dir_itr->status() ) )
         {
           ++file_count;
- std::cout << dir_itr->leaf() << "\n";
+ std::cout << dir_itr->filename() << "\n";
         }
         else
         {
           ++other_count;
- std::cout << dir_itr->leaf() << " [other]\n";
+ std::cout << dir_itr->filename() << " [other]\n";
         }
 
       }
       catch ( const std::exception & ex )
       {
         ++err_count;
- std::cout << dir_itr->leaf() << " " << ex.what() << std::endl;
+ std::cout << dir_itr->filename() << " " << ex.what() << std::endl;
       }
     }
     std::cout << "\n" << file_count << " files\n"

Deleted: branches/CMake/release/libs/filesystem/src/exception.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/src/exception.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,166 +0,0 @@
-// Exception implementation file -------------------------------------------//
-
-// Copyright 2002 Beman Dawes
-// Copyright 2001 Dietmar Kuehl
-// Use, modification, and distribution is subject to the Boost Software
-// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy
-// at http://www.boost.org/LICENSE_1_0.txt)
-
-// See library home page at http://www.boost.org/libs/filesystem
-
-//----------------------------------------------------------------------------//
-
-// define BOOST_FILESYSTEM_SOURCE so that <boost/filesystem/config.hpp> knows
-// the library is being built (possibly exporting rather than importing code)
-#define BOOST_FILESYSTEM_SOURCE
-
-#include <boost/filesystem/config.hpp>
-#include <boost/filesystem/path.hpp>
-#include <boost/filesystem/cerrno.hpp>
-
-namespace fs = boost::filesystem;
-
-#include <cstring> // SGI MIPSpro compilers need this
-
-# ifdef BOOST_NO_STDC_NAMESPACE
- namespace std { using ::strerror; }
-# endif
-
-
-# if defined( BOOST_WINDOWS_API )
-# include "windows.h"
-# endif
-
-//----------------------------------------------------------------------------//
-
-namespace
-{
-#ifdef BOOST_WINDOWS_API
- struct ec_xlate { fs::system_error_type sys_ec; fs::errno_type ec; };
- const ec_xlate ec_table[] =
- {
- // see WinError.h comments for descriptions of errors
-
- // most common errors first to speed sequential search
- { ERROR_FILE_NOT_FOUND, ENOENT },
- { ERROR_PATH_NOT_FOUND, ENOENT },
-
- // alphabetical for easy maintenance
- { 0, 0 }, // no error
- { ERROR_ACCESS_DENIED, EACCES },
- { ERROR_ALREADY_EXISTS, EEXIST },
- { ERROR_BAD_UNIT, ENODEV },
- { ERROR_BUFFER_OVERFLOW, ENAMETOOLONG },
- { ERROR_BUSY, EBUSY },
- { ERROR_BUSY_DRIVE, EBUSY },
- { ERROR_CANNOT_MAKE, EACCES },
- { ERROR_CANTOPEN, EIO },
- { ERROR_CANTREAD, EIO },
- { ERROR_CANTWRITE, EIO },
- { ERROR_CURRENT_DIRECTORY, EACCES },
- { ERROR_DEV_NOT_EXIST, ENODEV },
- { ERROR_DEVICE_IN_USE, EBUSY },
- { ERROR_DIR_NOT_EMPTY, ENOTEMPTY },
- { ERROR_DIRECTORY, EINVAL }, // WinError.h: "The directory name is invalid"
- { ERROR_DISK_FULL, ENOSPC },
- { ERROR_FILE_EXISTS, EEXIST },
- { ERROR_HANDLE_DISK_FULL, ENOSPC },
- { ERROR_INVALID_ACCESS, EACCES },
- { ERROR_INVALID_DRIVE, ENODEV },
- { ERROR_INVALID_FUNCTION, ENOSYS },
- { ERROR_INVALID_HANDLE, EBADHANDLE },
- { ERROR_INVALID_NAME, EINVAL },
- { ERROR_LOCK_VIOLATION, EACCES },
- { ERROR_LOCKED, EACCES },
- { ERROR_NOACCESS, EACCES },
- { ERROR_NOT_ENOUGH_MEMORY, ENOMEM },
- { ERROR_NOT_READY, EAGAIN },
- { ERROR_NOT_SAME_DEVICE, EXDEV },
- { ERROR_OPEN_FAILED, EIO },
- { ERROR_OPEN_FILES, EBUSY },
- { ERROR_OUTOFMEMORY, ENOMEM },
- { ERROR_READ_FAULT, EIO },
- { ERROR_SEEK, EIO },
- { ERROR_SHARING_VIOLATION, EACCES },
- { ERROR_TOO_MANY_OPEN_FILES, ENFILE },
- { ERROR_WRITE_FAULT, EIO },
- { ERROR_WRITE_PROTECT, EROFS },
- { 0,EOTHER }
- };
-#endif
-
-} // unnamed namespace
-
-namespace boost
-{
- namespace filesystem
- {
-# ifdef BOOST_WINDOWS_API
-
- BOOST_FILESYSTEM_DECL
- errno_type lookup_errno( system_error_type sys_err_code )
- {
- for ( const ec_xlate * cur = &ec_table[0];
- cur != ec_table
- + sizeof(ec_table)/sizeof(ec_xlate); ++cur )
- {
- if ( sys_err_code == cur->sys_ec ) return cur->ec;
- }
- return EOTHER;
- }
-
- BOOST_FILESYSTEM_DECL void
- system_message( system_error_type sys_err_code, std::string & target )
- {
- LPVOID lpMsgBuf;
- ::FormatMessageA(
- FORMAT_MESSAGE_ALLOCATE_BUFFER |
- FORMAT_MESSAGE_FROM_SYSTEM |
- FORMAT_MESSAGE_IGNORE_INSERTS,
- NULL,
- sys_err_code,
- MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
- (LPSTR) &lpMsgBuf,
- 0,
- NULL
- );
- target += static_cast<LPCSTR>(lpMsgBuf);
- ::LocalFree( lpMsgBuf ); // free the buffer
- while ( target.size()
- && (target[target.size()-1] == '\n' || target[target.size()-1] == '\r') )
- target.erase( target.size()-1 );
- }
-
-# ifndef BOOST_FILESYSTEM_NARROW_ONLY
- BOOST_FILESYSTEM_DECL void
- system_message( system_error_type sys_err_code, std::wstring & target )
- {
- LPVOID lpMsgBuf;
- ::FormatMessageW(
- FORMAT_MESSAGE_ALLOCATE_BUFFER |
- FORMAT_MESSAGE_FROM_SYSTEM |
- FORMAT_MESSAGE_IGNORE_INSERTS,
- NULL,
- sys_err_code,
- MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
- (LPWSTR) &lpMsgBuf,
- 0,
- NULL
- );
- target += static_cast<LPCWSTR>(lpMsgBuf);
- ::LocalFree( lpMsgBuf ); // free the buffer
- while ( target.size()
- && (target[target.size()-1] == L'\n' || target[target.size()-1] == L'\r') )
- target.erase( target.size()-1 );
- }
-# endif
-# else
- void
- system_message( system_error_type sys_err_code, std::string & target )
- {
- target += std::strerror( sys_err_code );
- }
-# endif
-
- } // namespace filesystem
-} // namespace boost

Modified: branches/CMake/release/libs/filesystem/src/operations.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/src/operations.cpp (original)
+++ branches/CMake/release/libs/filesystem/src/operations.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -110,6 +110,8 @@
 
 namespace
 {
+ const error_code ok;
+
   const fs::directory_iterator end_itr;
   bool is_empty_directory( const std::string & dir_path )
   {
@@ -200,19 +202,19 @@
         || (ec.value() == ERROR_BAD_PATHNAME) // "//nosuch" on Win64
         || (ec.value() == ERROR_BAD_NETPATH)) // "//nosuch" on Win32
       {
- ec = error_code(); // these are not considered errors;
+ ec = ok; // these are not considered errors;
                            // the status is considered not found
         return fs::file_status( fs::file_not_found );
       }
       else if ((ec.value() == ERROR_SHARING_VIOLATION))
       {
- ec = error_code(); // these are not considered errors;
+ ec = ok; // these are not considered errors;
                            // the file exists but the type is not known
         return fs::file_status( fs::type_unknown );
       }
       return fs::file_status( fs::status_unknown );
     }
- ec = error_code();;
+ ec = ok;;
     return (attr & FILE_ATTRIBUTE_DIRECTORY)
       ? fs::file_status( fs::directory_file )
       : fs::file_status( fs::regular_file );
@@ -229,7 +231,7 @@
     WIN32_FILE_ATTRIBUTE_DATA fad;
     if ( get_file_attributes_ex( ph.c_str(), fad ) == 0 )
       return std::make_pair( error_code( ::GetLastError(), system_category ), false );
- return std::make_pair( error_code(),
+ return std::make_pair( ok,
       ( fad.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY )
         ? is_empty_directory( ph )
         :( !fad.nFileSizeHigh && !fad.nFileSizeLow ) );
@@ -295,7 +297,7 @@
     {
       if ( p1.handle != INVALID_HANDLE_VALUE
         || p2.handle != INVALID_HANDLE_VALUE )
- { return std::make_pair( error_code(), false ); }
+ { return std::make_pair( ok, false ); }
       assert( p1.handle == INVALID_HANDLE_VALUE
         && p2.handle == INVALID_HANDLE_VALUE );
         { return std::make_pair( error_code( error1, system_category), false ); }
@@ -309,7 +311,7 @@
     // In theory, volume serial numbers are sufficient to distinguish between
     // devices, but in practice VSN's are sometimes duplicated, so last write
     // time and file size are also checked.
- return std::make_pair( error_code(),
+ return std::make_pair( ok,
         info1.dwVolumeSerialNumber == info2.dwVolumeSerialNumber
         && info1.nFileIndexHigh == info2.nFileIndexHigh
         && info1.nFileIndexLow == info2.nFileIndexLow
@@ -331,7 +333,7 @@
       return std::make_pair( error_code( ::GetLastError(), system_category ), 0 );
     if ( (fad.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) !=0 )
       return std::make_pair( error_code( ERROR_FILE_NOT_FOUND, system_category), 0 );
- return std::make_pair( error_code(),
+ return std::make_pair( ok,
       (static_cast<boost::uintmax_t>(fad.nFileSizeHigh)
         << (sizeof(fad.nFileSizeLow)*8))
       + fad.nFileSizeLow );
@@ -349,7 +351,7 @@
     boost::filesystem::detail::space_pair result;
     if ( get_free_disk_space( ph, &avail, &total, &free ) )
     {
- result.first = error_code();
+ result.first = ok;
       result.second.capacity
         = (static_cast<boost::uintmax_t>(total.HighPart) << 32)
           + total.LowPart;
@@ -385,7 +387,7 @@
     if ( get_current_directory( sz, buf.get() ) == 0 )
       return error_code( ::GetLastError(), system_category );
     ph = buf.get();
- return error_code();
+ return ok;
   }
 
   inline bool set_current_directory( const char * buf )
@@ -426,11 +428,11 @@
         == 0 ) return error_code( ::GetLastError(), system_category );
       big_buf[len] = '\0';
       target = big_buf.get();
- return error_code();
+ return ok;
     }
     buf[len] = '\0';
     target = buf;
- return error_code();
+ return ok;
   }
 
   template<class String>
@@ -517,9 +519,14 @@
   error_code
   remove_template( const String & ph )
   {
+ // TODO: test this code in the presence of Vista symlinks,
+ // including dangling, self-referal, and cyclic symlinks
     error_code ec;
     fs::file_status sf( fs::detail::status_api( ph, ec ) );
- if ( ec ) return ec;
+ if ( ec )
+ return ec;
+ if ( sf.type() == fs::file_not_found )
+ return ok;
     if ( fs::is_directory( sf ) )
     {
       if ( !remove_directory( ph ) )
@@ -529,7 +536,7 @@
     {
       if ( !delete_file( ph ) ) return error_code(::GetLastError(), system_category);
     }
- return error_code();
+ return ok;
   }
 
   inline bool create_directory( const std::string & dir )
@@ -545,7 +552,7 @@
     // an error here may simply mean the postcondition is already met
     if ( error.value() == ERROR_ALREADY_EXISTS
       && fs::is_directory( fs::detail::status_api( dir_ph, dummy ) ) )
- return std::make_pair( error_code(), false );
+ return std::make_pair( ok, false );
     return std::make_pair( error, false );
   }
 
@@ -566,6 +573,24 @@
   }
 #endif
 
+#else // BOOST_POSIX_API
+
+ int posix_remove( const char * p )
+ {
+# if defined(__QNXNTO__) || (defined(__MSL__) && (defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__)))
+ // Some Metrowerks C library versions fail on directories because of a
+ // known Metrowerks coding error in ::remove. Workaround is to call
+ // rmdir() or unlink() as indicated.
+ // Same bug also reported for QNX, with the same fix.
+ int err = ::unlink( p );
+ if ( err != EPERM )
+ return err;
+ return ::rmdir( p )
+# else
+ return std::remove( p );
+# endif
+ }
+
 #endif
 } // unnamed namespace
 
@@ -575,6 +600,7 @@
   {
     namespace detail
     {
+ BOOST_FILESYSTEM_DECL system::error_code throws;
 
 // free functions ----------------------------------------------------------//
 
@@ -763,7 +789,7 @@
         if ( data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY )
           { sf.type( directory_file ); symlink_sf.type( directory_file ); }
         else { sf.type( regular_file ); symlink_sf.type( regular_file ); }
- return error_code();
+ return ok;
       }
 
       BOOST_FILESYSTEM_DECL error_code
@@ -781,7 +807,7 @@
         if ( data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY )
           { sf.type( directory_file ); symlink_sf.type( directory_file ); }
         else { sf.type( regular_file ); symlink_sf.type( regular_file ); }
- return error_code();
+ return ok;
       }
 
 # endif // ifndef BOOST_FILESYSTEM_NARROW_ONLY
@@ -889,7 +915,7 @@
         if ( data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY )
           { sf.type( directory_file ); symlink_sf.type( directory_file ); }
         else { sf.type( regular_file ); symlink_sf.type( regular_file ); }
- return error_code();
+ return ok;
       }
 
       BOOST_FILESYSTEM_DECL error_code
@@ -901,7 +927,7 @@
           handle = 0;
           return error_code( ok ? 0 : ::GetLastError(), system_category );
         }
- return error_code();
+ return ok;
       }
 
       BOOST_FILESYSTEM_DECL error_code
@@ -919,7 +945,7 @@
         if ( data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY )
           { sf.type( directory_file ); symlink_sf.type( directory_file ); }
         else { sf.type( regular_file ); symlink_sf.type( regular_file ); }
- return error_code();
+ return ok;
       }
 
 # else // BOOST_POSIX_API
@@ -932,13 +958,13 @@
         {
           if ( errno == ENOENT || errno == ENOTDIR )
           {
- ec = error_code();
+ ec = ok;
             return fs::file_status( fs::file_not_found );
           }
           ec = error_code( errno, system_category );
           return fs::file_status( fs::status_unknown );
         }
- ec = error_code();
+ ec = ok;
         if ( S_ISDIR( path_stat.st_mode ) )
           return fs::file_status( fs::directory_file );
         if ( S_ISREG( path_stat.st_mode ) )
@@ -962,13 +988,13 @@
         {
           if ( errno == ENOENT || errno == ENOTDIR )
           {
- ec = error_code();
+ ec = ok;
             return fs::file_status( fs::file_not_found );
           }
           ec = error_code( errno, system_category );
           return fs::file_status( fs::status_unknown );
         }
- ec = error_code();
+ ec = ok;
         if ( S_ISREG( path_stat.st_mode ) )
           return fs::file_status( fs::regular_file );
         if ( S_ISDIR( path_stat.st_mode ) )
@@ -1001,7 +1027,7 @@
         struct stat path_stat;
         if ( (::stat( ph.c_str(), &path_stat )) != 0 )
           return std::make_pair( error_code( errno, system_category ), false );
- return std::make_pair( error_code(), S_ISDIR( path_stat.st_mode )
+ return std::make_pair( ok, S_ISDIR( path_stat.st_mode )
           ? is_empty_directory( ph )
           : path_stat.st_size == 0 );
       }
@@ -1016,7 +1042,7 @@
         if ( e1 != 0 || e2 != 0 )
           return std::make_pair( error_code( e1 != 0 && e2 != 0 ? errno : 0, system_category ), false );
         // at this point, both stats are known to be valid
- return std::make_pair( error_code(),
+ return std::make_pair( ok,
             s1.st_dev == s2.st_dev
             && s1.st_ino == s2.st_ino
             // According to the POSIX stat specs, "The st_ino and st_dev fields
@@ -1034,7 +1060,7 @@
           return std::make_pair( error_code( errno, system_category ), 0 );
         if ( !S_ISREG( path_stat.st_mode ) )
           return std::make_pair( error_code( EPERM, system_category ), 0 );
- return std::make_pair( error_code(),
+ return std::make_pair( ok,
           static_cast<boost::uintmax_t>(path_stat.st_size) );
       }
 
@@ -1051,7 +1077,7 @@
         }
         else
         {
- result.first = error_code();
+ result.first = ok;
           result.second.capacity
             = static_cast<boost::uintmax_t>(vfs.f_blocks) * BOOST_STATVFS_F_FRSIZE;
           result.second.free
@@ -1068,7 +1094,7 @@
         struct stat path_stat;
         if ( ::stat( ph.c_str(), &path_stat ) != 0 )
           return std::make_pair( error_code( errno, system_category ), 0 );
- return std::make_pair( error_code(), path_stat.st_mtime );
+ return std::make_pair( ok, path_stat.st_mtime );
       }
 
       BOOST_FILESYSTEM_DECL error_code
@@ -1105,7 +1131,7 @@
             break;
           }
         }
- return error_code();
+ return ok;
       }
 
       BOOST_FILESYSTEM_DECL error_code
@@ -1119,13 +1145,13 @@
       create_directory_api( const std::string & ph )
       {
         if ( ::mkdir( ph.c_str(), S_IRWXU|S_IRWXG|S_IRWXO ) == 0 )
- { return std::make_pair( error_code(), true ); }
+ { return std::make_pair( ok, true ); }
         int ec=errno;
         error_code dummy;
         if ( ec != EEXIST
           || !fs::is_directory( status_api( ph, dummy ) ) )
           { return std::make_pair( error_code( ec, system_category ), false ); }
- return std::make_pair( error_code(), false );
+ return std::make_pair( ok, false );
       }
 
       BOOST_FILESYSTEM_DECL error_code
@@ -1147,28 +1173,19 @@
       BOOST_FILESYSTEM_DECL error_code
       remove_api( const std::string & ph )
       {
-# if defined(__QNXNTO__) || (defined(__MSL__) && (defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__)))
- // Some Metrowerks C library versions fail on directories because of a
- // known Metrowerks coding error in ::remove. Workaround is to call
- // rmdir() or unlink() as indicated.
- // Same bug also reported for QNX, with the same fix.
- if ( (is_directory( ph )
- ? ::rmdir( ph.c_str() )
- : ::unlink( ph.c_str() )) != 0 )
-# else
- // note that the POSIX behavior for symbolic links is what we want;
- // the link rather than what it points to is deleted
- if ( std::remove( ph.c_str() ) != 0 )
-# endif
- {
- int error = errno;
- // POSIX says "If the directory is not an empty directory, rmdir()
- // shall fail and set errno to EEXIST or ENOTEMPTY."
- // Linux uses ENOTEMPTY, Solaris uses EEXIST.
- if ( error == EEXIST ) error = ENOTEMPTY;
- return error_code( error, system_category );
- }
- return error_code();
+ if ( posix_remove( ph.c_str() ) == 0 )
+ return ok;
+ int error = errno;
+ // POSIX says "If the directory is not an empty directory, rmdir()
+ // shall fail and set errno to EEXIST or ENOTEMPTY."
+ // Linux uses ENOTEMPTY, Solaris uses EEXIST.
+ if ( error == EEXIST ) error = ENOTEMPTY;
+
+ error_code ec;
+
+ // ignore errors if post-condition satisfied
+ return status_api(ph, ec).type() == file_not_found
+ ? ok : error_code( error, system_category ) ;
       }
 
       BOOST_FILESYSTEM_DECL error_code
@@ -1249,7 +1266,7 @@
           else max = static_cast<std::size_t>( tmp + 1 ); // relative root
         }
         result = max;
- return error_code();
+ return ok;
       }
 
       BOOST_FILESYSTEM_DECL error_code
@@ -1268,7 +1285,7 @@
         dirent de;
         buffer = std::malloc( (sizeof(dirent) - sizeof(de.d_name))
           + path_size + 1 ); // + 1 for "/0"
- return error_code();
+ return ok;
       }
 
       BOOST_FILESYSTEM_DECL error_code
@@ -1276,7 +1293,7 @@
       {
         std::free( buffer );
         buffer = 0;
- if ( handle == 0 ) return error_code();
+ if ( handle == 0 ) return ok;
         DIR * h( static_cast<DIR*>(handle) );
         handle = 0;
         return error_code( ::closedir( h ) == 0 ? 0 : errno, system_category );
@@ -1339,7 +1356,7 @@
 # else
         sf = symlink_sf = fs::file_status( fs::status_unknown );
 # endif
- return error_code();
+ return ok;
       }
 
 # endif

Modified: branches/CMake/release/libs/filesystem/src/path.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/src/path.cpp (original)
+++ branches/CMake/release/libs/filesystem/src/path.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -24,6 +24,8 @@
 #include <boost/cerrno.hpp>
 #include <boost/system/error_code.hpp>
 
+#include <cwchar> // for std::mbstate_t
+
 namespace
 {
   // std::locale construction can throw (if LC_MESSAGES is wrong, for example),

Modified: branches/CMake/release/libs/filesystem/src/utf8_codecvt_facet.hpp
==============================================================================
--- branches/CMake/release/libs/filesystem/src/utf8_codecvt_facet.hpp (original)
+++ branches/CMake/release/libs/filesystem/src/utf8_codecvt_facet.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,4 +1,4 @@
-// Copyright © 2001 Ronald Garcia, Indiana University (garcia_at_[hidden])
+// Copyright (c) 2001 Ronald Garcia, Indiana University (garcia_at_[hidden])
 // Andrew Lumsdaine, Indiana University (lums_at_[hidden]).
 
 // Distributed under the Boost Software License, Version 1.0.

Modified: branches/CMake/release/libs/filesystem/test/convenience_test.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/test/convenience_test.cpp (original)
+++ branches/CMake/release/libs/filesystem/test/convenience_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,12 +8,7 @@
 
 // See library home page at http://www.boost.org/libs/filesystem
 
-// VC++ 8.0 warns on various less-than-safe practices.
-// See http://msdn.microsoft.com/msdnmag/issues/05/05/SafeCandC/default.aspx
-// But at least in VC++ 8.0 betas, their own libraries use the problem
-// practices. So turn off the warnings.
-#define _CRT_SECURE_NO_DEPRECATE
-#define _SCL_SECURE_NO_DEPRECATE
+#include <boost/config/warning_disable.hpp>
 
 #include <boost/filesystem/convenience.hpp>
 namespace fs = boost::filesystem;

Modified: branches/CMake/release/libs/filesystem/test/equivalent.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/test/equivalent.cpp (original)
+++ branches/CMake/release/libs/filesystem/test/equivalent.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 // equivalent program -------------------------------------------------------//
 
-// Copyright © 2004 Beman Dawes
+// Copyright (c) 2004 Beman Dawes
 
 // Use, modification, and distribution is subject to the Boost Software
 // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy

Modified: branches/CMake/release/libs/filesystem/test/fstream_test.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/test/fstream_test.cpp (original)
+++ branches/CMake/release/libs/filesystem/test/fstream_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,12 +7,7 @@
 
 // See library home page at http://www.boost.org/libs/filesystem
 
-// VC++ 8.0 warns on various less-than-safe practices.
-// See http://msdn.microsoft.com/msdnmag/issues/05/05/SafeCandC/default.aspx
-// But at least in VC++ 8.0 betas, their own libraries use the problem
-// practices. So turn off the warnings.
-#define _CRT_SECURE_NO_DEPRECATE
-#define _SCL_SECURE_NO_DEPRECATE
+#include <boost/config/warning_disable.hpp>
 
 #include <boost/filesystem/fstream.hpp>
 #include <boost/filesystem/operations.hpp>
@@ -73,7 +68,7 @@
     }
     {
       std::cout << " in test 4.1\n";
- fs::ifstream tfs( p / p.leaf() ); // should fail
+ fs::ifstream tfs( p / p.filename() ); // should fail
       BOOST_CHECK( !tfs.is_open() );
     }
     {

Modified: branches/CMake/release/libs/filesystem/test/lpath.hpp
==============================================================================
--- branches/CMake/release/libs/filesystem/test/lpath.hpp (original)
+++ branches/CMake/release/libs/filesystem/test/lpath.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,6 +10,7 @@
 
 #include <boost/filesystem/path.hpp>
 #include <string>
+#include <ios> // for std::streamoff
 
 namespace std
 {

Modified: branches/CMake/release/libs/filesystem/test/operations_test.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/test/operations_test.cpp (original)
+++ branches/CMake/release/libs/filesystem/test/operations_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,12 +7,7 @@
 
 // See library home page at http://www.boost.org/libs/filesystem
 
-// VC++ 8.0 warns on various less-than-safe practices.
-// See http://msdn.microsoft.com/msdnmag/issues/05/05/SafeCandC/default.aspx
-// But at least in VC++ 8.0 betas, their own libraries use the problem
-// practices. So turn off the warnings.
-#define _CRT_SECURE_NO_DEPRECATE
-#define _SCL_SECURE_NO_DEPRECATE
+#include <boost/config/warning_disable.hpp>
 
 #include <boost/filesystem/operations.hpp>
 #include <boost/filesystem/convenience.hpp>
@@ -305,20 +300,21 @@
   fs::path ng( " no-way, Jose" );
   BOOST_CHECK( !fs::exists( ng ) );
   BOOST_CHECK( !fs::is_directory( ng ) );
- BOOST_CHECK( !fs::is_regular( ng ) );
+ BOOST_CHECK( !fs::is_regular_file( ng ) );
+ BOOST_CHECK( !fs::is_regular( ng ) ); // verify deprecated name still works
   BOOST_CHECK( !fs::is_symlink( ng ) );
   fs::file_status stat( fs::status( ng ) );
   BOOST_CHECK( fs::status_known( stat ) );
   BOOST_CHECK( !fs::exists( stat ) );
   BOOST_CHECK( !fs::is_directory( stat ) );
- BOOST_CHECK( !fs::is_regular( stat ) );
+ BOOST_CHECK( !fs::is_regular_file( stat ) );
   BOOST_CHECK( !fs::is_other( stat ) );
   BOOST_CHECK( !fs::is_symlink( stat ) );
   stat = fs::status( "" );
   BOOST_CHECK( fs::status_known( stat ) );
   BOOST_CHECK( !fs::exists( stat ) );
   BOOST_CHECK( !fs::is_directory( stat ) );
- BOOST_CHECK( !fs::is_regular( stat ) );
+ BOOST_CHECK( !fs::is_regular_file( stat ) );
   BOOST_CHECK( !fs::is_other( stat ) );
   BOOST_CHECK( !fs::is_symlink( stat ) );
 
@@ -392,13 +388,13 @@
   BOOST_CHECK( fs::exists( dir ) );
   BOOST_CHECK( BOOST_FS_IS_EMPTY( dir ) );
   BOOST_CHECK( fs::is_directory( dir ) );
- BOOST_CHECK( !fs::is_regular( dir ) );
+ BOOST_CHECK( !fs::is_regular_file( dir ) );
   BOOST_CHECK( !fs::is_other( dir ) );
   BOOST_CHECK( !fs::is_symlink( dir ) );
   stat = fs::status( dir );
   BOOST_CHECK( fs::exists( stat ) );
   BOOST_CHECK( fs::is_directory( stat ) );
- BOOST_CHECK( !fs::is_regular( stat ) );
+ BOOST_CHECK( !fs::is_regular_file( stat ) );
   BOOST_CHECK( !fs::is_other( stat ) );
   BOOST_CHECK( !fs::is_symlink( stat ) );
 
@@ -481,7 +477,7 @@
     BOOST_CHECK( fs::is_directory( dir_itr->status() ) );
     BOOST_CHECK( fs::is_directory( fs::symlink_status(*dir_itr) ) );
     BOOST_CHECK( fs::is_directory( dir_itr->symlink_status() ) );
- BOOST_CHECK( dir_itr->leaf() == "d1" );
+ BOOST_CHECK( dir_itr->filename() == "d1" );
   }
 
   // create a second directory named d2
@@ -496,26 +492,26 @@
     fs::directory_iterator dir_itr( dir );
     BOOST_CHECK( fs::exists(dir_itr->status()) );
     BOOST_CHECK( fs::is_directory(dir_itr->status()) );
- BOOST_CHECK( !fs::is_regular(dir_itr->status()) );
+ BOOST_CHECK( !fs::is_regular_file(dir_itr->status()) );
     BOOST_CHECK( !fs::is_other(dir_itr->status()) );
     BOOST_CHECK( !fs::is_symlink(dir_itr->status()) );
 
     fs::directory_iterator dir_itr2( dir );
- BOOST_CHECK( dir_itr->leaf() == "d1"
- || dir_itr->leaf() == "d2" );
- BOOST_CHECK( dir_itr2->leaf() == "d1" || dir_itr2->leaf() == "d2" );
- if ( dir_itr->leaf() == "d1" )
- {
- BOOST_CHECK( (++dir_itr)->leaf() == "d2" );
- BOOST_CHECK( dir_itr2->leaf() == "d1" );
- BOOST_CHECK( (++dir_itr2)->leaf() == "d2" );
+ BOOST_CHECK( dir_itr->filename() == "d1"
+ || dir_itr->filename() == "d2" );
+ BOOST_CHECK( dir_itr2->filename() == "d1" || dir_itr2->filename() == "d2" );
+ if ( dir_itr->filename() == "d1" )
+ {
+ BOOST_CHECK( (++dir_itr)->filename() == "d2" );
+ BOOST_CHECK( dir_itr2->filename() == "d1" );
+ BOOST_CHECK( (++dir_itr2)->filename() == "d2" );
     }
     else
     {
- BOOST_CHECK( dir_itr->leaf() == "d2" );
- BOOST_CHECK( (++dir_itr)->leaf() == "d1" );
- BOOST_CHECK( (dir_itr2)->leaf() == "d2" );
- BOOST_CHECK( (++dir_itr2)->leaf() == "d1" );
+ BOOST_CHECK( dir_itr->filename() == "d2" );
+ BOOST_CHECK( (++dir_itr)->filename() == "d1" );
+ BOOST_CHECK( (dir_itr2)->filename() == "d2" );
+ BOOST_CHECK( (++dir_itr2)->filename() == "d1" );
     }
     BOOST_CHECK( ++dir_itr == fs::directory_iterator() );
     BOOST_CHECK( dir_itr2 != fs::directory_iterator() );
@@ -524,21 +520,21 @@
 
   { // *i++ must work to meet the standard's InputIterator requirements
     fs::directory_iterator dir_itr( dir );
- BOOST_CHECK( dir_itr->leaf() == "d1"
- || dir_itr->leaf() == "d2" );
- if ( dir_itr->leaf() == "d1" )
+ BOOST_CHECK( dir_itr->filename() == "d1"
+ || dir_itr->filename() == "d2" );
+ if ( dir_itr->filename() == "d1" )
     {
- BOOST_CHECK( (*dir_itr++).leaf() == "d1" );
- BOOST_CHECK( dir_itr->leaf() == "d2" );
+ BOOST_CHECK( (*dir_itr++).filename() == "d1" );
+ BOOST_CHECK( dir_itr->filename() == "d2" );
     }
     else
     {
       // Check C++98 input iterator requirements
- BOOST_CHECK( (*dir_itr++).leaf() == "d2" );
+ BOOST_CHECK( (*dir_itr++).filename() == "d2" );
       // input iterator requirements in the current WP would require this check:
- // BOOST_CHECK( implicit_cast<std::string const&>(*dir_itr++).leaf() == "d1" );
+ // BOOST_CHECK( implicit_cast<std::string const&>(*dir_itr++).filename() == "d1" );
 
- BOOST_CHECK( dir_itr->leaf() == "d1" );
+ BOOST_CHECK( dir_itr->filename() == "d1" );
     }
 
     // test case reported in comment to SourceForge bug tracker [937606]
@@ -559,11 +555,11 @@
     fs::directory_iterator it( root_name_path );
     BOOST_CHECK( it != fs::directory_iterator() );
     BOOST_CHECK( fs::exists( *it ) );
- BOOST_CHECK( it->path().branch_path() == root_name_path );
+ BOOST_CHECK( it->path().parent_path() == root_name_path );
     bool found(false);
     do
     {
- if ( it->leaf() == temp_dir_name ) found = true;
+ if ( it->filename() == temp_dir_name ) found = true;
     } while ( ++it != fs::directory_iterator() );
     BOOST_CHECK( found );
   }
@@ -573,7 +569,7 @@
   create_file( file_ph, "" );
   BOOST_CHECK( fs::exists( file_ph ) );
   BOOST_CHECK( !fs::is_directory( file_ph ) );
- BOOST_CHECK( fs::is_regular( file_ph ) );
+ BOOST_CHECK( fs::is_regular_file( file_ph ) );
   BOOST_CHECK( BOOST_FS_IS_EMPTY( file_ph ) );
   BOOST_CHECK( fs::file_size( file_ph ) == 0 );
   bad_create_directory_path = file_ph;
@@ -582,7 +578,7 @@
   BOOST_CHECK( fs::status_known( stat ) );
   BOOST_CHECK( fs::exists( stat ) );
   BOOST_CHECK( !fs::is_directory( stat ) );
- BOOST_CHECK( fs::is_regular( stat ) );
+ BOOST_CHECK( fs::is_regular_file( stat ) );
   BOOST_CHECK( !fs::is_other( stat ) );
   BOOST_CHECK( !fs::is_symlink( stat ) );
 
@@ -592,7 +588,7 @@
 
   BOOST_CHECK( fs::exists( file_ph ) );
   BOOST_CHECK( !fs::is_directory( file_ph ) );
- BOOST_CHECK( fs::is_regular( file_ph ) );
+ BOOST_CHECK( fs::is_regular_file( file_ph ) );
   BOOST_CHECK( fs::file_size( file_ph ) == 7 );
   verify_file( file_ph, "foobar1" );
 
@@ -661,7 +657,7 @@
     stat = fs::symlink_status( from_ph );
     BOOST_CHECK( fs::exists( stat ) );
     BOOST_CHECK( !fs::is_directory( stat ) );
- BOOST_CHECK( !fs::is_regular( stat ) );
+ BOOST_CHECK( !fs::is_regular_file( stat ) );
     BOOST_CHECK( !fs::is_other( stat ) );
     BOOST_CHECK( fs::is_symlink( stat ) );
   }
@@ -774,18 +770,18 @@
   BOOST_CHECK( !fs::exists( d2 / "d20" ) );
   BOOST_CHECK( fs::exists( d1 / "f2" ) );
 
- // remove() tests on file
+ // remove() file
   file_ph = dir / "shortlife";
   BOOST_CHECK( !fs::exists( file_ph ) );
   create_file( file_ph, "" );
   BOOST_CHECK( fs::exists( file_ph ) );
   BOOST_CHECK( !fs::is_directory( file_ph ) );
- BOOST_CHECK( fs::remove( file_ph ) );
+ fs::remove( file_ph );
   BOOST_CHECK( !fs::exists( file_ph ) );
- BOOST_CHECK( !fs::remove( "no-such-file" ) );
- BOOST_CHECK( !fs::remove( "no-such-directory/no-such-file" ) );
+ fs::remove( "no-such-file" );
+ fs::remove( "no-such-directory/no-such-file" );
 
- // remove() test on directory
+ // remove() directory
   d1 = dir / "shortlife_dir";
   BOOST_CHECK( !fs::exists( d1 ) );
   fs::create_directory( d1 );
@@ -794,44 +790,68 @@
   BOOST_CHECK( BOOST_FS_IS_EMPTY( d1 ) );
   bad_remove_dir = dir;
   BOOST_CHECK( CHECK_EXCEPTION( bad_remove, ENOTEMPTY ) );
- BOOST_CHECK( fs::remove( d1 ) );
+ fs::remove( d1 );
   BOOST_CHECK( !fs::exists( d1 ) );
 
-// STLport is allergic to std::system, so don't use runtime platform test
-# ifdef BOOST_POSIX
-
- // remove() test on dangling symbolic link
- fs::path link( "dangling_link" );
- fs::remove( link );
- BOOST_CHECK( !fs::is_symlink( link ) );
- BOOST_CHECK( !fs::exists( link ) );
- std::system("ln -s nowhere dangling_link");
- BOOST_CHECK( !fs::exists( link ) );
- BOOST_CHECK( fs::is_symlink( link ) );
- BOOST_CHECK( fs::remove( link ) );
- BOOST_CHECK( !fs::is_symlink( link ) );
-
- // remove() test on symbolic link to a file
- file_ph = "link_target";
- fs::remove( file_ph );
- BOOST_CHECK( !fs::exists( file_ph ) );
- create_file( file_ph, "" );
- BOOST_CHECK( fs::exists( file_ph ) );
- BOOST_CHECK( !fs::is_directory( file_ph ) );
- BOOST_CHECK( fs::is_regular( file_ph ) );
- std::system("ln -s link_target non_dangling_link");
- link = "non_dangling_link";
- BOOST_CHECK( fs::exists( link ) );
- BOOST_CHECK( !fs::is_directory( link ) );
- BOOST_CHECK( fs::is_regular( link ) );
- BOOST_CHECK( fs::is_symlink( link ) );
- BOOST_CHECK( fs::remove( link ) );
- BOOST_CHECK( fs::exists( file_ph ) );
- BOOST_CHECK( !fs::exists( link ) );
- BOOST_CHECK( !fs::is_symlink( link ) );
- BOOST_CHECK( fs::remove( file_ph ) );
- BOOST_CHECK( !fs::exists( file_ph ) );
-# endif
+ if ( create_symlink_ok ) // only if symlinks supported
+ {
+ // remove() dangling symbolic link
+ fs::path link( "dangling_link" );
+ fs::remove( link );
+ BOOST_CHECK( !fs::is_symlink( link ) );
+ BOOST_CHECK( !fs::exists( link ) );
+ fs::create_symlink( "nowhere", link );
+ BOOST_CHECK( !fs::exists( link ) );
+ BOOST_CHECK( fs::is_symlink( link ) );
+ fs::remove( link );
+ BOOST_CHECK( !fs::is_symlink( link ) );
+
+ // remove() self-refering symbolic link
+ link = "link_to_self";
+ fs::remove( link );
+ BOOST_CHECK( !fs::is_symlink( link ) );
+ BOOST_CHECK( !fs::exists( link ) );
+ fs::create_symlink( link, link );
+ fs::remove( link );
+ BOOST_CHECK( !fs::exists( link ) );
+ BOOST_CHECK( !fs::is_symlink( link ) );
+
+ // remove() cyclic symbolic link
+ link = "link_to_a";
+ fs::path link2( "link_to_b" );
+ fs::remove( link );
+ fs::remove( link2 );
+ BOOST_CHECK( !fs::is_symlink( link ) );
+ BOOST_CHECK( !fs::exists( link ) );
+ fs::create_symlink( link, link2 );
+ fs::create_symlink( link2, link );
+ fs::remove( link );
+ fs::remove( link2 );
+ BOOST_CHECK( !fs::exists( link ) );
+ BOOST_CHECK( !fs::exists( link2 ) );
+ BOOST_CHECK( !fs::is_symlink( link ) );
+
+ // remove() symbolic link to file
+ file_ph = "link_target";
+ fs::remove( file_ph );
+ BOOST_CHECK( !fs::exists( file_ph ) );
+ create_file( file_ph, "" );
+ BOOST_CHECK( fs::exists( file_ph ) );
+ BOOST_CHECK( !fs::is_directory( file_ph ) );
+ BOOST_CHECK( fs::is_regular_file( file_ph ) );
+ link = "non_dangling_link";
+ fs::create_symlink( file_ph, link );
+ BOOST_CHECK( fs::exists( link ) );
+ BOOST_CHECK( !fs::is_directory( link ) );
+ BOOST_CHECK( fs::is_regular_file( link ) );
+ BOOST_CHECK( fs::is_symlink( link ) );
+ fs::remove( link );
+ BOOST_CHECK( fs::exists( file_ph ) );
+ BOOST_CHECK( !fs::exists( link ) );
+ BOOST_CHECK( !fs::is_symlink( link ) );
+ fs::remove( file_ph );
+ BOOST_CHECK( !fs::exists( file_ph ) );
+ }
 
   // write time tests
 
@@ -839,7 +859,7 @@
   create_file( file_ph, "foobar2" );
   BOOST_CHECK( fs::exists( file_ph ) );
   BOOST_CHECK( !fs::is_directory( file_ph ) );
- BOOST_CHECK( fs::is_regular( file_ph ) );
+ BOOST_CHECK( fs::is_regular_file( file_ph ) );
   BOOST_CHECK( fs::file_size( file_ph ) == 7 );
   verify_file( file_ph, "foobar2" );
 

Modified: branches/CMake/release/libs/filesystem/test/path_test.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/test/path_test.cpp (original)
+++ branches/CMake/release/libs/filesystem/test/path_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,12 +1,18 @@
 // path_test program -------------------------------------------------------//
 
-// Copyright Beman Dawes 2002.
+// Copyright Beman Dawes 2002
+// Copyright Vladimir Prus 2002
+
 // Use, modification, and distribution is subject to the Boost Software
 // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
 
 // See library home page at http://www.boost.org/libs/filesystem
 
+// basic_path's stem(), extension(), and replace_extension() tests are based
+// on basename(), extension(), and change_extension() tests from the original
+// convenience_test.cpp by Vladimir Prus.
+
 #include <boost/filesystem/operations.hpp>
 #include <boost/utility.hpp>
 #include <iostream>
@@ -248,6 +254,18 @@
   path p5;
   std::string s1( "//:somestring" );
 
+ // verify deprecated names still available
+
+# ifndef BOOST_FILESYSTEM_NO_DEPRECATED
+
+ p1.branch_path();
+ p1.leaf();
+ path p_remove_leaf;
+ p_remove_leaf.remove_leaf();
+
+# endif
+
+
 # ifndef BOOST_NO_MEMBER_TEMPLATES
 
   // check the path member templates
@@ -290,10 +308,10 @@
   BOOST_CHECK( p1 != p4 );
   BOOST_CHECK( p1.string() == p2.string() );
   BOOST_CHECK( p1.string() == p3.string() );
- BOOST_CHECK( path( "foo" ).leaf() == "foo" );
- BOOST_CHECK( path( "foo" ).branch_path().string() == "" );
- BOOST_CHECK( p1.leaf() == "fum" );
- BOOST_CHECK( p1.branch_path().string() == "fe/fi/fo" );
+ BOOST_CHECK( path( "foo" ).filename() == "foo" );
+ BOOST_CHECK( path( "foo" ).parent_path().string() == "" );
+ BOOST_CHECK( p1.filename() == "fum" );
+ BOOST_CHECK( p1.parent_path().string() == "fe/fi/fo" );
   BOOST_CHECK( path( "" ).empty() == true );
   BOOST_CHECK( path( "foo" ).empty() == false );
 
@@ -336,7 +354,7 @@
   PATH_CHECK( "foo/bar", "foo/bar" );
   PATH_CHECK( path("foo") / path("bar"), "foo/bar" ); // path arg
   PATH_CHECK( path("foo") / "bar", "foo/bar" ); // const char * arg
- PATH_CHECK( path("foo") / path("woo/bar").leaf(), "foo/bar" ); // const std::string & arg
+ PATH_CHECK( path("foo") / path("woo/bar").filename(), "foo/bar" ); // const std::string & arg
   PATH_CHECK( "foo" / path("bar"), "foo/bar" );
 
   PATH_CHECK( "a/b", "a/b" ); // probe for length effects
@@ -616,8 +634,8 @@
 
   p = "";
   BOOST_CHECK( p.relative_path().string() == "" );
- BOOST_CHECK( p.branch_path().string() == "" );
- BOOST_CHECK( p.leaf() == "" );
+ BOOST_CHECK( p.parent_path().string() == "" );
+ BOOST_CHECK( p.filename() == "" );
   BOOST_CHECK( p.root_name() == "" );
   BOOST_CHECK( p.root_directory() == "" );
   BOOST_CHECK( p.root_path().string() == "" );
@@ -625,14 +643,14 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( !p.has_root_directory() );
   BOOST_CHECK( !p.has_relative_path() );
- BOOST_CHECK( !p.has_leaf() );
- BOOST_CHECK( !p.has_branch_path() );
+ BOOST_CHECK( !p.has_filename() );
+ BOOST_CHECK( !p.has_parent_path() );
   BOOST_CHECK( !p.is_complete() );
 
   p = "/";
   BOOST_CHECK( p.relative_path().string() == "" );
- BOOST_CHECK( p.branch_path().string() == "" );
- BOOST_CHECK( p.leaf() == "/" );
+ BOOST_CHECK( p.parent_path().string() == "" );
+ BOOST_CHECK( p.filename() == "/" );
   BOOST_CHECK( p.root_name() == "" );
   BOOST_CHECK( p.root_directory() == "/" );
   BOOST_CHECK( p.root_path().string() == "/" );
@@ -640,8 +658,8 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( p.has_root_directory() );
   BOOST_CHECK( !p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( !p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( !p.has_parent_path() );
   if ( platform == "POSIX" )
     BOOST_CHECK( p.is_complete() );
   else
@@ -649,8 +667,8 @@
 
   p = "//";
   CHECK_EQUAL( p.relative_path().string(), "" );
- CHECK_EQUAL( p.branch_path().string(), "" );
- CHECK_EQUAL( p.leaf(), "//" );
+ CHECK_EQUAL( p.parent_path().string(), "" );
+ CHECK_EQUAL( p.filename(), "//" );
   CHECK_EQUAL( p.root_name(), "//" );
   CHECK_EQUAL( p.root_directory(), "" );
   CHECK_EQUAL( p.root_path().string(), "//" );
@@ -658,15 +676,15 @@
   BOOST_CHECK( p.has_root_name() );
   BOOST_CHECK( !p.has_root_directory() );
   BOOST_CHECK( !p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( !p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( !p.has_parent_path() );
   BOOST_CHECK( !p.is_complete() );
 
 
   p = "///";
   CHECK_EQUAL( p.relative_path().string(), "" );
- CHECK_EQUAL( p.branch_path().string(), "" );
- CHECK_EQUAL( p.leaf(), "/" );
+ CHECK_EQUAL( p.parent_path().string(), "" );
+ CHECK_EQUAL( p.filename(), "/" );
   CHECK_EQUAL( p.root_name(), "" );
   CHECK_EQUAL( p.root_directory(), "/" );
   CHECK_EQUAL( p.root_path().string(), "/" );
@@ -674,8 +692,8 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( p.has_root_directory() );
   BOOST_CHECK( !p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( !p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( !p.has_parent_path() );
   if ( platform == "POSIX" )
     BOOST_CHECK( p.is_complete() );
   else
@@ -683,8 +701,8 @@
 
   p = ".";
   BOOST_CHECK( p.relative_path().string() == "." );
- BOOST_CHECK( p.branch_path().string() == "" );
- BOOST_CHECK( p.leaf() == "." );
+ BOOST_CHECK( p.parent_path().string() == "" );
+ BOOST_CHECK( p.filename() == "." );
   BOOST_CHECK( p.root_name() == "" );
   BOOST_CHECK( p.root_directory() == "" );
   BOOST_CHECK( p.root_path().string() == "" );
@@ -692,14 +710,14 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( !p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( !p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( !p.has_parent_path() );
   BOOST_CHECK( !p.is_complete() );
 
   p = "..";
   BOOST_CHECK( p.relative_path().string() == ".." );
- BOOST_CHECK( p.branch_path().string() == "" );
- BOOST_CHECK( p.leaf() == ".." );
+ BOOST_CHECK( p.parent_path().string() == "" );
+ BOOST_CHECK( p.filename() == ".." );
   BOOST_CHECK( p.root_name() == "" );
   BOOST_CHECK( p.root_directory() == "" );
   BOOST_CHECK( p.root_path().string() == "" );
@@ -707,14 +725,14 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( !p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( !p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( !p.has_parent_path() );
   BOOST_CHECK( !p.is_complete() );
 
   p = "foo";
   BOOST_CHECK( p.relative_path().string() == "foo" );
- BOOST_CHECK( p.branch_path().string() == "" );
- BOOST_CHECK( p.leaf() == "foo" );
+ BOOST_CHECK( p.parent_path().string() == "" );
+ BOOST_CHECK( p.filename() == "foo" );
   BOOST_CHECK( p.root_name() == "" );
   BOOST_CHECK( p.root_directory() == "" );
   BOOST_CHECK( p.root_path().string() == "" );
@@ -722,14 +740,14 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( !p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( !p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( !p.has_parent_path() );
   BOOST_CHECK( !p.is_complete() );
 
   p = "/foo";
   CHECK_EQUAL( p.relative_path().string(), "foo" );
- CHECK_EQUAL( p.branch_path().string(), "/" );
- CHECK_EQUAL( p.leaf(), "foo" );
+ CHECK_EQUAL( p.parent_path().string(), "/" );
+ CHECK_EQUAL( p.filename(), "foo" );
   CHECK_EQUAL( p.root_name(), "" );
   CHECK_EQUAL( p.root_directory(), "/" );
   CHECK_EQUAL( p.root_path().string(), "/" );
@@ -737,8 +755,8 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
   if ( platform == "POSIX" )
     BOOST_CHECK( p.is_complete() );
   else
@@ -746,8 +764,8 @@
 
   p = "/foo/";
   CHECK_EQUAL( p.relative_path().string(), "foo/" );
- CHECK_EQUAL( p.branch_path().string(), "/foo" );
- CHECK_EQUAL( p.leaf(), "." );
+ CHECK_EQUAL( p.parent_path().string(), "/foo" );
+ CHECK_EQUAL( p.filename(), "." );
   CHECK_EQUAL( p.root_name(), "" );
   CHECK_EQUAL( p.root_directory(), "/" );
   CHECK_EQUAL( p.root_path().string(), "/" );
@@ -755,8 +773,8 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
   if ( platform == "POSIX" )
     BOOST_CHECK( p.is_complete() );
   else
@@ -764,8 +782,8 @@
 
   p = "///foo";
   CHECK_EQUAL( p.relative_path().string(), "foo" );
- CHECK_EQUAL( p.branch_path().string(), "/" );
- CHECK_EQUAL( p.leaf(), "foo" );
+ CHECK_EQUAL( p.parent_path().string(), "/" );
+ CHECK_EQUAL( p.filename(), "foo" );
   CHECK_EQUAL( p.root_name(), "" );
   CHECK_EQUAL( p.root_directory(), "/" );
   CHECK_EQUAL( p.root_path().string(), "/" );
@@ -773,8 +791,8 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
   if ( platform == "POSIX" )
     BOOST_CHECK( p.is_complete() );
   else
@@ -782,8 +800,8 @@
 
   p = "foo/bar";
   BOOST_CHECK( p.relative_path().string() == "foo/bar" );
- BOOST_CHECK( p.branch_path().string() == "foo" );
- BOOST_CHECK( p.leaf() == "bar" );
+ BOOST_CHECK( p.parent_path().string() == "foo" );
+ BOOST_CHECK( p.filename() == "bar" );
   BOOST_CHECK( p.root_name() == "" );
   BOOST_CHECK( p.root_directory() == "" );
   BOOST_CHECK( p.root_path().string() == "" );
@@ -791,14 +809,14 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( !p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
   BOOST_CHECK( !p.is_complete() );
 
   p = "../foo";
   BOOST_CHECK( p.relative_path().string() == "../foo" );
- BOOST_CHECK( p.branch_path().string() == ".." );
- BOOST_CHECK( p.leaf() == "foo" );
+ BOOST_CHECK( p.parent_path().string() == ".." );
+ BOOST_CHECK( p.filename() == "foo" );
   BOOST_CHECK( p.root_name() == "" );
   BOOST_CHECK( p.root_directory() == "" );
   BOOST_CHECK( p.root_path().string() == "" );
@@ -806,14 +824,14 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( !p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
   BOOST_CHECK( !p.is_complete() );
 
   p = "..///foo";
   CHECK_EQUAL( p.relative_path().string(), "..///foo" );
- CHECK_EQUAL( p.branch_path().string(), ".." );
- CHECK_EQUAL( p.leaf(), "foo" );
+ CHECK_EQUAL( p.parent_path().string(), ".." );
+ CHECK_EQUAL( p.filename(), "foo" );
   CHECK_EQUAL( p.root_name(), "" );
   CHECK_EQUAL( p.root_directory(), "" );
   CHECK_EQUAL( p.root_path().string(), "" );
@@ -821,14 +839,14 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( !p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
   BOOST_CHECK( !p.is_complete() );
 
   p = "/foo/bar";
   BOOST_CHECK( p.relative_path().string() == "foo/bar" );
- BOOST_CHECK( p.branch_path().string() == "/foo" );
- BOOST_CHECK( p.leaf() == "bar" );
+ BOOST_CHECK( p.parent_path().string() == "/foo" );
+ BOOST_CHECK( p.filename() == "bar" );
   BOOST_CHECK( p.root_name() == "" );
   BOOST_CHECK( p.root_directory() == "/" );
   BOOST_CHECK( p.root_path().string() == "/" );
@@ -836,8 +854,8 @@
   BOOST_CHECK( !p.has_root_name() );
   BOOST_CHECK( p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
   if ( platform == "POSIX" )
     BOOST_CHECK( p.is_complete() );
   else
@@ -852,8 +870,8 @@
   p = path( "//net" );
   CHECK_EQUAL( p.string(), "//net" );
   CHECK_EQUAL( p.relative_path().string(), "" );
- CHECK_EQUAL( p.branch_path().string(), "" );
- CHECK_EQUAL( p.leaf(), "//net" );
+ CHECK_EQUAL( p.parent_path().string(), "" );
+ CHECK_EQUAL( p.filename(), "//net" );
   CHECK_EQUAL( p.root_name(), "//net" );
   CHECK_EQUAL( p.root_directory(), "" );
   CHECK_EQUAL( p.root_path().string(), "//net" );
@@ -861,14 +879,14 @@
   BOOST_CHECK( p.has_root_name() );
   BOOST_CHECK( !p.has_root_directory() );
   BOOST_CHECK( !p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( !p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( !p.has_parent_path() );
   BOOST_CHECK( !p.is_complete() );
 
   p = path( "//net/" );
   BOOST_CHECK( p.relative_path().string() == "" );
- BOOST_CHECK( p.branch_path().string() == "//net" );
- BOOST_CHECK( p.leaf() == "/" );
+ BOOST_CHECK( p.parent_path().string() == "//net" );
+ BOOST_CHECK( p.filename() == "/" );
   BOOST_CHECK( p.root_name() == "//net" );
   BOOST_CHECK( p.root_directory() == "/" );
   BOOST_CHECK( p.root_path().string() == "//net/" );
@@ -876,14 +894,14 @@
   BOOST_CHECK( p.has_root_name() );
   BOOST_CHECK( p.has_root_directory() );
   BOOST_CHECK( !p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
   BOOST_CHECK( p.is_complete() );
 
   p = path( "//net/foo" );
   BOOST_CHECK( p.relative_path().string() == "foo" );
- BOOST_CHECK( p.branch_path().string() == "//net/" );
- BOOST_CHECK( p.leaf() == "foo" );
+ BOOST_CHECK( p.parent_path().string() == "//net/" );
+ BOOST_CHECK( p.filename() == "foo" );
   BOOST_CHECK( p.root_name() == "//net" );
   BOOST_CHECK( p.root_directory() == "/" );
   BOOST_CHECK( p.root_path().string() == "//net/" );
@@ -891,14 +909,14 @@
   BOOST_CHECK( p.has_root_name() );
   BOOST_CHECK( p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
   BOOST_CHECK( p.is_complete() );
 
   p = path( "//net///foo" );
   CHECK_EQUAL( p.relative_path().string(), "foo" );
- CHECK_EQUAL( p.branch_path().string(), "//net/" );
- CHECK_EQUAL( p.leaf(), "foo" );
+ CHECK_EQUAL( p.parent_path().string(), "//net/" );
+ CHECK_EQUAL( p.filename(), "foo" );
   CHECK_EQUAL( p.root_name(), "//net" );
   CHECK_EQUAL( p.root_directory(), "/" );
   CHECK_EQUAL( p.root_path().string(), "//net/" );
@@ -906,8 +924,8 @@
   BOOST_CHECK( p.has_root_name() );
   BOOST_CHECK( p.has_root_directory() );
   BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
   BOOST_CHECK( p.is_complete() );
 
   if ( platform == "Windows" )
@@ -959,8 +977,8 @@
 
     p = path( "c:" );
     BOOST_CHECK( p.relative_path().string() == "" );
- BOOST_CHECK( p.branch_path().string() == "" );
- BOOST_CHECK( p.leaf() == "c:" );
+ BOOST_CHECK( p.parent_path().string() == "" );
+ BOOST_CHECK( p.filename() == "c:" );
     BOOST_CHECK( p.root_name() == "c:" );
     BOOST_CHECK( p.root_directory() == "" );
     BOOST_CHECK( p.root_path().string() == "c:" );
@@ -968,14 +986,14 @@
     BOOST_CHECK( p.has_root_name() );
     BOOST_CHECK( !p.has_root_directory() );
     BOOST_CHECK( !p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( !p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( !p.has_parent_path() );
     BOOST_CHECK( !p.is_complete() );
 
     p = path( "c:foo" );
     BOOST_CHECK( p.relative_path().string() == "foo" );
- BOOST_CHECK( p.branch_path().string() == "c:" );
- BOOST_CHECK( p.leaf() == "foo" );
+ BOOST_CHECK( p.parent_path().string() == "c:" );
+ BOOST_CHECK( p.filename() == "foo" );
     BOOST_CHECK( p.root_name() == "c:" );
     BOOST_CHECK( p.root_directory() == "" );
     BOOST_CHECK( p.root_path().string() == "c:" );
@@ -983,14 +1001,14 @@
     BOOST_CHECK( p.has_root_name() );
     BOOST_CHECK( !p.has_root_directory() );
     BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
     BOOST_CHECK( !p.is_complete() );
  
     p = path( "c:/" );
     BOOST_CHECK( p.relative_path().string() == "" );
- BOOST_CHECK( p.branch_path().string() == "c:" );
- BOOST_CHECK( p.leaf() == "/" );
+ BOOST_CHECK( p.parent_path().string() == "c:" );
+ BOOST_CHECK( p.filename() == "/" );
     BOOST_CHECK( p.root_name() == "c:" );
     BOOST_CHECK( p.root_directory() == "/" );
     BOOST_CHECK( p.root_path().string() == "c:/" );
@@ -998,14 +1016,14 @@
     BOOST_CHECK( p.has_root_name() );
     BOOST_CHECK( p.has_root_directory() );
     BOOST_CHECK( !p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
     BOOST_CHECK( p.is_complete() );
 
     p = path( "c:.." );
     BOOST_CHECK( p.relative_path().string() == ".." );
- BOOST_CHECK( p.branch_path().string() == "c:" );
- BOOST_CHECK( p.leaf() == ".." );
+ BOOST_CHECK( p.parent_path().string() == "c:" );
+ BOOST_CHECK( p.filename() == ".." );
     BOOST_CHECK( p.root_name() == "c:" );
     BOOST_CHECK( p.root_directory() == "" );
     BOOST_CHECK( p.root_path().string() == "c:" );
@@ -1013,14 +1031,14 @@
     BOOST_CHECK( p.has_root_name() );
     BOOST_CHECK( !p.has_root_directory() );
     BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
     BOOST_CHECK( !p.is_complete() );
 
     p = path( "c:/foo" );
     CHECK_EQUAL( p.relative_path().string(), "foo" );
- CHECK_EQUAL( p.branch_path().string(), "c:/" );
- CHECK_EQUAL( p.leaf(), "foo" );
+ CHECK_EQUAL( p.parent_path().string(), "c:/" );
+ CHECK_EQUAL( p.filename(), "foo" );
     CHECK_EQUAL( p.root_name(), "c:" );
     CHECK_EQUAL( p.root_directory(), "/" );
     CHECK_EQUAL( p.root_path().string(), "c:/" );
@@ -1028,14 +1046,14 @@
     BOOST_CHECK( p.has_root_name() );
     BOOST_CHECK( p.has_root_directory() );
     BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
     BOOST_CHECK( p.is_complete() );
 
     p = path( "c://foo" );
     CHECK_EQUAL( p.relative_path().string(), "foo" );
- CHECK_EQUAL( p.branch_path().string(), "c:/" );
- CHECK_EQUAL( p.leaf(), "foo" );
+ CHECK_EQUAL( p.parent_path().string(), "c:/" );
+ CHECK_EQUAL( p.filename(), "foo" );
     CHECK_EQUAL( p.root_name(), "c:" );
     CHECK_EQUAL( p.root_directory(), "/" );
     CHECK_EQUAL( p.root_path().string(), "c:/" );
@@ -1043,14 +1061,14 @@
     BOOST_CHECK( p.has_root_name() );
     BOOST_CHECK( p.has_root_directory() );
     BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
     BOOST_CHECK( p.is_complete() );
 
     p = path( "c:\\foo\\bar" );
     CHECK_EQUAL( p.relative_path().string(), "foo/bar" );
- CHECK_EQUAL( p.branch_path().string(), "c:/foo" );
- CHECK_EQUAL( p.leaf(), "bar" );
+ CHECK_EQUAL( p.parent_path().string(), "c:/foo" );
+ CHECK_EQUAL( p.filename(), "bar" );
     CHECK_EQUAL( p.root_name(), "c:" );
     CHECK_EQUAL( p.root_directory(), "/" );
     CHECK_EQUAL( p.root_path().string(), "c:/" );
@@ -1058,14 +1076,14 @@
     BOOST_CHECK( p.has_root_name() );
     BOOST_CHECK( p.has_root_directory() );
     BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
     BOOST_CHECK( p.is_complete() );
 
     p = path( "prn:" );
     BOOST_CHECK( p.relative_path().string() == "" );
- BOOST_CHECK( p.branch_path().string() == "" );
- BOOST_CHECK( p.leaf() == "prn:" );
+ BOOST_CHECK( p.parent_path().string() == "" );
+ BOOST_CHECK( p.filename() == "prn:" );
     BOOST_CHECK( p.root_name() == "prn:" );
     BOOST_CHECK( p.root_directory() == "" );
     BOOST_CHECK( p.root_path().string() == "prn:" );
@@ -1073,14 +1091,14 @@
     BOOST_CHECK( p.has_root_name() );
     BOOST_CHECK( !p.has_root_directory() );
     BOOST_CHECK( !p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( !p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( !p.has_parent_path() );
     BOOST_CHECK( !p.is_complete() );
 
     p = path( "\\\\net\\\\\\foo" );
     CHECK_EQUAL( p.relative_path().string(), "foo" );
- CHECK_EQUAL( p.branch_path().string(), "//net/" );
- CHECK_EQUAL( p.leaf(), "foo" );
+ CHECK_EQUAL( p.parent_path().string(), "//net/" );
+ CHECK_EQUAL( p.filename(), "foo" );
     CHECK_EQUAL( p.root_name(), "//net" );
     CHECK_EQUAL( p.root_directory(), "/" );
     CHECK_EQUAL( p.root_path().string(), "//net/" );
@@ -1088,8 +1106,8 @@
     BOOST_CHECK( p.has_root_name() );
     BOOST_CHECK( p.has_root_directory() );
     BOOST_CHECK( p.has_relative_path() );
- BOOST_CHECK( p.has_leaf() );
- BOOST_CHECK( p.has_branch_path() );
+ BOOST_CHECK( p.has_filename() );
+ BOOST_CHECK( p.has_parent_path() );
     BOOST_CHECK( p.is_complete() );
 
     itr_ck = path( "c:" );
@@ -1283,6 +1301,40 @@
   BOOST_CHECK( acs2 >= a );
   BOOST_CHECK( a2 >= as );
   BOOST_CHECK( a2 >= acs );
+
+// extension() tests
+
+ BOOST_CHECK( path("a/b").extension() == "" );
+ BOOST_CHECK( path("a/b.txt").extension() == ".txt" );
+ BOOST_CHECK( path("a/b.").extension() == "." );
+ BOOST_CHECK( path("a.b.c").extension() == ".c" );
+ BOOST_CHECK( path("a.b.c.").extension() == "." );
+ BOOST_CHECK( path("").extension() == "" );
+ BOOST_CHECK( path("a/").extension() == "." );
+
+// stem() tests
+
+ BOOST_CHECK( path("b").stem() == "b" );
+ BOOST_CHECK( path("a/b.txt").stem() == "b" );
+ BOOST_CHECK( path("a/b.").stem() == "b" );
+ BOOST_CHECK( path("a.b.c").stem() == "a.b" );
+ BOOST_CHECK( path("a.b.c.").stem() == "a.b.c" );
+ BOOST_CHECK( path("").stem() == "" );
+
+// replace_extension() tests
+
+ BOOST_CHECK( path("a.txt").replace_extension("").string() == "a" );
+ BOOST_CHECK( path("a.txt").replace_extension(".").string() == "a." );
+ BOOST_CHECK( path("a.txt").replace_extension(".tex").string() == "a.tex" );
+ BOOST_CHECK( path("a.txt").replace_extension("tex").string() == "a.tex" );
+ BOOST_CHECK( path("a.").replace_extension(".tex").string() == "a.tex" );
+ BOOST_CHECK( path("a.").replace_extension("tex").string() == "a.tex" );
+ BOOST_CHECK( path("a").replace_extension(".txt").string() == "a.txt" );
+ BOOST_CHECK( path("a").replace_extension("txt").string() == "a.txt" );
+ BOOST_CHECK( path("a.b.txt" ).replace_extension(".tex").string() == "a.b.tex" );
+ BOOST_CHECK( path("a.b.txt" ).replace_extension("tex").string() == "a.b.tex" );
+ // see the rationale in html docs for explanation why this works
+ BOOST_CHECK( path("").replace_extension(".png").string() == ".png" );
 
   // inserter and extractor tests
 # if !defined( BOOST_MSVC ) || BOOST_MSVC > 1300 // bypass VC++ 7.0 and earlier

Modified: branches/CMake/release/libs/filesystem/test/wide_test.cpp
==============================================================================
--- branches/CMake/release/libs/filesystem/test/wide_test.cpp (original)
+++ branches/CMake/release/libs/filesystem/test/wide_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,12 +8,7 @@
 
 // See library home page at http://www.boost.org/libs/filesystem
 
-// VC++ 8.0 warns on various less-than-safe practices.
-// See http://msdn.microsoft.com/msdnmag/issues/05/05/SafeCandC/default.aspx
-// But at least in VC++ 8.0 betas, their own libraries use the problem
-// practices. So turn off the warnings.
-#define _CRT_SECURE_NO_DEPRECATE
-#define _SCL_SECURE_NO_DEPRECATE
+#include <boost/config/warning_disable.hpp>
 
 #include <boost/filesystem/config.hpp>
 # ifdef BOOST_FILESYSTEM_NARROW_ONLY
@@ -31,6 +26,7 @@
 
 #include <iostream>
 #include <iomanip>
+#include <ios>
 #include <string>
 #include <cerrno>
 
@@ -112,7 +108,7 @@
     if ( convertor.out(
       state, src.c_str(), src.c_str()+src.size(), from_next, work.get(),
       work.get()+work_size, to_next ) != std::codecvt_base::ok )
- boost::throw_exception( "to_external conversion error" );
+ boost::throw_exception( std::runtime_error("to_external conversion error") );
     *to_next = '\0';
     return std::string( work.get() );
   }

Modified: branches/CMake/release/libs/function/doc/history.xml
==============================================================================
--- branches/CMake/release/libs/function/doc/history.xml (original)
+++ branches/CMake/release/libs/function/doc/history.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,22 @@
 
 <itemizedlist spacing="compact">
 
+ <listitem><para><bold>Version 1.36.0</bold>: </para>
+ <itemizedlist spacing="compact">
+ <listitem><para>Boost.Function now implements allocator support
+ in the same way that is is provided in C++0x, based on C++
+ committee
+ proposal <ulink url="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2308.html">N2308</ulink>. This
+ change removes the <computeroutput>Allocator</computeroutput>
+ template parameter of <classname>boost::function</classname> in
+ favor of a constructor that takes an argument. While this is a
+ backward-incompatible change, it is likely to affect only a few
+ users. This change to Function was contributed by Emil
+ Dotchevski, which also authored the corresponding C++ committee
+ proposal.</para></listitem>
+ </itemizedlist>
+ </listitem>
+
   <listitem><para><bold>Version 1.34.0</bold>: </para>
     <itemizedlist spacing="compact">
       <listitem><para>Boost.Function now implements a small buffer optimization, which can drastically improve the performance when copying or construction Boost.Function objects storing small function objects. For instance, <code>bind(&amp;X:foo, &amp;x, _1, _2)</code> requires no heap allocation when placed into a Boost.Function object. Note that some exception-safety guarantees have changed: assignment provides the basic exception guarantee and <code>swap()</code> may throw.</para></listitem>

Modified: branches/CMake/release/libs/function/doc/misc.xml
==============================================================================
--- branches/CMake/release/libs/function/doc/misc.xml (original)
+++ branches/CMake/release/libs/function/doc/misc.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -24,7 +24,7 @@
 <para> And, of course, function pointers have several advantages over Boost.Function:
 
 <itemizedlist spacing="compact">
- <listitem><para> Function pointers are smaller (the size of one pointer instead of three) </para></listitem>
+ <listitem><para> Function pointers are smaller (the size of one pointer instead of four or more) </para></listitem>
     <listitem><para> Function pointers are faster (Boost.Function may require two calls through function pointers) </para></listitem>
     <listitem><para> Function pointers are backward-compatible with C libraries.</para></listitem>
     <listitem><para> More readable error messages. </para></listitem>
@@ -37,12 +37,12 @@
 
 <section>
   <title>Function object wrapper size</title>
-<para> Function object wrappers will be the size of two function pointers plus one function pointer or data pointer (whichever is larger). On common 32-bit platforms, this amounts to 12 bytes per wrapper. Additionally, the function object target will be allocated on the heap.</para>
+ <para> Function object wrappers will be the size of a struct containing a member function pointer and two data pointers. The actual size can vary significantly depending on the underlying platform; on 32-bit Mac OS X with GCC, this amounts to 16 bytes, while it is 32 bytes Windows with Visual C++. Additionally, the function object target may be allocated on the heap, if it cannot be placed into the small-object buffer in the <code>boost::function</code> object.</para>
 </section>
 
 <section>
   <title>Copying efficiency</title>
-<para> Copying function object wrappers may require allocating memory for a copy of the function object target. The default allocator may be replaced with a faster custom allocator or one may choose to allow the function object wrappers to only store function object targets by reference (using <computeroutput>ref</computeroutput>) if the cost of this cloning becomes prohibitive.</para>
+ <para> Copying function object wrappers may require allocating memory for a copy of the function object target. The default allocator may be replaced with a faster custom allocator or one may choose to allow the function object wrappers to only store function object targets by reference (using <computeroutput>ref</computeroutput>) if the cost of this cloning becomes prohibitive. Small function objects can be stored within the <code>boost::function</code> object itself, improving copying efficiency.</para>
  </section>
 
 <section>

Modified: branches/CMake/release/libs/function/doc/reference.xml
==============================================================================
--- branches/CMake/release/libs/function/doc/reference.xml (original)
+++ branches/CMake/release/libs/function/doc/reference.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -141,9 +141,6 @@
       <template-type-parameter name="T2"/>
       <template-varargs/>
       <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator">
- <default><classname>std::allocator</classname>&lt;void&gt;</default>
- </template-type-parameter>
     </template>
 
     <inherit access="public"><classname>function_base</classname></inherit>
@@ -160,7 +157,6 @@
     </description>
 
     <typedef name="result_type"><type>R</type></typedef>
- <typedef name="allocator_type"><type>Allocator</type></typedef>
     <typedef name="argument_type">
       <type>T1</type><purpose>If N == 1</purpose>
     </typedef>
@@ -216,6 +212,19 @@
       <postconditions><simpara><code>*this</code> targets a copy of <code>f</code> if <code>f</code> is nonempty, or <code>this-&gt;<methodname>empty</methodname>()</code> if <code>f</code> is empty.</simpara></postconditions>
     </constructor>
 
+ <constructor>
+ <template>
+ <template-type-parameter name="F"/>
+ <template-type-parameter name="Allocator"/>
+ </template>
+ <parameter name="f"><paramtype>F</paramtype></parameter>
+ <parameter name="alloc"><paramtype>Allocator</paramtype></parameter>
+ <requires><simpara>F is a function object Callable from <code>this</code>, Allocator is an allocator. The copy constructor and destructor of Allocator shall not throw.</simpara></requires>
+ <postconditions><simpara><code>*this</code> targets a copy of <code>f</code> if <code>f</code> is nonempty, or <code>this-&gt;<methodname>empty</methodname>()</code> if <code>f</code> is empty.</simpara></postconditions>
+
+ <effects><simpara>If memory allocation is required, the given allocator (or a copy of it) will be used to allocate that memory.</simpara></effects>
+ </constructor>
+
     <destructor>
       <effects><simpara>If <code>!this-&gt;<methodname>empty</methodname>()</code>, destroys the target of this.</simpara></effects>
 
@@ -324,11 +333,10 @@
           <template-type-parameter name="T2"/>
           <template-varargs/>
           <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator"/>
         </template>
         <type>void</type>
- <parameter name="f1"><paramtype><classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator&gt;&amp;</paramtype></parameter>
- <parameter name="f2"><paramtype><classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f1"><paramtype><classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
+ <parameter name="f2"><paramtype><classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
         <effects><simpara><code>f1.<methodname>swap</methodname>(f2)</code></simpara></effects>
       </function>
     </free-function-group>
@@ -341,11 +349,10 @@
             <template-type-parameter name="T2"/>
             <template-varargs/>
             <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
- <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
           <parameter name="g"><paramtype>Functor</paramtype></parameter>
         </signature>
         <signature>
@@ -354,12 +361,11 @@
             <template-type-parameter name="T2"/>
             <template-varargs/>
             <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
           <parameter name="g"><paramtype>Functor</paramtype></parameter>
- <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
         </signature>
         <signature>
           <template>
@@ -367,11 +373,10 @@
             <template-type-parameter name="T2"/>
             <template-varargs/>
             <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
- <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
           <parameter name="g"><paramtype><classname>reference_wrapper</classname>&lt;Functor&gt;</paramtype></parameter>
         </signature>
         <signature>
@@ -380,12 +385,11 @@
             <template-type-parameter name="T2"/>
             <template-varargs/>
             <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
           <parameter name="g"><paramtype><classname>reference_wrapper</classname>&lt;Functor&gt;</paramtype></parameter>
- <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
         </signature>
         <signature>
           <template>
@@ -393,16 +397,14 @@
             <template-type-parameter name="T2"/>
             <template-varargs/>
             <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator1"/>
             <template-type-parameter name="U1"/>
             <template-type-parameter name="U2"/>
             <template-varargs/>
             <template-type-parameter name="UN"/>
- <template-type-parameter name="Allocator2"/>
           </template>
           <type>void</type>
- <parameter name="f1"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator1&gt;&amp;</paramtype></parameter>
- <parameter name="f2"><paramtype>const <classname>functionN</classname>&lt;U1, U2, ..., UN, Allocator2&gt;&amp;</paramtype></parameter>
+ <parameter name="f1"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
+ <parameter name="f2"><paramtype>const <classname>functionN</classname>&lt;U1, U2, ..., UN&gt;&amp;</paramtype></parameter>
         </signature>
 
         <returns><simpara>True when <code>f</code> stores an object of
@@ -442,11 +444,10 @@
             <template-type-parameter name="T2"/>
             <template-varargs/>
             <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
- <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
           <parameter name="g"><paramtype>Functor</paramtype></parameter>
         </signature>
         <signature>
@@ -455,12 +456,11 @@
             <template-type-parameter name="T2"/>
             <template-varargs/>
             <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
           <parameter name="g"><paramtype>Functor</paramtype></parameter>
- <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
         </signature>
         <signature>
           <template>
@@ -468,11 +468,10 @@
             <template-type-parameter name="T2"/>
             <template-varargs/>
             <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
- <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
           <parameter name="g"><paramtype><classname>reference_wrapper</classname>&lt;Functor&gt;</paramtype></parameter>
         </signature>
         <signature>
@@ -481,12 +480,11 @@
             <template-type-parameter name="T2"/>
             <template-varargs/>
             <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
           <parameter name="g"><paramtype><classname>reference_wrapper</classname>&lt;Functor&gt;</paramtype></parameter>
- <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
         </signature>
         <signature>
           <template>
@@ -494,16 +492,14 @@
             <template-type-parameter name="T2"/>
             <template-varargs/>
             <template-type-parameter name="TN"/>
- <template-type-parameter name="Allocator1"/>
             <template-type-parameter name="U1"/>
             <template-type-parameter name="U2"/>
             <template-varargs/>
             <template-type-parameter name="UN"/>
- <template-type-parameter name="Allocator2"/>
           </template>
           <type>void</type>
- <parameter name="f1"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN, Allocator1&gt;&amp;</paramtype></parameter>
- <parameter name="f2"><paramtype>const <classname>functionN</classname>&lt;U1, U2, ..., UN, Allocator2&gt;&amp;</paramtype></parameter>
+ <parameter name="f1"><paramtype>const <classname>functionN</classname>&lt;T1, T2, ..., TN&gt;&amp;</paramtype></parameter>
+ <parameter name="f2"><paramtype>const <classname>functionN</classname>&lt;U1, U2, ..., UN&gt;&amp;</paramtype></parameter>
         </signature>
 
         <returns><simpara>True when <code>f</code> does not store an
@@ -543,11 +539,8 @@
       <template-type-parameter name="Signature">
         <purpose>Function type R (T1, T2, ..., TN)</purpose>
       </template-type-parameter>
- <template-type-parameter name="Allocator">
- <default><classname>std::allocator</classname>&lt;void&gt;</default>
- </template-type-parameter>
     </template>
- <inherit access="public"><classname>functionN</classname>&lt;R, T1, T2, ..., TN, Allocator&gt;</inherit>
+ <inherit access="public"><classname>functionN</classname>&lt;R, T1, T2, ..., TN&gt;</inherit>
 
     <purpose>A generalized function pointer that can be used for
     callbacks or wrapping function objects.</purpose>
@@ -569,7 +562,6 @@
     </description>
 
     <typedef name="result_type"><type>R</type></typedef>
- <typedef name="allocator_type"><type>Allocator</type></typedef>
     <typedef name="argument_type">
       <type>T1</type><purpose>If N == 1</purpose>
     </typedef>
@@ -633,6 +625,19 @@
       <postconditions><simpara><code>*this</code> targets a copy of <code>f</code> if <code>f</code> is nonempty, or <code>this-&gt;<methodname>empty</methodname>()</code> if <code>f</code> is empty.</simpara></postconditions>
     </constructor>
 
+ <constructor>
+ <template>
+ <template-type-parameter name="F"/>
+ <template-type-parameter name="Allocator"/>
+ </template>
+ <parameter name="f"><paramtype>F</paramtype></parameter>
+ <parameter name="alloc"><paramtype>Allocator</paramtype></parameter>
+ <requires><simpara>F is a function object Callable from <code>this</code>, Allocator is an allocator. The copy constructor and destructor of Allocator shall not throw.</simpara></requires>
+ <postconditions><simpara><code>*this</code> targets a copy of <code>f</code> if <code>f</code> is nonempty, or <code>this-&gt;<methodname>empty</methodname>()</code> if <code>f</code> is empty.</simpara></postconditions>
+
+ <effects><simpara>If memory allocation is required, the given allocator (or a copy of it) will be used to allocate that memory.</simpara></effects>
+ </constructor>
+
     <destructor>
       <effects><simpara>If <code>!this-&gt;<methodname>empty</methodname>()</code>, destroys the target of <code>this</code>.</simpara></effects>
 
@@ -745,11 +750,10 @@
       <function name="swap">
         <template>
           <template-type-parameter name="Signature"/>
- <template-type-parameter name="Allocator"/>
         </template>
         <type>void</type>
- <parameter name="f1"><paramtype><classname>function</classname>&lt;Signature, Allocator&gt;&amp;</paramtype></parameter>
- <parameter name="f2"><paramtype><classname>function</classname>&lt;Signature, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f1"><paramtype><classname>function</classname>&lt;Signature&gt;&amp;</paramtype></parameter>
+ <parameter name="f2"><paramtype><classname>function</classname>&lt;Signature&gt;&amp;</paramtype></parameter>
         <effects><simpara><code>f1.<methodname>swap</methodname>(f2)</code></simpara></effects>
       </function>
     </free-function-group>
@@ -759,53 +763,47 @@
         <signature>
           <template>
             <template-type-parameter name="Signature"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
- <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature&gt;&amp;</paramtype></parameter>
           <parameter name="g"><paramtype>Functor</paramtype></parameter>
         </signature>
         <signature>
           <template>
             <template-type-parameter name="Signature"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
           <parameter name="g"><paramtype>Functor</paramtype></parameter>
- <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature&gt;&amp;</paramtype></parameter>
         </signature>
         <signature>
           <template>
             <template-type-parameter name="Signature"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
- <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature&gt;&amp;</paramtype></parameter>
           <parameter name="g"><paramtype><classname>reference_wrapper</classname>&lt;Functor&gt;</paramtype></parameter>
         </signature>
         <signature>
           <template>
             <template-type-parameter name="Signature"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
           <parameter name="g"><paramtype><classname>reference_wrapper</classname>&lt;Functor&gt;</paramtype></parameter>
- <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature&gt;&amp;</paramtype></parameter>
         </signature>
         <signature>
           <template>
             <template-type-parameter name="Signature1"/>
- <template-type-parameter name="Allocator1"/>
             <template-type-parameter name="Signature2"/>
- <template-type-parameter name="Allocator2"/>
           </template>
           <type>void</type>
- <parameter name="f1"><paramtype>const <classname>function</classname>&lt;Signature1, Allocator1&gt;&amp;</paramtype></parameter>
- <parameter name="f2"><paramtype>const <classname>function</classname>&lt;Signature2, Allocator2&gt;&amp;</paramtype></parameter>
+ <parameter name="f1"><paramtype>const <classname>function</classname>&lt;Signature1&gt;&amp;</paramtype></parameter>
+ <parameter name="f2"><paramtype>const <classname>function</classname>&lt;Signature2&gt;&amp;</paramtype></parameter>
         </signature>
 
         <returns><simpara>True when <code>f</code> stores an object of
@@ -840,53 +838,47 @@
         <signature>
           <template>
             <template-type-parameter name="Signature"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
- <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature&gt;&amp;</paramtype></parameter>
           <parameter name="g"><paramtype>Functor</paramtype></parameter>
         </signature>
         <signature>
           <template>
             <template-type-parameter name="Signature"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
           <parameter name="g"><paramtype>Functor</paramtype></parameter>
- <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature&gt;&amp;</paramtype></parameter>
         </signature>
         <signature>
           <template>
             <template-type-parameter name="Signature"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
- <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature&gt;&amp;</paramtype></parameter>
           <parameter name="g"><paramtype><classname>reference_wrapper</classname>&lt;Functor&gt;</paramtype></parameter>
         </signature>
         <signature>
           <template>
             <template-type-parameter name="Signature"/>
- <template-type-parameter name="Allocator"/>
             <template-type-parameter name="Functor"/>
           </template>
           <type>bool</type>
           <parameter name="g"><paramtype><classname>reference_wrapper</classname>&lt;Functor&gt;</paramtype></parameter>
- <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature, Allocator&gt;&amp;</paramtype></parameter>
+ <parameter name="f"><paramtype>const <classname>function</classname>&lt;Signature&gt;&amp;</paramtype></parameter>
         </signature>
         <signature>
           <template>
             <template-type-parameter name="Signature1"/>
- <template-type-parameter name="Allocator1"/>
             <template-type-parameter name="Signature2"/>
- <template-type-parameter name="Allocator2"/>
           </template>
           <type>void</type>
- <parameter name="f1"><paramtype>const <classname>function</classname>&lt;Signature1, Allocator1&gt;&amp;</paramtype></parameter>
- <parameter name="f2"><paramtype>const <classname>function</classname>&lt;Signature2, Allocator2&gt;&amp;</paramtype></parameter>
+ <parameter name="f1"><paramtype>const <classname>function</classname>&lt;Signature1&gt;&amp;</paramtype></parameter>
+ <parameter name="f2"><paramtype>const <classname>function</classname>&lt;Signature2&gt;&amp;</paramtype></parameter>
         </signature>
 
         <returns><simpara>True when <code>f</code> does not store an

Modified: branches/CMake/release/libs/function/test/allocator_test.cpp
==============================================================================
--- branches/CMake/release/libs/function/test/allocator_test.cpp (original)
+++ branches/CMake/release/libs/function/test/allocator_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -27,6 +27,14 @@
     typedef counting_allocator<U> other;
   };
 
+ counting_allocator()
+ {
+ }
+
+ template<typename U>
+ counting_allocator( counting_allocator<U> )
+ {
+ }
 
   T* allocate(std::size_t n)
   {
@@ -41,20 +49,27 @@
   }
 };
 
-struct plus_int
+struct enable_small_object_optimization
 {
- int operator()(int x, int y) const { return x + y; }
+};
 
+struct disable_small_object_optimization
+{
   int unused_state_data[32];
 };
 
+template <typename base>
+struct plus_int: base
+{
+ int operator()(int x, int y) const { return x + y; }
+};
+
 static int do_minus(int x, int y) { return x-y; }
 
-struct DoNothing
+template <typename base>
+struct DoNothing: base
 {
   void operator()() const {}
-
- int unused_state_data[32];
 };
 
 static void do_nothing() {}
@@ -62,33 +77,57 @@
 int
 test_main(int, char*[])
 {
- function2<int, int, int, counting_allocator<int> > f;
- f = plus_int();
+ function2<int, int, int> f;
+ f.assign( plus_int<disable_small_object_optimization>(), counting_allocator<int>() );
   f.clear();
   BOOST_CHECK(alloc_count == 1);
   BOOST_CHECK(dealloc_count == 1);
+ alloc_count = 0;
+ dealloc_count = 0;
+ f.assign( plus_int<enable_small_object_optimization>(), counting_allocator<int>() );
+ f.clear();
+ BOOST_CHECK(alloc_count == 0);
+ BOOST_CHECK(dealloc_count == 0);
+ f.assign( plus_int<disable_small_object_optimization>(), std::allocator<int>() );
+ f.clear();
+ f.assign( plus_int<enable_small_object_optimization>(), std::allocator<int>() );
+ f.clear();
 
   alloc_count = 0;
   dealloc_count = 0;
- f = &do_minus;
+ f.assign( &do_minus, counting_allocator<int>() );
   f.clear();
   BOOST_CHECK(alloc_count == 0);
   BOOST_CHECK(dealloc_count == 0);
+ f.assign( &do_minus, std::allocator<int>() );
+ f.clear();
 
- function0<void, counting_allocator<int> > fv;
+ function0<void> fv;
   alloc_count = 0;
   dealloc_count = 0;
- fv = DoNothing();
+ fv.assign( DoNothing<disable_small_object_optimization>(), counting_allocator<int>() );
   fv.clear();
   BOOST_CHECK(alloc_count == 1);
   BOOST_CHECK(dealloc_count == 1);
+ alloc_count = 0;
+ dealloc_count = 0;
+ fv.assign( DoNothing<enable_small_object_optimization>(), counting_allocator<int>() );
+ fv.clear();
+ BOOST_CHECK(alloc_count == 0);
+ BOOST_CHECK(dealloc_count == 0);
+ fv.assign( DoNothing<disable_small_object_optimization>(), std::allocator<int>() );
+ fv.clear();
+ fv.assign( DoNothing<enable_small_object_optimization>(), std::allocator<int>() );
+ fv.clear();
 
   alloc_count = 0;
   dealloc_count = 0;
- fv = &do_nothing;
+ fv.assign( &do_nothing, counting_allocator<int>() );
   fv.clear();
   BOOST_CHECK(alloc_count == 0);
   BOOST_CHECK(dealloc_count == 0);
+ fv.assign( &do_nothing, std::allocator<int>() );
+ fv.clear();
 
   return 0;
 }

Modified: branches/CMake/release/libs/gil/doc/index.html
==============================================================================
--- branches/CMake/release/libs/gil/doc/index.html (original)
+++ branches/CMake/release/libs/gil/doc/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -21,7 +21,7 @@
         <h3 class="navbar">Information</h3>
         <ul>
             <li>GIL ASL Home</li>
- <li>GIL Wxtensions</li>
+ <li>GIL Extensions</li>
             <li>GIL Discussion Forum</li>
             <li>Acknowledgements</li>
         </ul>

Modified: branches/CMake/release/libs/gil/example/interleaved_ref.hpp
==============================================================================
--- branches/CMake/release/libs/gil/example/interleaved_ref.hpp (original)
+++ branches/CMake/release/libs/gil/example/interleaved_ref.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
     Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
     http://www.boost.org/LICENSE_1_0.txt).
 
- See http://opensource.adobe.com/gil for most recent version including documentation.
+ See http://stlab.adobe.com/gil for most recent version including documentation.
 */
 
 /*************************************************************************************************/
@@ -130,7 +130,7 @@
 
 // Required by MutableColorBaseConcept. The default std::swap does not do the right thing for proxy references - it swaps the references, not the values
 template <typename ChannelReference, typename Layout>
-void swap(interleaved_ref<ChannelReference,Layout>& x, interleaved_ref<ChannelReference,Layout>& y) {
+void swap(const interleaved_ref<ChannelReference,Layout>& x, const interleaved_ref<ChannelReference,Layout>& y) {
     static_for_each(x,y,detail::swap_fn_t());
 };
 

Modified: branches/CMake/release/libs/gil/test/Makefile
==============================================================================
--- branches/CMake/release/libs/gil/test/Makefile (original)
+++ branches/CMake/release/libs/gil/test/Makefile 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,8 +7,9 @@
 .SUFFIXES: .cpp
 #CXX=/usr/local/gcc4/bin/g++
 #CXX=/usr/local/gcc411/bin/g++
-#CXX=/usr/local/gcc412/bin/g++
-CXX=g++
+CXX=/usr/local/gcc430/bin/g++
+#CXX=g++
+#CXX='/cygdrive/c/Program Files/Intel/Compiler/C++/10.0.027/IA32/Bin/icl.exe'
 
 CXX_FLAGS=-Wall -DBOOST_GIL_USE_CONCEPT_CHECK #-DNDEBUG
 CXX_CHECKSUM_FLAGS=-Wall -DBOOST_GIL_NO_IO -DBOOST_GIL_USE_CONCEPT_CHECK #-DNDEBUG
@@ -21,17 +22,32 @@
 LIBPNG_INCLUDE_PATH=-I../../../../lib/libpng
 LIBPNG_LIB_PATH=-L../../../../lib/libpng
 LIBZ_LIB_PATH=-L../../../../lib/zlib
-ALL_OBJECTS=main.o channel.o pixel.o pixel_iterator.o image.o image_io.o sample_image.o
 
-all: performance checksum
+all: performance channel_test pixel_test pixel_iterator_test image_checksum_test image_io_checksum_test
 .cpp.o:
 # ${CXX} ${CXX_FLAGS} ${BOOST_INCLUDE_PATH} ${LIBJPEG_INCLUDE_PATH} ${LIBTIFF_INCLUDE_PATH} ${LIBPNG_INCLUDE_PATH} -c $<
         ${CXX} ${CXX_CHECKSUM_FLAGS} ${BOOST_INCLUDE_PATH} -c $<
 clean:
         -rm -f *.o *.exe
-performance: performance.o
+performance: performance.o
         ${CXX} -o performance ${CXX_FLAGS} performance.o
-test: ${ALL_OBJECTS}
- ${CXX} -o test ${CXX_FLAGS} ${ALL_OBJECTS} ${LIBJPEG_LIB_PATH} -ljpeg ${LIBTIFF_LIB_PATH} -ltiff ${LIBPNG_LIB_PATH} -lpng ${LIBZ_LIB_PATH} -lz
-checksum: ${ALL_OBJECTS}
- ${CXX} -o test ${CXX_CHECKSUM_FLAGS} ${ALL_OBJECTS}
+channel_test: channel.o error_if.o
+ ${CXX} -o channel_test ${CXX_CHECKSUM_FLAGS} channel.o error_if.o
+pixel_test: pixel.o error_if.o
+ ${CXX} -o pixel_test ${CXX_CHECKSUM_FLAGS} pixel.o error_if.o
+pixel_iterator_test: pixel_iterator.o error_if.o
+ ${CXX} -o pixel_iterator_test ${CXX_CHECKSUM_FLAGS} pixel_iterator.o error_if.o
+image_checksum_test: image.o error_if.o sample_image.o
+ ${CXX} -o image_checksum_test ${CXX_CHECKSUM_FLAGS} image.o error_if.o sample_image.o
+image_test: image.o error_if.o sample_image.o
+ ${CXX} -o image_test ${CXX_FLAGS} image.o error_if.o sample_image.o ${LIBJPEG_LIB_PATH} -ljpeg ${LIBTIFF_LIB_PATH} -ltiff ${LIBPNG_LIB_PATH} -lpng ${LIBZ_LIB_PATH} -lz
+image_io_checksum_test: image_io.o error_if.o
+ ${CXX} -o image_io_checksum_test ${CXX_CHECKSUM_FLAGS} image_io.o error_if.o
+image_io_test: image_io.o error_if.o
+ ${CXX} -o image_io_test ${CXX_FLAGS} image_io.o error_if.o ${LIBJPEG_LIB_PATH} -ljpeg ${LIBTIFF_LIB_PATH} -ltiff ${LIBPNG_LIB_PATH} -lpng ${LIBZ_LIB_PATH} -lz
+run_all: channel_test pixel_test pixel_iterator_test image_checksum_test image_io_checksum_test
+ channel_test
+ pixel_test
+ pixel_iterator_test
+ image_checksum_test
+ image_io_checksum_test

Modified: branches/CMake/release/libs/gil/test/image.cpp
==============================================================================
--- branches/CMake/release/libs/gil/test/image.cpp (original)
+++ branches/CMake/release/libs/gil/test/image.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -17,6 +17,7 @@
 
 #include <string>
 #include <vector>
+#include <ios>
 #include <iostream>
 #include <fstream>
 #include <map>

Modified: branches/CMake/release/libs/gil/test/main.cpp
==============================================================================
--- branches/CMake/release/libs/gil/test/main.cpp (original)
+++ branches/CMake/release/libs/gil/test/main.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
     Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
     http://www.boost.org/LICENSE_1_0.txt).
 
- See http://opensource.adobe.com/gil for most recent version including documentation.
+ See http://stlab.adobe.com/gil for most recent version including documentation.
 */
 // main.cpp : Runs all GIL tests.
 //
@@ -13,6 +13,30 @@
 #include <fstream>
 #include <iostream>
 
+#define main main1
+#include "channel.cpp"
+#undef main
+
+#define main main2
+#define value_core pixel_value_core
+#define reference_core pixel_reference_core
+#include "pixel.cpp"
+#undef value_core
+#undef reference_core
+#undef main
+
+#define main main3
+#include "pixel_iterator.cpp"
+#undef main
+
+#define main main4
+#include "image.cpp"
+#undef main
+
+#define main main5
+#include "image_io.cpp"
+#undef main
+
 void test_channel();
 void test_pixel();
 void test_pixel_iterator();

Modified: branches/CMake/release/libs/gil/test/pixel.cpp
==============================================================================
--- branches/CMake/release/libs/gil/test/pixel.cpp (original)
+++ branches/CMake/release/libs/gil/test/pixel.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -146,7 +146,7 @@
 };
 
 template <typename PixelRef, int Tag=0>
-class reference_core : value_core<typename boost::remove_reference<PixelRef>::type::value_type, Tag> {
+class reference_core : public value_core<typename boost::remove_reference<PixelRef>::type::value_type, Tag> {
 public:
     typedef PixelRef type;
     typedef typename boost::remove_reference<PixelRef>::type pixel_t;

Modified: branches/CMake/release/libs/intrusive/test/itestvalue.hpp
==============================================================================
--- branches/CMake/release/libs/intrusive/test/itestvalue.hpp (original)
+++ branches/CMake/release/libs/intrusive/test/itestvalue.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -380,6 +380,9 @@
    bool operator==(const testvalue &other) const
    { return value_ == other.value_; }
 
+ bool operator!=(const testvalue &other) const
+ { return value_ != other.value_; }
+
    friend bool operator< (int other1, const testvalue &other2)
    { return other1 < other2.value_; }
 
@@ -391,6 +394,12 @@
 
    friend bool operator== (const testvalue &other1, int other2)
    { return other1.value_ == other2; }
+
+ friend bool operator!= (int other1, const testvalue &other2)
+ { return other1 != other2.value_; }
+
+ friend bool operator!= (const testvalue &other1, int other2)
+ { return other1.value_ != other2; }
 };
 
 template<class VoidPointer, bool ConstantTimeSize>

Modified: branches/CMake/release/libs/math/doc/complex/complex-tr1.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/complex-tr1.qbk (original)
+++ branches/CMake/release/libs/math/doc/complex/complex-tr1.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -21,7 +21,7 @@
 [template tr1[] [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1836.pdf Technical Report on C++ Library Extensions]]
 
 This manual is also available in
-[@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/complex-tr1.pdf
+[@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/complex-tr1.pdf
 printer friendly PDF format].
 
 [section:inverse_complex Complex Number Inverse Trigonometric Functions]

Modified: branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex.html
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex.html (original)
+++ branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Complex Number Inverse Trigonometric Functions</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Complex Number TR1 Algorithms">
 <link rel="up" href="../index.html" title="Complex Number TR1 Algorithms">
 <link rel="prev" href="../index.html" title="Complex Number TR1 Algorithms">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="complex_number_tr1_algorithms.inverse_complex"></a><a class="link" href="inverse_complex.html" title="Complex Number Inverse Trigonometric Functions"> Complex
+<a name="complex_number_tr1_algorithms.inverse_complex"></a><a href="inverse_complex.html" title="Complex Number Inverse Trigonometric Functions"> Complex
     Number Inverse Trigonometric Functions</a>
 </h2></div></div></div>
 <div class="toc"><dl>

Modified: branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/acos.html
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/acos.html (original)
+++ branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/acos.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>acos</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Complex Number TR1 Algorithms">
 <link rel="up" href="../inverse_complex.html" title="Complex Number Inverse Trigonometric Functions">
 <link rel="prev" href="asin.html" title="asin">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,22 +24,20 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="complex_number_tr1_algorithms.inverse_complex.acos"></a><a class="link" href="acos.html" title="acos">
+<a name="complex_number_tr1_algorithms.inverse_complex.acos"></a><a href="acos.html" title="acos">
       acos</a>
 </h3></div></div></div>
 <a name="complex_number_tr1_algorithms.inverse_complex.acos.header_"></a><h5>
-<a name="id2585332"></a>
- <a class="link" href="acos.html#complex_number_tr1_algorithms.inverse_complex.acos.header_">Header:</a>
+<a name="id447567"></a>
+ Header:
       </h5>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">acos</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">acos</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <a name="complex_number_tr1_algorithms.inverse_complex.acos.synopsis_"></a><h5>
-<a name="id2585418"></a>
- <a class="link" href="acos.html#complex_number_tr1_algorithms.inverse_complex.acos.synopsis_">Synopsis:</a>
+<a name="id447660"></a>
+ Synopsis:
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">acos</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="identifier">z</span><span class="special">);</span>
 </pre>
 <p>

Modified: branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/acosh.html
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/acosh.html (original)
+++ branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/acosh.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>acosh</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Complex Number TR1 Algorithms">
 <link rel="up" href="../inverse_complex.html" title="Complex Number Inverse Trigonometric Functions">
 <link rel="prev" href="asinh.html" title="asinh">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,22 +24,20 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="complex_number_tr1_algorithms.inverse_complex.acosh"></a><a class="link" href="acosh.html" title="acosh">
+<a name="complex_number_tr1_algorithms.inverse_complex.acosh"></a><a href="acosh.html" title="acosh">
       acosh</a>
 </h3></div></div></div>
 <a name="complex_number_tr1_algorithms.inverse_complex.acosh.header_"></a><h5>
-<a name="id2635932"></a>
- <a class="link" href="acosh.html#complex_number_tr1_algorithms.inverse_complex.acosh.header_">Header:</a>
+<a name="id499993"></a>
+ Header:
       </h5>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">acosh</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">acosh</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <a name="complex_number_tr1_algorithms.inverse_complex.acosh.synopsis_"></a><h5>
-<a name="id2636009"></a>
- <a class="link" href="acosh.html#complex_number_tr1_algorithms.inverse_complex.acosh.synopsis_">Synopsis:</a>
+<a name="id500086"></a>
+ Synopsis:
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">acosh</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="identifier">z</span><span class="special">);</span>
 </pre>
 <p>

Modified: branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/asin.html
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/asin.html (original)
+++ branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/asin.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>asin</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Complex Number TR1 Algorithms">
 <link rel="up" href="../inverse_complex.html" title="Complex Number Inverse Trigonometric Functions">
 <link rel="prev" href="implementation.html" title="Implementation and Accuracy">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,22 +24,20 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="complex_number_tr1_algorithms.inverse_complex.asin"></a><a class="link" href="asin.html" title="asin">
+<a name="complex_number_tr1_algorithms.inverse_complex.asin"></a><a href="asin.html" title="asin">
       asin</a>
 </h3></div></div></div>
 <a name="complex_number_tr1_algorithms.inverse_complex.asin.header_"></a><h5>
-<a name="id2586365"></a>
- <a class="link" href="asin.html#complex_number_tr1_algorithms.inverse_complex.asin.header_">Header:</a>
+<a name="id447439"></a>
+ Header:
       </h5>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">asin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">asin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <a name="complex_number_tr1_algorithms.inverse_complex.asin.synopsis_"></a><h5>
-<a name="id2586451"></a>
- <a class="link" href="asin.html#complex_number_tr1_algorithms.inverse_complex.asin.synopsis_">Synopsis:</a>
+<a name="id446168"></a>
+ Synopsis:
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">asin</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="identifier">z</span><span class="special">);</span>
 </pre>
 <p>

Modified: branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/asinh.html
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/asinh.html (original)
+++ branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/asinh.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>asinh</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Complex Number TR1 Algorithms">
 <link rel="up" href="../inverse_complex.html" title="Complex Number Inverse Trigonometric Functions">
 <link rel="prev" href="atan.html" title="atan">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,22 +24,20 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="complex_number_tr1_algorithms.inverse_complex.asinh"></a><a class="link" href="asinh.html" title="asinh">
+<a name="complex_number_tr1_algorithms.inverse_complex.asinh"></a><a href="asinh.html" title="asinh">
       asinh</a>
 </h3></div></div></div>
 <a name="complex_number_tr1_algorithms.inverse_complex.asinh.header_"></a><h5>
-<a name="id2635686"></a>
- <a class="link" href="asinh.html#complex_number_tr1_algorithms.inverse_complex.asinh.header_">Header:</a>
+<a name="id446106"></a>
+ Header:
       </h5>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">asinh</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">asinh</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <a name="complex_number_tr1_algorithms.inverse_complex.asinh.synopsis_"></a><h5>
-<a name="id2635763"></a>
- <a class="link" href="asinh.html#complex_number_tr1_algorithms.inverse_complex.asinh.synopsis_">Synopsis:</a>
+<a name="id499790"></a>
+ Synopsis:
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">asinh</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="identifier">z</span><span class="special">);</span>
 </pre>
 <p>

Modified: branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/atan.html
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/atan.html (original)
+++ branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/atan.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>atan</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Complex Number TR1 Algorithms">
 <link rel="up" href="../inverse_complex.html" title="Complex Number Inverse Trigonometric Functions">
 <link rel="prev" href="acos.html" title="acos">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,22 +24,20 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="complex_number_tr1_algorithms.inverse_complex.atan"></a><a class="link" href="atan.html" title="atan">
+<a name="complex_number_tr1_algorithms.inverse_complex.atan"></a><a href="atan.html" title="atan">
       atan</a>
 </h3></div></div></div>
 <a name="complex_number_tr1_algorithms.inverse_complex.atan.header_"></a><h5>
-<a name="id2585601"></a>
- <a class="link" href="atan.html#complex_number_tr1_algorithms.inverse_complex.atan.header_">Header:</a>
+<a name="id445808"></a>
+ Header:
       </h5>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">atan</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">atan</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <a name="complex_number_tr1_algorithms.inverse_complex.atan.synopsis_"></a><h5>
-<a name="id2585686"></a>
- <a class="link" href="atan.html#complex_number_tr1_algorithms.inverse_complex.atan.synopsis_">Synopsis:</a>
+<a name="id445901"></a>
+ Synopsis:
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">atan</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="identifier">z</span><span class="special">);</span>
 </pre>
 <p>

Modified: branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/atanh.html
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/atanh.html (original)
+++ branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/atanh.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>atanh</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Complex Number TR1 Algorithms">
 <link rel="up" href="../inverse_complex.html" title="Complex Number Inverse Trigonometric Functions">
 <link rel="prev" href="acosh.html" title="acosh">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,22 +24,20 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="complex_number_tr1_algorithms.inverse_complex.atanh"></a><a class="link" href="atanh.html" title="atanh">
+<a name="complex_number_tr1_algorithms.inverse_complex.atanh"></a><a href="atanh.html" title="atanh">
       atanh</a>
 </h3></div></div></div>
 <a name="complex_number_tr1_algorithms.inverse_complex.atanh.header_"></a><h5>
-<a name="id2636177"></a>
- <a class="link" href="atanh.html#complex_number_tr1_algorithms.inverse_complex.atanh.header_">Header:</a>
+<a name="id500292"></a>
+ Header:
       </h5>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">atanh</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">complex</span><span class="special">/</span><span class="identifier">atanh</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <a name="complex_number_tr1_algorithms.inverse_complex.atanh.synopsis_"></a><h5>
-<a name="id2636255"></a>
- <a class="link" href="atanh.html#complex_number_tr1_algorithms.inverse_complex.atanh.synopsis_">Synopsis:</a>
+<a name="id500385"></a>
+ Synopsis:
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">atanh</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="identifier">z</span><span class="special">);</span>
 </pre>
 <p>

Modified: branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/history.html
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/history.html (original)
+++ branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/history.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>History</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Complex Number TR1 Algorithms">
 <link rel="up" href="../inverse_complex.html" title="Complex Number Inverse Trigonometric Functions">
 <link rel="prev" href="atanh.html" title="atanh">
@@ -13,8 +13,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -23,7 +23,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="complex_number_tr1_algorithms.inverse_complex.history"></a><a class="link" href="history.html" title="History">History</a>
+<a name="complex_number_tr1_algorithms.inverse_complex.history"></a>History
 </h3></div></div></div>
 <div class="itemizedlist"><ul type="disc">
 <li>

Modified: branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/implementation.html
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/implementation.html (original)
+++ branches/CMake/release/libs/math/doc/complex/html/complex_number_tr1_algorithms/inverse_complex/implementation.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Implementation and Accuracy</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Complex Number TR1 Algorithms">
 <link rel="up" href="../inverse_complex.html" title="Complex Number Inverse Trigonometric Functions">
 <link rel="prev" href="../inverse_complex.html" title="Complex Number Inverse Trigonometric Functions">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="complex_number_tr1_algorithms.inverse_complex.implementation"></a><a class="link" href="implementation.html" title="Implementation and Accuracy">
+<a name="complex_number_tr1_algorithms.inverse_complex.implementation"></a><a href="implementation.html" title="Implementation and Accuracy">
       Implementation and Accuracy</a>
 </h3></div></div></div>
 <p>

Modified: branches/CMake/release/libs/math/doc/complex/html/index.html
==============================================================================
--- branches/CMake/release/libs/math/doc/complex/html/index.html (original)
+++ branches/CMake/release/libs/math/doc/complex/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Complex Number TR1 Algorithms</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="index.html" title="Complex Number TR1 Algorithms">
 <link rel="next" href="complex_number_tr1_algorithms/inverse_complex.html" title="Complex Number Inverse Trigonometric Functions">
 </head>
@@ -12,8 +12,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
 </h3></div></div></div>
 <div><p class="copyright">Copyright © 2005 John Maddock</p></div>
 <div><div class="legalnotice">
-<a name="id2625926"></a><p>
+<a name="id447060"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -61,7 +61,7 @@
 </dl>
 </div>
 <p>
- This manual is also available in <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/complex-tr1.pdf" target="_top">printer
+ This manual is also available in <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/complex-tr1.pdf" target="_top">printer
     friendly PDF format</a>.
   </p>
 </div>

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Greatest Common Divisor and Least Common Multiple</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="GCD and LCM">
 <link rel="up" href="../index.html" title="GCD and LCM">
 <link rel="prev" href="../index.html" title="GCD and LCM">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="gcd_and_lcm.gcd_lcm"></a><a class="link" href="gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple"> Greatest Common Divisor and Least
+<a name="gcd_and_lcm.gcd_lcm"></a><a href="gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple"> Greatest Common Divisor and Least
     Common Multiple</a>
 </h2></div></div></div>
 <div class="toc"><dl>

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/compile_time.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/compile_time.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/compile_time.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Compile time GCD and LCM determination</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="run_time.html" title="Run-time GCD &amp; LCM Determination">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,14 +24,13 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.compile_time"></a><a class="link" href="compile_time.html" title="Compile time GCD and LCM determination"> Compile time GCD and
+<a name="gcd_and_lcm.gcd_lcm.compile_time"></a><a href="compile_time.html" title="Compile time GCD and LCM determination"> Compile time GCD and
       LCM determination</a>
 </h3></div></div></div>
 <p>
         <span class="bold"><strong>Header: </strong></span> <boost/math/common_factor_ct.hpp>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span> <span class="keyword">unsigned</span> <span class="keyword">long</span> <span class="identifier">Value1</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">long</span> <span class="identifier">Value2</span> <span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span> <span class="keyword">unsigned</span> <span class="keyword">long</span> <span class="identifier">Value1</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">long</span> <span class="identifier">Value2</span> <span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">static_gcd</span>
 <span class="special">{</span>
    <span class="keyword">static</span> <span class="keyword">unsigned</span> <span class="keyword">long</span> <span class="keyword">const</span> <span class="identifier">value</span> <span class="special">=</span> <span class="identifier">implementation_defined</span><span class="special">;</span>
@@ -52,11 +51,10 @@
         multiple is beyond the range of an unsigned long.
       </p>
 <a name="gcd_and_lcm.gcd_lcm.compile_time.example"></a><h4>
-<a name="id2636465"></a>
- <a class="link" href="compile_time.html#gcd_and_lcm.gcd_lcm.compile_time.example">Example</a>
+<a name="id500631"></a>
+ Example
       </h4>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">common_factor</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">common_factor</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">algorithm</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">&gt;</span>
 

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/credits.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/credits.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/credits.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Credits</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="history.html" title="History">
@@ -13,8 +13,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -23,7 +23,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.credits"></a><a class="link" href="credits.html" title="Credits">Credits</a>
+<a name="gcd_and_lcm.gcd_lcm.credits"></a>Credits
 </h3></div></div></div>
 <p>
         The author of the Boost compilation of GCD and LCM computations is Daryle

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/demo.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/demo.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/demo.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Demonstration Program</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="header.html" title="Header &lt;boost/math/common_factor.hpp&gt;">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.demo"></a><a class="link" href="demo.html" title="Demonstration Program"> Demonstration Program</a>
+<a name="gcd_and_lcm.gcd_lcm.demo"></a> Demonstration Program
 </h3></div></div></div>
 <p>
         The program common_factor_test.cpp

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/gcd_function_object.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/gcd_function_object.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/gcd_function_object.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>GCD Function Object</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="synopsis.html" title="Synopsis">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,14 +24,13 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.gcd_function_object"></a><a class="link" href="gcd_function_object.html" title="GCD Function Object">GCD Function
+<a name="gcd_and_lcm.gcd_lcm.gcd_function_object"></a><a href="gcd_function_object.html" title="GCD Function Object">GCD Function
       Object</a>
 </h3></div></div></div>
 <p>
         <span class="bold"><strong>Header: </strong></span> <boost/math/common_factor_rt.hpp>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">IntegerType</span> <span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">IntegerType</span> <span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">gcd_evaluator</span>
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/header.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/header.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/header.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Header &lt;boost/math/common_factor.hpp&gt;</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="compile_time.html" title="Compile time GCD and LCM determination">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.header"></a><a class="link" href="header.html" title="Header &lt;boost/math/common_factor.hpp&gt;"> Header &lt;boost/math/common_factor.hpp&gt;</a>
+<a name="gcd_and_lcm.gcd_lcm.header"></a> Header <boost/math/common_factor.hpp>
 </h3></div></div></div>
 <p>
         This header simply includes the headers <boost/math/common_factor_ct.hpp>

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/history.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/history.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/history.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>History</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="rationale.html" title="Rationale">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.history"></a><a class="link" href="history.html" title="History">History</a>
+<a name="gcd_and_lcm.gcd_lcm.history"></a>History
 </h3></div></div></div>
 <div class="itemizedlist"><ul type="disc">
 <li>

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/introduction.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/introduction.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/introduction.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Introduction</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.introduction"></a><a class="link" href="introduction.html" title="Introduction">Introduction</a>
+<a name="gcd_and_lcm.gcd_lcm.introduction"></a>Introduction
 </h3></div></div></div>
 <p>
         The class and function templates in &lt;boost/math/common_factor.hpp&gt;

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/lcm_function_object.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/lcm_function_object.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/lcm_function_object.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>LCM Function Object</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="gcd_function_object.html" title="GCD Function Object">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,14 +24,13 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.lcm_function_object"></a><a class="link" href="lcm_function_object.html" title="LCM Function Object">LCM Function
+<a name="gcd_and_lcm.gcd_lcm.lcm_function_object"></a><a href="lcm_function_object.html" title="LCM Function Object">LCM Function
       Object</a>
 </h3></div></div></div>
 <p>
         <span class="bold"><strong>Header: </strong></span> <boost/math/common_factor_rt.hpp>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">IntegerType</span> <span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">IntegerType</span> <span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">lcm_evaluator</span>
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/rationale.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/rationale.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/rationale.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Rationale</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="demo.html" title="Demonstration Program">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.rationale"></a><a class="link" href="rationale.html" title="Rationale">Rationale</a>
+<a name="gcd_and_lcm.gcd_lcm.rationale"></a>Rationale
 </h3></div></div></div>
 <p>
         The greatest common divisor and least common multiple functions are greatly

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/run_time.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/run_time.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/run_time.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Run-time GCD &amp; LCM Determination</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="lcm_function_object.html" title="LCM Function Object">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,14 +24,13 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.run_time"></a><a class="link" href="run_time.html" title="Run-time GCD &amp; LCM Determination"> Run-time GCD &amp; LCM
+<a name="gcd_and_lcm.gcd_lcm.run_time"></a><a href="run_time.html" title="Run-time GCD &amp; LCM Determination"> Run-time GCD &amp; LCM
       Determination</a>
 </h3></div></div></div>
 <p>
         <span class="bold"><strong>Header: </strong></span> <boost/math/common_factor_rt.hpp>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">IntegerType</span> <span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">IntegerType</span> <span class="special">&gt;</span>
 <span class="identifier">IntegerType</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">gcd</span><span class="special">(</span> <span class="identifier">IntegerType</span> <span class="keyword">const</span> <span class="special">&amp;</span><span class="identifier">a</span><span class="special">,</span> <span class="identifier">IntegerType</span> <span class="keyword">const</span> <span class="special">&amp;</span><span class="identifier">b</span> <span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">IntegerType</span> <span class="special">&gt;</span>

Modified: branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/synopsis.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/synopsis.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/gcd_and_lcm/gcd_lcm/synopsis.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Synopsis</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="GCD and LCM">
 <link rel="up" href="../gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 <link rel="prev" href="introduction.html" title="Introduction">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="gcd_and_lcm.gcd_lcm.synopsis"></a><a class="link" href="synopsis.html" title="Synopsis">Synopsis</a>
+<a name="gcd_and_lcm.gcd_lcm.synopsis"></a>Synopsis
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span>
 <span class="special">{</span>
 <span class="keyword">namespace</span> <span class="identifier">math</span>
 <span class="special">{</span>

Modified: branches/CMake/release/libs/math/doc/gcd/html/index.html
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/html/index.html (original)
+++ branches/CMake/release/libs/math/doc/gcd/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>GCD and LCM</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="index.html" title="GCD and LCM">
 <link rel="next" href="gcd_and_lcm/gcd_lcm.html" title="Greatest Common Divisor and Least Common Multiple">
 </head>
@@ -12,8 +12,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
 </h3></div></div></div>
 <div><p class="copyright">Copyright © 2001 -2002 Daryle Walker</p></div>
 <div><div class="legalnotice">
-<a name="id2625922"></a><p>
+<a name="id447055"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -61,7 +61,7 @@
 </dl>
 </div>
 <p>
- This manual is also available in <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/math-gcd.pdf" target="_top">printer
+ This manual is also available in <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/math-gcd.pdf" target="_top">printer
     friendly PDF format</a>.
   </p>
 </div>

Modified: branches/CMake/release/libs/math/doc/gcd/math-gcd.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/gcd/math-gcd.qbk (original)
+++ branches/CMake/release/libs/math/doc/gcd/math-gcd.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,7 +12,7 @@
 ]
 
 This manual is also available in
-[@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/math-gcd.pdf
+[@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/math-gcd.pdf
 printer friendly PDF format].
 
 

Modified: branches/CMake/release/libs/math/doc/html/index.html
==============================================================================
--- branches/CMake/release/libs/math/doc/html/index.html (original)
+++ branches/CMake/release/libs/math/doc/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Boost.Math</title>
 <link rel="stylesheet" href="../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="index.html" title="Boost.Math">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -11,8 +11,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -25,7 +25,7 @@
 <div><p class="copyright">Copyright © 2007 Paul A. Bristow, Hubert Holin, John Maddock, Daryle
       Walker and Xiaogang Zhang</p></div>
 <div><div class="legalnotice">
-<a name="id2625868"></a><p>
+<a name="id445643"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -63,7 +63,7 @@
             <a href="../complex/html/index.html" target="_top">HTML Docs</a>
           </p>
           <p>
- <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/complex-tr1.pdf" target="_top">PDF
+ <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/complex-tr1.pdf" target="_top">PDF
             Docs</a>
           </p>
           </td>
@@ -85,7 +85,7 @@
             <a href="../gcd/html/index.html" target="_top">HTML Docs</a>
           </p>
           <p>
- <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/math-gcd.pdf" target="_top">PDF
+ <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/math-gcd.pdf" target="_top">PDF
             Docs</a>
           </p>
           </td>
@@ -107,7 +107,7 @@
             <a href="../octonion/html/index.html" target="_top">HTML Docs</a>
           </p>
           <p>
- <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/octonion.pdf" target="_top">PDF
+ <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/octonion.pdf" target="_top">PDF
             Docs</a>
           </p>
           </td>
@@ -165,7 +165,7 @@
             <a href="../sf_and_dist/html/index.html" target="_top">HTML Docs</a>
           </p>
           <p>
- <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf" target="_top">PDF
+ <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf" target="_top">PDF
             Docs</a>
           </p>
           </td>
@@ -201,7 +201,7 @@
             <a href="../sf_and_dist/html/index.html" target="_top">HTML Docs</a>
           </p>
           <p>
- <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf" target="_top">PDF
+ <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf" target="_top">PDF
             Docs</a>
           </p>
           </td>
@@ -230,7 +230,7 @@
             <a href="../quaternion/html/index.html" target="_top">HTML Docs</a>
           </p>
           <p>
- <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/quaternion.pdf" target="_top">PDF
+ <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/quaternion.pdf" target="_top">PDF
             Docs</a>
           </p>
           </td>
@@ -426,7 +426,7 @@
 </table></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: February 21, 2008 at 12:14:40 +0000</small></p></td>
+<td align="left"><p><small>Last revised: May 28, 2008 at 10:39:25 +0100</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: branches/CMake/release/libs/math/doc/math.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/math.qbk (original)
+++ branches/CMake/release/libs/math/doc/math.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -36,7 +36,7 @@
    
    [@../complex/html/index.html HTML Docs]
    
- [@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/complex-tr1.pdf
+ [@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/complex-tr1.pdf
    PDF Docs]]
    [
 These complex number algorithms are the inverses of trigonometric functions currently
@@ -48,7 +48,7 @@
    
    [@../gcd/html/index.html HTML Docs]
    
- [@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/math-gcd.pdf
+ [@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/math-gcd.pdf
    PDF Docs]]
    [
 The class and function templates in <boost/math/common_factor.hpp>
@@ -62,7 +62,7 @@
 
 [@../octonion/html/index.html HTML Docs]
 
-[@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/octonion.pdf
+[@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/octonion.pdf
 PDF Docs]]
    [
 Octonions, like [@../quaternion/html/index.html quaternions], are a relative of complex numbers.
@@ -97,7 +97,7 @@
 
 [@../sf_and_dist/html/index.html HTML Docs]
 
-[@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf
+[@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf
 PDF Docs]]
 
    [ Provides a number of high quality special functions, initially
@@ -122,7 +122,7 @@
 
 [@../sf_and_dist/html/index.html HTML Docs]
 
-[@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf
+[@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf
 PDF Docs]]
 
    [Provides a reasonably comprehensive set of statistical distributions,
@@ -139,7 +139,7 @@
 
 [@../quaternion/html/index.html HTML Docs]
 
-[@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/quaternion.pdf
+[@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/quaternion.pdf
 PDF Docs]]
 
    [

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Octonions</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Octonions">
 <link rel="up" href="../index.html" title="Boost.Octonions">
 <link rel="prev" href="../index.html" title="Boost.Octonions">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_octonions.octonions"></a><a class="link" href="octonions.html" title="Octonions">Octonions</a>
+<a name="boost_octonions.octonions"></a>Octonions
 </h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section">Overview</span></dt>

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/acknowledgements.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/acknowledgements.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/acknowledgements.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Acknowledgements</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="test_program.html" title="Test Program">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.acknowledgements"></a><a class="link" href="acknowledgements.html" title="Acknowledgements">Acknowledgements</a>
+<a name="boost_octonions.octonions.acknowledgements"></a>Acknowledgements
 </h3></div></div></div>
 <p>
         The mathematical text has been typeset with <a href="http://www.nisus-soft.com/" target="_top">Nisus

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/header_file.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/header_file.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/header_file.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Header File</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="overview.html" title="Overview">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.header_file"></a><a class="link" href="header_file.html" title="Header File">Header File</a>
+<a name="boost_octonions.octonions.header_file"></a>Header File
 </h3></div></div></div>
 <p>
         The interface and implementation are both supplied by the header file octonion.hpp.

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/history.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/history.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/history.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>History</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="acknowledgements.html" title="Acknowledgements">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.history"></a><a class="link" href="history.html" title="History">History</a>
+<a name="boost_octonions.octonions.history"></a>History
 </h3></div></div></div>
 <div class="itemizedlist"><ul type="disc">
 <li>

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/non_mem.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/non_mem.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/non_mem.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Octonion Non-Member Operators</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="octonion_member_functions.html" title="Octonion Member Functions">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,33 +24,30 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.non_mem"></a><a class="link" href="non_mem.html" title="Octonion Non-Member Operators"> Octonion Non-Member
+<a name="boost_octonions.octonions.non_mem"></a><a href="non_mem.html" title="Octonion Non-Member Operators"> Octonion Non-Member
       Operators</a>
 </h3></div></div></div>
 <a name="boost_octonions.octonions.non_mem.unary_plus_and_minus_operators"></a><h5>
-<a name="id2664971"></a>
- <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.unary_plus_and_minus_operators">Unary
+<a name="id533169"></a>
+ <a href="non_mem.html#boost_octonions.octonions.non_mem.unary_plus_and_minus_operators">Unary
         Plus and Minus Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         This unary operator simply returns o.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         This unary operator returns the opposite of o.
       </p>
 <a name="boost_octonions.octonions.non_mem.binary_addition_operators"></a><h5>
-<a name="id2665216"></a>
- <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_addition_operators">Binary
+<a name="id533438"></a>
+ <a href="non_mem.html#boost_octonions.octonions.non_mem.binary_addition_operators">Binary
         Addition Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special
">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r
hs</span><span class="special">);</span>
@@ -63,12 +60,11 @@
         <span class="identifier">rhs</span></code>.
       </p>
 <a name="boost_octonions.octonions.non_mem.binary_subtraction_operators"></a><h5>
-<a name="id2666322"></a>
- <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_subtraction_operators">Binary
+<a name="id534657"></a>
+ <a href="non_mem.html#boost_octonions.octonions.non_mem.binary_subtraction_operators">Binary
         Subtraction Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special
">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r
hs</span><span class="special">);</span>
@@ -81,12 +77,11 @@
         <span class="identifier">rhs</span></code>.
       </p>
 <a name="boost_octonions.octonions.non_mem.binary_multiplication_operators"></a><h5>
-<a name="id2667427"></a>
- <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_multiplication_operators">Binary
+<a name="id535876"></a>
+ <a href="non_mem.html#boost_octonions.octonions.non_mem.binary_multiplication_operators">Binary
         Multiplication Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">*</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special
">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r
hs</span><span class="special">);</span>
@@ -99,12 +94,11 @@
         <span class="identifier">rhs</span></code>.
       </p>
 <a name="boost_octonions.octonions.non_mem.binary_division_operators"></a><h5>
-<a name="id2668530"></a>
- <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_division_operators">Binary
+<a name="id537095"></a>
+ <a href="non_mem.html#boost_octonions.octonions.non_mem.binary_division_operators">Binary
         Division Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">/</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">/</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">/</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">/</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special
">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">/</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r
hs</span><span class="special">);</span>
@@ -118,12 +112,11 @@
         to divide by zero...
       </p>
 <a name="boost_octonions.octonions.non_mem.binary_equality_operators"></a><h5>
-<a name="id2669635"></a>
- <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_equality_operators">Binary
+<a name="id538314"></a>
+ <a href="non_mem.html#boost_octonions.octonions.non_mem.binary_equality_operators">Binary
         Equality Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
@@ -137,12 +130,11 @@
         with any floating-type entity, this is essentially meaningless.
       </p>
 <a name="boost_octonions.octonions.non_mem.binary_inequality_operators"></a><h5>
-<a name="id2670669"></a>
- <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_inequality_operators">Binary
+<a name="id539450"></a>
+ <a href="non_mem.html#boost_octonions.octonions.non_mem.binary_inequality_operators">Binary
         Inequality Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
@@ -156,12 +148,11 @@
         false. As with any floating-type entity, this is essentially meaningless.
       </p>
 <a name="boost_octonions.octonions.non_mem.stream_extractor"></a><h5>
-<a name="id2671702"></a>
- <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.stream_extractor">Stream
+<a name="id540589"></a>
+ <a href="non_mem.html#boost_octonions.octonions.non_mem.stream_extractor">Stream
         Extractor</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">&gt;&gt;</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">is</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span c
lass="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
@@ -179,12 +170,11 @@
         Returns <code class="computeroutput"><span class="identifier">is</span></code>.
       </p>
 <a name="boost_octonions.octonions.non_mem.stream_inserter"></a><h5>
-<a name="id2672037"></a>
- <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.stream_inserter">Stream
+<a name="id540954"></a>
+ <a href="non_mem.html#boost_octonions.octonions.non_mem.stream_inserter">Stream
         Inserter</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">&lt;&lt;</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">os</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span c
lass="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
@@ -192,8 +182,7 @@
         the stream <code class="computeroutput"><span class="identifier">os</span></code> as if it were
         implemented as follows:
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">&lt;&lt;</span> <span class="special">(</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">os</span><span class="special">,</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">)</span>
 <span class="special">{</span>

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/oct_create.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/oct_create.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/oct_create.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Octonion Creation Functions</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="octonion_value_operations.html" title="Octonion Value Operations">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,11 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.oct_create"></a><a class="link" href="oct_create.html" title="Octonion Creation Functions"> Octonion Creation
+<a name="boost_octonions.octonions.oct_create"></a><a href="oct_create.html" title="Octonion Creation Functions"> Octonion Creation
       Functions</a>
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">spherical</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identi
fier">phi2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi4</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi5</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi6</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">spherical</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp
;</span> <span class="identifier">phi2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi4</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi5</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi6</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">multipolar</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="ide
ntifier">theta2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho4</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta4</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">cylindrical</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">angle</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifi
er">h2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h4</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h5</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h6</span><span class="special">);</span>
 </pre>

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_member_functions.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_member_functions.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_member_functions.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Octonion Member Functions</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="octonion_member_typedefs.html" title="Octonion Member Typedefs">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,18 +24,17 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.octonion_member_functions"></a><a class="link" href="octonion_member_functions.html" title="Octonion Member Functions">Octonion
+<a name="boost_octonions.octonions.octonion_member_functions"></a><a href="octonion_member_functions.html" title="Octonion Member Functions">Octonion
       Member Functions</a>
 </h3></div></div></div>
 <a name="boost_octonions.octonions.octonion_member_functions.constructors"></a><h4>
-<a name="id2657931"></a>
- <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">Constructors</a>
+<a name="id525451"></a>
+ Constructors
       </h4>
 <p>
         Template version:
       </p>
-<pre class="programlisting">
-<span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span>
 <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span class="special">=</span> <span class="identifier">T</span><span cla
ss="special">());</span>
+<pre class="programlisting"><span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <s
pan class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span class="special">=</span> <span class="i
dentifier">T</span><span class="special">());</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</sp
an><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z3</span> <span class="special">=</span>
<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;());</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier"
>boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;());</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
@@ -44,8 +43,7 @@
 <p>
         Float specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <spa
n class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">)
;</span>
+<pre class="programlisting"><span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span c
lass="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span class="special">=</span> <span class="number">0.0f</
span><span class="special">);</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float<
/span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z3</span> <span class="special">=</
span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;());</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q1</span> <span class="special">=</span> <span class="special">::</span><span class="identifie
r">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;());</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
@@ -54,8 +52,7 @@
 <p>
         Double specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <sp
an class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">)
;</span>
+<pre class="programlisting"><span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span
class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span class="special">=</span> <span class="number">0.0</
span><span class="special">);</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">doub
le</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z3</span> <span class="specia
l">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;());</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q1</span> <span class="special">=</span> <span class="special">::</span><span class="identif
ier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;());</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
@@ -64,8 +61,7 @@
 <p>
         Long double specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span cla
ss="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special"
>,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyw
ord">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="number">0.0L
</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">);</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span>
<span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;
</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z3</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;());</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q1</span> <span class="s
pecial">=</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;());</span>
 <span class="keyword">explicit</span> <span class="identifier">octonion</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
@@ -89,17 +85,16 @@
         function in a "detail" subnamespace.
       </p>
 <a name="boost_octonions.octonions.octonion_member_functions.other_member_functions"></a><h4>
-<a name="id2661882"></a>
- <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_functions">Other
+<a name="id529803"></a>
+ <a href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_functions">Other
         member functions</a>
       </h4>
 <a name="boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts"></a><h5>
-<a name="id2661906"></a>
- <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts">Real
+<a name="id529829"></a>
+ <a href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts">Real
         and Unreal Parts</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">T</span> <span class="identifier">real</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">T</span> <span class="identifier">real</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">unreal</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
@@ -110,12 +105,11 @@
         These are returned by the first two functions.
       </p>
 <a name="boost_octonions.octonions.octonion_member_functions.individual_real_components"></a><h5>
-<a name="id2662011"></a>
- <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">Individual
+<a name="id529936"></a>
+ <a href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">Individual
         Real Components</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">T</span> <span class="identifier">R_component_1</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">T</span> <span class="identifier">R_component_1</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="identifier">T</span> <span class="identifier">R_component_2</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="identifier">T</span> <span class="identifier">R_component_3</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="identifier">T</span> <span class="identifier">R_component_4</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
@@ -129,12 +123,11 @@
         functions. Hence real and R_component_1 return the same value.
       </p>
 <a name="boost_octonions.octonions.octonion_member_functions.individual_complex_components"></a><h5>
-<a name="id2662254"></a>
- <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">Individual
+<a name="id530199"></a>
+ <a href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">Individual
         Complex Components</a>
       </h5>
-<pre class="programlisting">
-<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">C_component_1</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">C_component_1</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">C_component_2</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">C_component_3</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">C_component_4</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
@@ -150,12 +143,11 @@
         the basis <span class="emphasis"><em><code class="literal">(1, j, e', j')</code></em></span>.
       </p>
 <a name="boost_octonions.octonions.octonion_member_functions.individual_quaternion_components"></a><h5>
-<a name="id2662543"></a>
- <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_quaternion_components">Individual
+<a name="id530512"></a>
+ <a href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_quaternion_components">Individual
         Quaternion Components</a>
       </h5>
-<pre class="programlisting">
-<span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">H_component_1</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">H_component_1</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">H_component_2</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
@@ -166,17 +158,16 @@
         to build the octonion using the constructor.
       </p>
 <a name="boost_octonions.octonions.octonion_member_functions.octonion_member_operators"></a><h4>
-<a name="id2662723"></a>
- <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.octonion_member_operators">Octonion
+<a name="id530704"></a>
+ <a href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.octonion_member_operators">Octonion
         Member Operators</a>
       </h4>
 <a name="boost_octonions.octonions.octonion_member_functions.assignment_operators"></a><h5>
-<a name="id2662747"></a>
- <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">Assignment
+<a name="id530730"></a>
+ <a href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">Assignment
         Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">=</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">=</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">=</span> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
@@ -190,12 +181,11 @@
         base type's assignment operators must not throw.
       </p>
 <a name="boost_octonions.octonions.octonion_member_functions.other_member_operators"></a><h5>
-<a name="id2663231"></a>
- <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">Other
+<a name="id531259"></a>
+ <a href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">Other
         Member Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">+=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">+=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">+=</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">+=</span> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
@@ -208,8 +198,7 @@
         do not, so as to insure exception safety. For the unspecialized form, the
         base type's assignment operators must not throw.
       </p>
-<pre class="programlisting">
-<span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">-=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">-=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">-=</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">-=</span> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
@@ -222,8 +211,7 @@
         do not, so as to insure exception safety. For the unspecialized form, the
         base type's assignment operators must not throw.
       </p>
-<pre class="programlisting">
-<span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">*=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">*=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">*=</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">*=</span> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
@@ -240,8 +228,7 @@
         on the octonions (though there are of course cases where this does not matter,
         it usually does).
       </p>
-<pre class="programlisting">
-<span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">/=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">/=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">/=</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="keyword">operator</span> <span class="special">/=</span> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_member_typedefs.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_member_typedefs.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_member_typedefs.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Octonion Member Typedefs</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="octonion_specializations.html" title="Octonion Specializations">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.octonion_member_typedefs"></a><a class="link" href="octonion_member_typedefs.html" title="Octonion Member Typedefs">Octonion
+<a name="boost_octonions.octonions.octonion_member_typedefs"></a><a href="octonion_member_typedefs.html" title="Octonion Member Typedefs">Octonion
       Member Typedefs</a>
 </h3></div></div></div>
 <p>
@@ -33,26 +33,22 @@
 <p>
         Template version:
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="identifier">T</span> <span class="identifier">value_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">T</span> <span class="identifier">value_type</span><span class="special">;</span>
 </pre>
 <p>
         Float specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">float</span> <span class="identifier">value_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">float</span> <span class="identifier">value_type</span><span class="special">;</span>
 </pre>
 <p>
         Double specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">double</span> <span class="identifier">value_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">double</span> <span class="identifier">value_type</span><span class="special">;</span>
 </pre>
 <p>
         Long double specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="identifier">value_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="identifier">value_type</span><span class="special">;</span>
 </pre>
 <p>
         These provide easy acces to the type the template is built upon.

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_specializations.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_specializations.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_specializations.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Octonion Specializations</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="template_class_octonion.html" title="Template Class octonion">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,11 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.octonion_specializations"></a><a class="link" href="octonion_specializations.html" title="Octonion Specializations">Octonion
+<a name="boost_octonions.octonions.octonion_specializations"></a><a href="octonion_specializations.html" title="Octonion Specializations">Octonion
       Specializations</a>
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>
 
 <span class="keyword">template</span><span class="special">&lt;&gt;</span>
 <span class="keyword">class</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span>
@@ -36,196 +35,194 @@
 <span class="keyword">public</span><span class="special">:</span>
    <span class="keyword">typedef</span> <span class="keyword">float</span> <span class="identifier">value_type</span><span class="special">;</span>
 
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special
">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h
</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span
class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <
span class="special">&amp;</span> <span class="identifier">z3</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;());</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">
q1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;());</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
-
- <span class="keyword">float</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts">real</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts">unreal</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="keyword">float</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_5</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_6</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_7</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_8</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_quaternion_components">H_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_quaternion_components">H_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span
> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span
 class="special">=</span> <span class="number">0.0f</span><span class="special">);</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identi
fier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="s
pecial">&amp;</span> <span class="identifier">z3</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q1</span> <sp
an class="special">=</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+
+ <span class="keyword">float</span> real<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> unreal<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="keyword">float</span> R_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_5<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_6<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_7<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_8<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> C_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> C_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> C_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> C_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> H_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> H_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="special">};</span>
 </pre>
 <a name="boost_octonions.octonion_double"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;&gt;</span>
 <span class="keyword">class</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span>
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>
    <span class="keyword">typedef</span> <span class="keyword">double</span> <span class="identifier">value_type</span><span class="special">;</span>
 
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="specia
l">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_
h</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><spa
n class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</s
pan> <span class="special">&amp;</span> <span class="identifier">z3</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;());</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier
">q1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;());</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
-
- <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts">real</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts">unreal</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_5</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_6</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_7</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_8</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_quaternion_components">H_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_quaternion_components">H_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</spa
n> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <spa
n class="special">=</span> <span class="number">0.0</span><span class="special">);</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="iden
tifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span cl
ass="special">&amp;</span> <span class="identifier">z3</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q1</span> <
span class="special">=</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+
+ <span class="keyword">double</span> real<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> unreal<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="keyword">double</span> R_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_5<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_6<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_7<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_8<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> C_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> C_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> C_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> C_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> H_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> H_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="special">};</span>
 </pre>
 <a name="boost_octonions.octonion_long_double"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;&gt;</span>
 <span class="keyword">class</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span>
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>
    <span class="keyword">typedef</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="identifier">value_type</span><span class="special">;</span>
 
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0L</span><span class="sp
ecial">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requeste
d_g</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <s
pan class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><
span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z3</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;());</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</
span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;());</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
-
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts">real</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts">unreal</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_5</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_6</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_7</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_8</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_quaternion_components">H_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_quaternion_components">H_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</spa
n> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <s
pan class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">);</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="sp
ecial">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="s
pecial">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z3</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span c
lass="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+
+ <span class="keyword">long</span> <span class="keyword">double</span> real<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> unreal<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_5<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_6<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_7<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_8<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> C_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> C_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> C_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> C_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> H_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> H_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="special">};</span>
 
 <span class="special">}</span> <span class="special">}</span> <span class="comment">// namespaces

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_value_operations.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_value_operations.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonion_value_operations.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Octonion Value Operations</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="non_mem.html" title="Octonion Non-Member Operators">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.octonion_value_operations"></a><a class="link" href="octonion_value_operations.html" title="Octonion Value Operations">Octonion
+<a name="boost_octonions.octonions.octonion_value_operations"></a><a href="octonion_value_operations.html" title="Octonion Value Operations">Octonion
       Value Operations</a>
 </h3></div></div></div>
 <a name="boost_octonions.octonions.octonion_value_operations.real_and_unreal"></a><h5>
-<a name="id2673069"></a>
- <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.real_and_unreal">Real
+<a name="id542093"></a>
+ <a href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.real_and_unreal">Real
         and Unreal</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">real</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">real</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">unreal</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
@@ -42,51 +41,46 @@
         respectively.
       </p>
 <a name="boost_octonions.octonions.octonion_value_operations.conj"></a><h5>
-<a name="id2673325"></a>
- <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.conj">conj</a>
+<a name="id542373"></a>
+ conj
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">conj</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">conj</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         This returns the conjugate of the octonion.
       </p>
 <a name="boost_octonions.octonions.octonion_value_operations.sup"></a><h5>
-<a name="id2673451"></a>
- <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.sup">sup</a>
+<a name="id542512"></a>
+ sup
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">sup</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">sup</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         This return the sup norm (the greatest among <code class="computeroutput"><span class="identifier">abs</span><span class="special">(</span><span class="identifier">o</span><span class="special">.</span><span class="identifier">R_component_1</span><span class="special">())...</span><span class="identifier">abs</span><span class="special">(</span><span class="identifier">o</span><span class="special">.</span><span class="identifier">R_component_8</span><span class="special">()))</span></code> of the octonion.
       </p>
 <a name="boost_octonions.octonions.octonion_value_operations.l1"></a><h5>
-<a name="id2673624"></a>
- <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.l1">l1</a>
+<a name="id542700"></a>
+ l1
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">l1</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">l1</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         This return the l1 norm (<code class="computeroutput"><span class="identifier">abs</span><span class="special">(</span><span class="identifier">o</span><span class="special">.</span><span class="identifier">R_component_1</span><span class="special">())+...+</span><span class="identifier">abs</span><span class="special">(</span><span class="identifier">o</span><span class="special">.</span><span class="identifier">R_component_8</span><span class="special">())</span></code>) of the octonion.
       </p>
 <a name="boost_octonions.octonions.octonion_value_operations.abs"></a><h5>
-<a name="id2673795"></a>
- <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.abs">abs</a>
+<a name="id542888"></a>
+ abs
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">abs</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">abs</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         This return the magnitude (Euclidian norm) of the octonion.
       </p>
 <a name="boost_octonions.octonions.octonion_value_operations.norm"></a><h5>
-<a name="id2673908"></a>
- <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.norm">norm</a>
+<a name="id543009"></a>
+ norm
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">norm</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span><span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">norm</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span><span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         This return the (Cayley) norm of the octonion. The term "norm"

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonions_transcendentals.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonions_transcendentals.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/octonions_transcendentals.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Octonions Transcendentals</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="oct_create.html" title="Octonion Creation Functions">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.octonions_transcendentals"></a><a class="link" href="octonions_transcendentals.html" title="Octonions Transcendentals">Octonions
+<a name="boost_octonions.octonions.octonions_transcendentals"></a><a href="octonions_transcendentals.html" title="Octonions Transcendentals">Octonions
       Transcendentals</a>
 </h3></div></div></div>
 <p>
@@ -53,88 +53,80 @@
         headers.
       </p>
 <a name="boost_octonions.octonions.octonions_transcendentals.exp"></a><h5>
-<a name="id2675119"></a>
- <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.exp">exp</a>
+<a name="id544327"></a>
+ exp
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">exp</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         Computes the exponential of the octonion.
       </p>
 <a name="boost_octonions.octonions.octonions_transcendentals.cos"></a><h5>
-<a name="id2675245"></a>
- <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.cos">cos</a>
+<a name="id544464"></a>
+ cos
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">cos</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         Computes the cosine of the octonion
       </p>
 <a name="boost_octonions.octonions.octonions_transcendentals.sin"></a><h5>
-<a name="id2675371"></a>
- <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.sin">sin</a>
+<a name="id544601"></a>
+ sin
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">sin</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         Computes the sine of the octonion.
       </p>
 <a name="boost_octonions.octonions.octonions_transcendentals.tan"></a><h5>
-<a name="id2675497"></a>
- <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.tan">tan</a>
+<a name="id544739"></a>
+ tan
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">tan</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         Computes the tangent of the octonion.
       </p>
 <a name="boost_octonions.octonions.octonions_transcendentals.cosh"></a><h5>
-<a name="id2675623"></a>
- <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.cosh">cosh</a>
+<a name="id544875"></a>
+ cosh
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">cosh</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         Computes the hyperbolic cosine of the octonion.
       </p>
 <a name="boost_octonions.octonions.octonions_transcendentals.sinh"></a><h5>
-<a name="id2675749"></a>
- <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.sinh">sinh</a>
+<a name="id545014"></a>
+ sinh
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">sinh</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         Computes the hyperbolic sine of the octonion.
       </p>
 <a name="boost_octonions.octonions.octonions_transcendentals.tanh"></a><h5>
-<a name="id2675876"></a>
- <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.tanh">tanh</a>
+<a name="id545152"></a>
+ tanh
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">tanh</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 </pre>
 <p>
         Computes the hyperbolic tangent of the octonion.
       </p>
 <a name="boost_octonions.octonions.octonions_transcendentals.pow"></a><h5>
-<a name="id2676002"></a>
- <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.pow">pow</a>
+<a name="id545292"></a>
+ pow
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">pow</span><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">n</span><span class="special">);</span>
 </pre>
 <p>

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/overview.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/overview.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/overview.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Overview</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="../octonions.html" title="Octonions">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.overview"></a><a class="link" href="overview.html" title="Overview">Overview</a>
+<a name="boost_octonions.octonions.overview"></a>Overview
 </h3></div></div></div>
 <p>
         Octonions, like quaternions,

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/synopsis.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/synopsis.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/synopsis.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Synopsis</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="header_file.html" title="Header File">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,101 +24,100 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.synopsis"></a><a class="link" href="synopsis.html" title="Synopsis">Synopsis</a>
+<a name="boost_octonions.octonions.synopsis"></a>Synopsis
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>
 
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="template_class_octonion.html" title="Template Class octonion">octonion</a><span class="special">;</span>
-<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> <a class="link" href="octonion_specializations.html" title="Octonion Specializations">octonion&lt;float&gt;</a><span class="special">;</span>
-<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> <a class="link" href="octonion_specializations.html#boost_octonions.octonion_double">octonion&lt;double&gt;</a><span class="special">;</span>
-<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> <a class="link" href="octonion_specializations.html#boost_octonions.octonion_long_double">octonion&lt;long double&gt;</a><span class="special">;</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">class</span> octonion<span class="special">;</span>
+<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> octonion<float><span class="special">;</span>
+<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> octonion<double><span class="special">;</span>
+<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> octonion<long double><span class="special">;</span>
 
 <span class="comment">// operators
 </span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_addition_operators">operator +</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_addition_operators">operator +</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_addition_operators">operator +</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="
identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_addition_operators">operator +</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="specia
l">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_addition_operators">operator +</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class
="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_addition_operators">operator +</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="spe
cial">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_addition_operators">operator +</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span clas
s="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="spe
cial">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span cl
ass="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="
special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span c
lass="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="
special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span
 class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span clas
s="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_division_operators">operator /</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_division_operators">operator /</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_division_operators">operator /</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="
identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_division_operators">operator /</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="specia
l">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_division_operators">operator /</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class
="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_division_operators">operator /</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="spe
cial">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_division_operators">operator /</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.unary_plus_and_minus_operators">operator +</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.unary_plus_and_minus_operators">operator -</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_equality_operators">operator ==</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_equality_operators">operator ==</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_equality_operators">operator ==</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_equality_operators">operator ==</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_equality_operators">operator ==</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class
="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_equality_operators">operator ==</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="iden
tifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_equality_operators">operator ==</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_inequality_operators">operator !=</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_inequality_operators">operator !=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_inequality_operators">operator !=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_inequality_operators">operator !=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_inequality_operators">operator !=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span cla
ss="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_inequality_operators">operator !=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="id
entifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.binary_inequality_operators">operator !=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r
hs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</spa
n> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">co
nst</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</s
pan> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier
">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</
span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword"
>const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;
</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identif
ier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp
;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keywo
rd">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&
gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r
hs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</spa
n> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">co
nst</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</s
pan> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);
</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</
span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">
);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs
</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.stream_extractor">operator &gt;&gt;</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">is</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span cla
ss="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator >> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">is</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">
&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="non_mem.html#boost_octonions.octonions.non_mem.stream_inserter">operator &lt;&lt;</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">os</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span clas
s="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator << <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">os</span><span class="special">,</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">c
onst</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 
 <span class="comment">// values
 </span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.real_and_unreal">real</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.real_and_unreal">unreal</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> real<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> unreal<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.sup">sup</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.l1">l1</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span><span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.abs">abs</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.norm">norm</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span><span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonion_value_operations.html#boost_octonions.octonions.octonion_value_operations.conj">conj</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="oct_create.html" title="Octonion Creation Functions">spherical</a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span c
lass="special">&amp;</span> <span class="identifier">phi2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi4</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi5</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi6</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="oct_create.html" title="Octonion Creation Functions">multipolar</a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <spa
n class="special">&amp;</span> <span class="identifier">theta2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho4</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta4</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="oct_create.html" title="Octonion Creation Functions">cylindrical</a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">angle</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span cla
ss="special">&amp;</span> <span class="identifier">h2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h4</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h5</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h6</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> sup<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> l1<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span><span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> abs<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> norm<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span><span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> conj<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> spherical<span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special
">&amp;</span> <span class="identifier">phi2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi4</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi5</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi6</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> multipolar<span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="spec
ial">&amp;</span> <span class="identifier">theta2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho4</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta4</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> cylindrical<span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">angle</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">
&amp;</span> <span class="identifier">h2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h3</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h4</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h5</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h6</span><span class="special">);</span>
 
 <span class="comment">// transcendentals
 </span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.exp">exp</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.cos">cos</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.sin">sin</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.tan">tan</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.cosh">cosh</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.sinh">sinh</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.tanh">tanh</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> exp<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> cos<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> sin<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> tan<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> cosh<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> sinh<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> tanh<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">);</span>
 
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonions_transcendentals.html#boost_octonions.octonions.octonions_transcendentals.pow">pow</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">n</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> pow<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">o</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">n</span><span class="special">);</span>
 
 <span class="special">}</span> <span class="special">}</span> <span class="comment">// namespaces
 </span></pre>

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/template_class_octonion.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/template_class_octonion.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/template_class_octonion.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Template Class octonion</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="synopsis.html" title="Synopsis">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,11 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.template_class_octonion"></a><a class="link" href="template_class_octonion.html" title="Template Class octonion">Template
+<a name="boost_octonions.octonions.template_class_octonion"></a><a href="template_class_octonion.html" title="Template Class octonion">Template
       Class octonion</a>
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span> <span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span> <span class="special">{</span>
 
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">octonion</span>
@@ -36,62 +35,62 @@
 <span class="keyword">public</span><span class="special">:</span>
    <span class="keyword">typedef</span> <span class="identifier">T</span> <span class="identifier">value_type</span><span class="special">;</span>
 
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="sp
ecial">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier
">requested_h</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">());</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span cl
ass="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span c
lass="special">&amp;</span> <span class="identifier">z3</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;());</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q1
</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;<
/span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_e</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_f</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_g</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_h
</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">());</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifi
er">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z2</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(),</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special
">&amp;</span> <span class="identifier">z3</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q1</span> <span
 class="special">=</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;());</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="keyword">explicit</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.constructors">octonion</a><span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+ <span class="keyword">explicit</span> octonion<span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
 
- <span class="identifier">T</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts">real</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.real_and_unreal_parts">unreal</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> real<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> unreal<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 
- <span class="identifier">T</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_5</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_6</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_7</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_real_components">R_component_8</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_5<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_6<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_7<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_8<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_complex_components">C_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> C_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> C_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> C_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> C_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 
- <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_quaternion_components">H_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.individual_quaternion_components">H_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> H_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> H_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.assignment_operators">operator =</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator = <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
 
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator +=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator += <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator -=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator -= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator *=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator *= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="octonion_member_functions.html#boost_octonions.octonions.octonion_member_functions.other_member_operators">operator /=</a> <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> operator /= <span class="special">(</span><span class="identifier">octonion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="special">};</span>
 
 <span class="special">}</span> <span class="special">}</span> <span class="comment">// namespaces

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/test_program.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/test_program.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/test_program.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Test Program</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="octonions_transcendentals.html" title="Octonions Transcendentals">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.test_program"></a><a class="link" href="test_program.html" title="Test Program">Test Program</a>
+<a name="boost_octonions.octonions.test_program"></a>Test Program
 </h3></div></div></div>
 <p>
         The octonion_test.cpp

Modified: branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/to_do.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/to_do.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/boost_octonions/octonions/to_do.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>To Do</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Octonions">
 <link rel="up" href="../octonions.html" title="Octonions">
 <link rel="prev" href="history.html" title="History">
@@ -13,8 +13,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -23,7 +23,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_octonions.octonions.to_do"></a><a class="link" href="to_do.html" title="To Do">To Do</a>
+<a name="boost_octonions.octonions.to_do"></a>To Do
 </h3></div></div></div>
 <div class="itemizedlist"><ul type="disc">
 <li>

Modified: branches/CMake/release/libs/math/doc/octonion/html/index.html
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/html/index.html (original)
+++ branches/CMake/release/libs/math/doc/octonion/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Boost.Octonions</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="index.html" title="Boost.Octonions">
 <link rel="next" href="boost_octonions/octonions.html" title="Octonions">
 </head>
@@ -12,8 +12,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
 </h3></div></div></div>
 <div><p class="copyright">Copyright © 2001 -2003 Hubert Holin</p></div>
 <div><div class="legalnotice">
-<a name="id2625926"></a><p>
+<a name="id445737"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -68,7 +68,7 @@
 </dl>
 </div>
 <p>
- This manual is also available in <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/octonion.pdf" target="_top">printer
+ This manual is also available in <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/octonion.pdf" target="_top">printer
     friendly PDF format</a>.
   </p>
 </div>

Modified: branches/CMake/release/libs/math/doc/octonion/math-octonion.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/octonion/math-octonion.qbk (original)
+++ branches/CMake/release/libs/math/doc/octonion/math-octonion.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -35,7 +35,7 @@
 [def __hypot [link boost_quaternions.math_special_functions.hypot hypot]]
 
 This manual is also available in
-[@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/octonion.pdf
+[@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/octonion.pdf
 printer friendly PDF format].
 
 [section Octonions]

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Quaternions</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Quaternions">
 <link rel="up" href="../index.html" title="Boost.Quaternions">
 <link rel="prev" href="../index.html" title="Boost.Quaternions">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_quaternions.quaternions"></a><a class="link" href="quaternions.html" title="Quaternions">Quaternions</a>
+<a name="boost_quaternions.quaternions"></a>Quaternions
 </h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section">Overview</span></dt>

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/acknowledgements.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/acknowledgements.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/acknowledgements.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Acknowledgements</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="exp.html" title="The Quaternionic Exponential">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.acknowledgements"></a><a class="link" href="acknowledgements.html" title="Acknowledgements">Acknowledgements</a>
+<a name="boost_quaternions.quaternions.acknowledgements"></a>Acknowledgements
 </h3></div></div></div>
 <p>
         The mathematical text has been typeset with <a href="http://www.nisus-soft.com/" target="_top">Nisus

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/create.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/create.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/create.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Quaternion Creation Functions</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="value_op.html" title="Quaternion Value Operations">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,11 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.create"></a><a class="link" href="create.html" title="Quaternion Creation Functions"> Quaternion Creation
+<a name="boost_quaternions.quaternions.create"></a><a href="create.html" title="Quaternion Creation Functions"> Quaternion Creation
       Functions</a>
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">spherical</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="iden
tifier">phi2</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">spherical</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&a
mp;</span> <span class="identifier">phi2</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">semipolar</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">alpha</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="id
entifier">theta2</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">multipolar</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="i
dentifier">theta2</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">cylindrospherical</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">t</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">radius</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">longitude</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span
 class="identifier">latitude</span><span class="special">);</span>

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/exp.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/exp.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/exp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>The Quaternionic Exponential</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="test_program.html" title="Test Program">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.exp"></a><a class="link" href="exp.html" title="The Quaternionic Exponential"> The Quaternionic
+<a name="boost_quaternions.quaternions.exp"></a><a href="exp.html" title="The Quaternionic Exponential"> The Quaternionic
       Exponential</a>
 </h3></div></div></div>
 <p>

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/header_file.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/header_file.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/header_file.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Header File</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="overview.html" title="Overview">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.header_file"></a><a class="link" href="header_file.html" title="Header File">Header File</a>
+<a name="boost_quaternions.quaternions.header_file"></a>Header File
 </h3></div></div></div>
 <p>
         The interface and implementation are both supplied by the header file quaternion.hpp.

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/history.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/history.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/history.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>History</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="acknowledgements.html" title="Acknowledgements">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.history"></a><a class="link" href="history.html" title="History">History</a>
+<a name="boost_quaternions.quaternions.history"></a>History
 </h3></div></div></div>
 <div class="itemizedlist"><ul type="disc">
 <li>

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/mem_fun.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/mem_fun.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/mem_fun.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Quaternion Member Functions</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="mem_typedef.html" title="Quaternion Member Typedefs">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,18 +24,17 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.mem_fun"></a><a class="link" href="mem_fun.html" title="Quaternion Member Functions"> Quaternion Member
+<a name="boost_quaternions.quaternions.mem_fun"></a><a href="mem_fun.html" title="Quaternion Member Functions"> Quaternion Member
       Functions</a>
 </h3></div></div></div>
 <a name="boost_quaternions.quaternions.mem_fun.constructors"></a><h4>
-<a name="id2650014"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">Constructors</a>
+<a name="id516686"></a>
+ Constructors
       </h4>
 <p>
         Template version:
       </p>
-<pre class="programlisting">
-<span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span
> <span class="identifier">T</span><span class="special">());</span>
+<pre class="programlisting"><span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <
span class="special">=</span> <span class="identifier">T</span><span class="special">());</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</s
pan><span class="special">&gt;());</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
@@ -43,8 +42,7 @@
 <p>
         Float specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <sp
an class="number">0.0f</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span
class="special">=</span> <span class="number">0.0f</span><span class="special">);</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&
gt;());</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
@@ -52,8 +50,7 @@
 <p>
         Double specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <s
pan class="number">0.0</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span
 class="special">=</span> <span class="number">0.0</span><span class="special">);</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">dou
ble</span><span class="special">&gt;());</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
@@ -61,8 +58,7 @@
 <p>
         Long double specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span cl
ass="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="key
word">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">);</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span
><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;());</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
 <span class="keyword">explicit</span> <span class="identifier">quaternion</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
@@ -84,17 +80,16 @@
         function in a "detail" subnamespace.
       </p>
 <a name="boost_quaternions.quaternions.mem_fun.other_member_functions"></a><h4>
-<a name="id2651854"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.other_member_functions">Other
+<a name="id518710"></a>
+ <a href="mem_fun.html#boost_quaternions.quaternions.mem_fun.other_member_functions">Other
         member functions</a>
       </h4>
 <a name="boost_quaternions.quaternions.mem_fun.real_and_unreal_parts"></a><h5>
-<a name="id2651876"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.real_and_unreal_parts">Real
+<a name="id518734"></a>
+ <a href="mem_fun.html#boost_quaternions.quaternions.mem_fun.real_and_unreal_parts">Real
         and Unreal Parts</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">T</span> <span class="identifier">real</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">T</span> <span class="identifier">real</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">unreal</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
@@ -105,12 +100,11 @@
         case). These are returned by the first two functions.
       </p>
 <a name="boost_quaternions.quaternions.mem_fun.individual_real_components"></a><h5>
-<a name="id2651980"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">Individual
+<a name="id518840"></a>
+ <a href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">Individual
         Real Components</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">T</span> <span class="identifier">R_component_1</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">T</span> <span class="identifier">R_component_1</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="identifier">T</span> <span class="identifier">R_component_2</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="identifier">T</span> <span class="identifier">R_component_3</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="identifier">T</span> <span class="identifier">R_component_4</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
@@ -120,12 +114,11 @@
         functions. Hence real and R_component_1 return the same value.
       </p>
 <a name="boost_quaternions.quaternions.mem_fun.individual_complex__components"></a><h5>
-<a name="id2652119"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_complex__components">Individual
+<a name="id518989"></a>
+ <a href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_complex__components">Individual
         Complex Components</a>
       </h5>
-<pre class="programlisting">
-<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">C_component_1</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">C_component_1</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">C_component_2</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
@@ -136,17 +129,16 @@
         is the same as <code class="computeroutput"><span class="identifier">q</span><span class="special">.</span><span class="identifier">real</span><span class="special">()</span></code>.
       </p>
 <a name="boost_quaternions.quaternions.mem_fun.quaternion_member_operators"></a><h4>
-<a name="id2652325"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.quaternion_member_operators">Quaternion
+<a name="id519212"></a>
+ <a href="mem_fun.html#boost_quaternions.quaternions.mem_fun.quaternion_member_operators">Quaternion
         Member Operators</a>
       </h4>
 <a name="boost_quaternions.quaternions.mem_fun.assignment_operators"></a><h5>
-<a name="id2652347"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">Assignment
+<a name="id519237"></a>
+ <a href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">Assignment
         Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">=</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">=</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">=</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
@@ -159,12 +151,11 @@
         base type's assignment operators must not throw.
       </p>
 <a name="boost_quaternions.quaternions.mem_fun.addition_operators"></a><h5>
-<a name="id2652705"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">Addition
+<a name="id519625"></a>
+ <a href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">Addition
         Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">+=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">+=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">+=</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">+=</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
@@ -177,12 +168,11 @@
         base type's assignment operators must not throw.
       </p>
 <a name="boost_quaternions.quaternions.mem_fun.subtraction_operators"></a><h5>
-<a name="id2653028"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">Subtraction
+<a name="id519981"></a>
+ <a href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">Subtraction
         Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">-=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">-=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">-=</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">-=</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
@@ -195,12 +185,11 @@
         base type's assignment operators must not throw.
       </p>
 <a name="boost_quaternions.quaternions.mem_fun.multiplication_operators"></a><h5>
-<a name="id2653352"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">Multiplication
+<a name="id520336"></a>
+ <a href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">Multiplication
         Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">*=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">*=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">*=</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">*=</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
@@ -214,12 +203,11 @@
         assignment operators must not throw.
       </p>
 <a name="boost_quaternions.quaternions.mem_fun.division_operators"></a><h5>
-<a name="id2653682"></a>
- <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">Division
+<a name="id520696"></a>
+ <a href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">Division
         Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">/=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">/=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">/=</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">/=</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/mem_typedef.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/mem_typedef.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/mem_typedef.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Quaternion Member Typedefs</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="spec.html" title="Quaternion Specializations">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.mem_typedef"></a><a class="link" href="mem_typedef.html" title="Quaternion Member Typedefs"> Quaternion
+<a name="boost_quaternions.quaternions.mem_typedef"></a><a href="mem_typedef.html" title="Quaternion Member Typedefs"> Quaternion
       Member Typedefs</a>
 </h3></div></div></div>
 <p>
@@ -33,26 +33,22 @@
 <p>
         Template version:
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="identifier">T</span> <span class="identifier">value_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">T</span> <span class="identifier">value_type</span><span class="special">;</span>
 </pre>
 <p>
         Float specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">float</span> <span class="identifier">value_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">float</span> <span class="identifier">value_type</span><span class="special">;</span>
 </pre>
 <p>
         Double specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">double</span> <span class="identifier">value_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">double</span> <span class="identifier">value_type</span><span class="special">;</span>
 </pre>
 <p>
         Long double specialization version:
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="identifier">value_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="identifier">value_type</span><span class="special">;</span>
 </pre>
 <p>
         These provide easy acces to the type the template is built upon.

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/non_mem.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/non_mem.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/non_mem.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Quaternion Non-Member Operators</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="mem_fun.html" title="Quaternion Member Functions">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,38 +24,35 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.non_mem"></a><a class="link" href="non_mem.html" title="Quaternion Non-Member Operators"> Quaternion Non-Member
+<a name="boost_quaternions.quaternions.non_mem"></a><a href="non_mem.html" title="Quaternion Non-Member Operators"> Quaternion Non-Member
       Operators</a>
 </h3></div></div></div>
 <a name="boost_quaternions.quaternions.non_mem.unary_plus"></a><h5>
-<a name="id2654043"></a>
- <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.unary_plus">Unary Plus</a>
+<a name="id521094"></a>
+ Unary Plus
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         This unary operator simply returns q.
       </p>
 <a name="boost_quaternions.quaternions.non_mem.unary_minus"></a><h5>
-<a name="id2654174"></a>
- <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.unary_minus">Unary Minus</a>
+<a name="id521239"></a>
+ Unary Minus
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         This unary operator returns the opposite of q.
       </p>
 <a name="boost_quaternions.quaternions.non_mem.binary_addition_operators"></a><h5>
-<a name="id2654309"></a>
- <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_addition_operators">Binary
+<a name="id521385"></a>
+ <a href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_addition_operators">Binary
         Addition Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="spe
cial">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifie
r">rhs</span><span class="special">);</span>
@@ -66,12 +63,11 @@
         <span class="identifier">rhs</span></code>.
       </p>
 <a name="boost_quaternions.quaternions.non_mem.binary_subtraction_operators"></a><h5>
-<a name="id2655089"></a>
- <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_subtraction_operators">Binary
+<a name="id522245"></a>
+ <a href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_subtraction_operators">Binary
         Subtraction Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="spe
cial">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">-</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifie
r">rhs</span><span class="special">);</span>
@@ -82,12 +78,11 @@
         <span class="identifier">rhs</span></code>.
       </p>
 <a name="boost_quaternions.quaternions.non_mem.binary_multiplication_operators"></a><h5>
-<a name="id2655870"></a>
- <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_multiplication_operators">Binary
+<a name="id523106"></a>
+ <a href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_multiplication_operators">Binary
         Multiplication Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">*</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="spe
cial">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifie
r">rhs</span><span class="special">);</span>
@@ -98,12 +93,11 @@
         <span class="identifier">rhs</span></code>.
       </p>
 <a name="boost_quaternions.quaternions.non_mem.binary_division_operators"></a><h5>
-<a name="id2656650"></a>
- <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_division_operators">Binary
+<a name="id523967"></a>
+ <a href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_division_operators">Binary
         Division Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">/</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">/</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">/</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">/</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="spe
cial">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">operator</span> <span class="special">/</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifie
r">rhs</span><span class="special">);</span>
@@ -115,12 +109,11 @@
         to divide by zero...
       </p>
 <a name="boost_quaternions.quaternions.non_mem.equality_operators"></a><h5>
-<a name="id2657431"></a>
- <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.equality_operators">Equality
+<a name="id524827"></a>
+ <a href="non_mem.html#boost_quaternions.quaternions.non_mem.equality_operators">Equality
         Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
@@ -132,12 +125,11 @@
         with any floating-type entity, this is essentially meaningless.
       </p>
 <a name="boost_quaternions.quaternions.non_mem.inequality_operators"></a><h5>
-<a name="id2658165"></a>
- <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.inequality_operators">Inequality
+<a name="id525637"></a>
+ <a href="non_mem.html#boost_quaternions.quaternions.non_mem.inequality_operators">Inequality
         Operators</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
@@ -149,12 +141,11 @@
         false. As with any floating-type entity, this is essentially meaningless.
       </p>
 <a name="boost_quaternions.quaternions.non_mem.stream_extractor"></a><h5>
-<a name="id2658900"></a>
- <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.stream_extractor">Stream
+<a name="id526447"></a>
+ <a href="non_mem.html#boost_quaternions.quaternions.non_mem.stream_extractor">Stream
         Extractor</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">&gt;&gt;</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">is</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">q</span><s
pan class="special">);</span>
 </pre>
 <p>
@@ -182,20 +173,18 @@
         complex numbers which happen to have imaginary parts equal to zero).
       </p>
 <a name="boost_quaternions.quaternions.non_mem.stream_inserter"></a><h5>
-<a name="id2659247"></a>
- <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.stream_inserter">Stream
+<a name="id526824"></a>
+ <a href="non_mem.html#boost_quaternions.quaternions.non_mem.stream_inserter">Stream
         Inserter</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">&lt;&lt;</span> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">os</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span>
<span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         Inserts the quaternion q onto the stream <code class="computeroutput"><span class="identifier">os</span></code>
         as if it were implemented as follows:
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <span class="special">&lt;&lt;</span> <span class="special">(</span>
                <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">os</span><span class="special">,</span>
                <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">)</span>

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/overview.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/overview.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/overview.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Overview</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="../quaternions.html" title="Quaternions">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.overview"></a><a class="link" href="overview.html" title="Overview">Overview</a>
+<a name="boost_quaternions.quaternions.overview"></a>Overview
 </h3></div></div></div>
 <p>
         Quaternions are a relative of complex numbers.

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/quat.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/quat.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/quat.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Template Class quaternion</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="synopsis.html" title="Synopsis">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,57 +24,56 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.quat"></a><a class="link" href="quat.html" title="Template Class quaternion"> Template Class quaternion</a>
+<a name="boost_quaternions.quaternions.quat"></a> Template Class quaternion
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>
 
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">quaternion</span>
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>
 
- <span class="keyword">typedef</span> <span class="identifier">T</span> <a class="link" href="mem_typedef.html" title="Quaternion Member Typedefs">value_type</a><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">T</span> value_type<span class="special">;</span>
 
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class
="identifier">requested_d</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">());</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span>
<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">(),</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier"
>requested_d</span> <span class="special">=</span> <span class="identifier">T</span><span class="special">());</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="
special">&lt;</span><span class="identifier">T</span><span class="special">&gt;());</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
 
- <span class="identifier">T</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.real_and_unreal_parts">real</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.real_and_unreal_parts">unreal</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">T</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_complex__components">C_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_complex__components">C_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> real<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> unreal<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">T</span> R_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> C_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> C_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator = <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator += <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator += <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator += <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="special">};</span>
 
 <span class="special">}</span> <span class="comment">// namespace math

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/spec.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/spec.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/spec.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Quaternion Specializations</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="quat.html" title="Template Class quaternion">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,156 +24,153 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.spec"></a><a class="link" href="spec.html" title="Quaternion Specializations"> Quaternion Specializations</a>
+<a name="boost_quaternions.quaternions.spec"></a> Quaternion Specializations
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>
 
 <span class="keyword">template</span><span class="special">&lt;&gt;</span>
 <span class="keyword">class</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span>
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>
- <span class="keyword">typedef</span> <span class="keyword">float</span> <a class="link" href="mem_typedef.html" title="Quaternion Member Typedefs">value_type</a><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="keyword">float</span> value_type<span class="special">;</span>
         
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="ide
ntifier">requested_d</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</spa
n><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;());</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
-
- <span class="keyword">float</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.real_and_unreal_parts">real</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.real_and_unreal_parts">unreal</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">float</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_complex__components">C_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_complex__components">C_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">,</span> <span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requ
ested_d</span> <span class="special">=</span> <span class="number">0.0f</span><span class="special">);</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class
="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+
+ <span class="keyword">float</span> real<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> unreal<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">float</span> R_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> C_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> C_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator = <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator += <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator += <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator += <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(</span><span class="keyword">float</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="special">};</span>
 </pre>
 <a name="boost_quaternions.quaternion_double"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;&gt;</span>
 <span class="keyword">class</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span>
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>
- <span class="keyword">typedef</span> <span class="keyword">double</span> <a class="link" href="mem_typedef.html" title="Quaternion Member Typedefs">value_type</a><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="keyword">double</span> value_type<span class="special">;</span>
         
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="id
entifier">requested_d</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</s
pan><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;());</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
-
- <span class="keyword">double</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.real_and_unreal_parts">real</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.real_and_unreal_parts">unreal</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">double</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_complex__components">C_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_complex__components">C_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">,</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">req
uested_d</span> <span class="special">=</span> <span class="number">0.0</span><span class="special">);</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span cla
ss="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+
+ <span class="keyword">double</span> real<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> unreal<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">double</span> R_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> C_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> C_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator = <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator += <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator += <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator += <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(</span><span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="special">};</span>
 </pre>
 <a name="boost_quaternions.quaternion_long_double"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;&gt;</span>
 <span class="keyword">class</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span>
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>
- <span class="keyword">typedef</span> <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="mem_typedef.html" title="Quaternion Member Typedefs">value_type</a><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="keyword">long</span> <span class="keyword">double</span> value_type<span class="special">;</span>
         
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="key
word">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</spa
n><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;());</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
- <span class="keyword">explicit</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.constructors">quaternion</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
-
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.real_and_unreal_parts">real</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.real_and_unreal_parts">unreal</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_3</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">long</span> <span class="keyword">double</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_real_components">R_component_4</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_complex__components">C_component_1</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.individual_complex__components">C_component_2</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_a</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_b</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_c</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">,</span> <span class="keyword">long</s
pan> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">requested_d</span> <span class="special">=</span> <span class="number">0.0L</span><span class="special">);</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z0</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">z1</span> <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class
="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;());</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+ <span class="keyword">explicit</span> quaternion<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_recopier</span><span class="special">);</span>
+
+ <span class="keyword">long</span> <span class="keyword">double</span> real<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> unreal<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_3<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">long</span> <span class="keyword">double</span> R_component_4<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> C_component_1<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> C_component_2<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.assignment_operators">operator = </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator = <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator = <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a_affecter</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator += <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator += <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.addition_operators">operator += </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator += <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.subtraction_operators">operator -= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator -= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.multiplication_operators">operator *= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator *= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(</span><span class="keyword">long</span> <span class="keyword">double</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
    <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">X</span><span class="special">&gt;</span>
- <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> <a class="link" href="mem_fun.html#boost_quaternions.quaternions.mem_fun.division_operators">operator /= </a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+ <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;&amp;</span> operator /= <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="special">};</span>
 
 <span class="special">}</span> <span class="comment">// namespace math

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/synopsis.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/synopsis.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/synopsis.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Synopsis</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="header_file.html" title="Header File">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,87 +24,86 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.synopsis"></a><a class="link" href="synopsis.html" title="Synopsis">Synopsis</a>
+<a name="boost_quaternions.quaternions.synopsis"></a>Synopsis
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>
 
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="quat.html" title="Template Class quaternion">quaternion</a><span class="special">;</span>
-<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> <a class="link" href="spec.html" title="Quaternion Specializations">quaternion&lt;float&gt;</a><span class="special">;</span>
-<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> <a class="link" href="spec.html#boost_quaternions.quaternion_double">quaternion&lt;double&gt;</a><span class="special">;</span>
-<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> <a class="link" href="spec.html#boost_quaternions.quaternion_long_double">quaternion&lt;long double&gt;</a><span class="special">;</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">class</span> quaternion<span class="special">;</span>
+<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> quaternion<float><span class="special">;</span>
+<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> quaternion<double><span class="special">;</span>
+<span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">class</span> quaternion<long double><span class="special">;</span>
 
 <span class="comment">// operators
-</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_addition_operators">operator +</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_addition_operators">operator +</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_addition_operators">operator +</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span
 class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_addition_operators">operator +</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class
="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_addition_operators">operator +</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <s
pan class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span cl
ass="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_subtraction_operators">operator -</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span>
 <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span
 class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_multiplication_operators">operator *</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</spa
n>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_division_operators">operator /</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_division_operators">operator /</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_division_operators">operator /</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span
 class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_division_operators">operator /</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class
="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.binary_division_operators">operator /</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.unary_plus">operator +</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.unary_minus">operator -</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.equality_operators">operator ==</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.equality_operators">operator ==</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.equality_operators">operator ==</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.equality_operators">operator ==</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.equality_operators">operator ==</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.inequality_operators">operator !=</a> <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.inequality_operators">operator !=</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.inequality_operators">operator !=</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.inequality_operators">operator !=</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.inequality_operators">operator !=</a> <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="ident
ifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&a
mp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="id
entifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special"
>&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class=
"identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="speci
al">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator * <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="ident
ifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&a
mp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator / <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator + <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> operator - <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator == <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">bool</span> operator != <span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;&amp;</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.stream_extractor">operator &gt;&gt;</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">is</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span
> <span class="identifier">q</span><span class="special">);</span>
+<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;&amp;</span> operator >> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_istream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">is</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class
="identifier">q</span><span class="special">);</span>
 
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> <a class="link" href="non_mem.html#boost_quaternions.quaternions.non_mem.stream_inserter">operator &lt;&lt;</a> <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">os</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</sp
an> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="keyword">operator</span> operator << <span class="special">(::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span><span class="identifier">traits</span><span class="special">&gt;</span> <span class="special">&amp;</span> <span class="identifier">os</span><span class="special">,</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span cla
ss="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 
 <span class="comment">// values
-</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.real_and_unreal">real</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.real_and_unreal">unreal</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> real<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> unreal<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.sup">sup</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.l1">l1</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.abs">abs</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.norm">norm</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span><span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.conj">conj</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="create.html#boost_quaternions.quaternions.creation_spherical">spherical</a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</s
pan> <span class="special">&amp;</span> <span class="identifier">phi2</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="create.html#boost_quaternions.quaternions.creation_semipolar">semipolar</a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">alpha</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const<
/span> <span class="special">&amp;</span> <span class="identifier">theta2</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="create.html#boost_quaternions.quaternions.creation_multipolar">multipolar</a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">cons
t</span> <span class="special">&amp;</span> <span class="identifier">theta2</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="create.html#boost_quaternions.quaternions.creation_cylindrospherical">cylindrospherical</a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">t</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">radius</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">longitude</span><span class="special">,</span> <span class="identifier">T</span> <span clas
s="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">latitude</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="create.html#boost_quaternions.quaternions.creation_cylindrical">cylindrical</a><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">angle</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</s
pan> <span class="special">&amp;</span> <span class="identifier">h2</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> sup<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> l1<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> abs<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> norm<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span><span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> conj<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> spherical<span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">phi1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span cl
ass="special">&amp;</span> <span class="identifier">phi2</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> semipolar<span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">alpha</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span
class="special">&amp;</span> <span class="identifier">theta2</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> multipolar<span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">theta1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rho2</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <spa
n class="special">&amp;</span> <span class="identifier">theta2</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> cylindrospherical<span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">t</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">radius</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">longitude</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">c
onst</span> <span class="special">&amp;</span> <span class="identifier">latitude</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> cylindrical<span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">r</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">angle</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">h1</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span cl
ass="special">&amp;</span> <span class="identifier">h2</span><span class="special">);</span>
 
 <span class="comment">// transcendentals
-</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="trans.html#boost_quaternions.quaternions.trans.exp">exp</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="trans.html#boost_quaternions.quaternions.trans.cos">cos</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="trans.html#boost_quaternions.quaternions.trans.sin">sin</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="trans.html#boost_quaternions.quaternions.trans.tan">tan</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="trans.html#boost_quaternions.quaternions.trans.cosh">cosh</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="trans.html#boost_quaternions.quaternions.trans.sinh">sinh</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="trans.html#boost_quaternions.quaternions.trans.tanh">tanh</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <a class="link" href="trans.html#boost_quaternions.quaternions.trans.pow">pow</a><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">n</span><span class="special">);</span>
+</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> exp<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> cos<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> sin<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> tan<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> cosh<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> sinh<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> tanh<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> pow<span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">n</span><span class="special">);</span>
 
 <span class="special">}</span> <span class="comment">// namespace math
 </span><span class="special">}</span> <span class="comment">// namespace boost

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/test_program.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/test_program.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/test_program.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Test Program</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="trans.html" title="Quaternion Transcendentals">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.test_program"></a><a class="link" href="test_program.html" title="Test Program">Test Program</a>
+<a name="boost_quaternions.quaternions.test_program"></a>Test Program
 </h3></div></div></div>
 <p>
         The quaternion_test.cpp

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/to_do.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/to_do.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/to_do.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>To Do</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="history.html" title="History">
@@ -13,8 +13,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -23,7 +23,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.to_do"></a><a class="link" href="to_do.html" title="To Do">To Do</a>
+<a name="boost_quaternions.quaternions.to_do"></a>To Do
 </h3></div></div></div>
 <div class="itemizedlist"><ul type="disc">
 <li>

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/trans.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/trans.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/trans.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Quaternion Transcendentals</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="create.html" title="Quaternion Creation Functions">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.trans"></a><a class="link" href="trans.html" title="Quaternion Transcendentals"> Quaternion Transcendentals</a>
+<a name="boost_quaternions.quaternions.trans"></a> Quaternion Transcendentals
 </h3></div></div></div>
 <p>
         There is no <code class="computeroutput"><span class="identifier">log</span></code> or <code class="computeroutput"><span class="identifier">sqrt</span></code> provided for quaternions in this implementation,
@@ -56,81 +56,73 @@
         headers.
       </p>
 <a name="boost_quaternions.quaternions.trans.exp"></a><h5>
-<a name="id2585111"></a>
- <a class="link" href="trans.html#boost_quaternions.quaternions.trans.exp">exp</a>
+<a name="id530581"></a>
+ exp
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">exp</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">exp</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         Computes the exponential of the quaternion.
       </p>
 <a name="boost_quaternions.quaternions.trans.cos"></a><h5>
-<a name="id2662715"></a>
- <a class="link" href="trans.html#boost_quaternions.quaternions.trans.cos">cos</a>
+<a name="id445584"></a>
+ cos
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">cos</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">cos</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         Computes the cosine of the quaternion
       </p>
 <a name="boost_quaternions.quaternions.trans.sin"></a><h5>
-<a name="id2662839"></a>
- <a class="link" href="trans.html#boost_quaternions.quaternions.trans.sin">sin</a>
+<a name="id530717"></a>
+ sin
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">sin</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">sin</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         Computes the sine of the quaternion.
       </p>
 <a name="boost_quaternions.quaternions.trans.tan"></a><h5>
-<a name="id2662964"></a>
- <a class="link" href="trans.html#boost_quaternions.quaternions.trans.tan">tan</a>
+<a name="id530853"></a>
+ tan
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">tan</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">tan</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         Computes the tangent of the quaternion.
       </p>
 <a name="boost_quaternions.quaternions.trans.cosh"></a><h5>
-<a name="id2663090"></a>
- <a class="link" href="trans.html#boost_quaternions.quaternions.trans.cosh">cosh</a>
+<a name="id530991"></a>
+ cosh
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">cosh</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">cosh</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         Computes the hyperbolic cosine of the quaternion.
       </p>
 <a name="boost_quaternions.quaternions.trans.sinh"></a><h5>
-<a name="id2663215"></a>
- <a class="link" href="trans.html#boost_quaternions.quaternions.trans.sinh">sinh</a>
+<a name="id531129"></a>
+ sinh
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">sinh</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">sinh</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         Computes the hyperbolic sine of the quaternion.
       </p>
 <a name="boost_quaternions.quaternions.trans.tanh"></a><h5>
-<a name="id2663340"></a>
- <a class="link" href="trans.html#boost_quaternions.quaternions.trans.tanh">tanh</a>
+<a name="id531266"></a>
+ tanh
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">tanh</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">tanh</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         Computes the hyperbolic tangent of the quaternion.
       </p>
 <a name="boost_quaternions.quaternions.trans.pow"></a><h5>
-<a name="id2663466"></a>
- <a class="link" href="trans.html#boost_quaternions.quaternions.trans.pow">pow</a>
+<a name="id531403"></a>
+ pow
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">pow</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">n</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">pow</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">n</span><span class="special">);</span>
 </pre>
 <p>
         Computes the n-th power of the quaternion q.

Modified: branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/value_op.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/value_op.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/boost_quaternions/quaternions/value_op.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Quaternion Value Operations</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Quaternions">
 <link rel="up" href="../quaternions.html" title="Quaternions">
 <link rel="prev" href="non_mem.html" title="Quaternion Non-Member Operators">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_quaternions.quaternions.value_op"></a><a class="link" href="value_op.html" title="Quaternion Value Operations"> Quaternion Value
+<a name="boost_quaternions.quaternions.value_op"></a><a href="value_op.html" title="Quaternion Value Operations"> Quaternion Value
       Operations</a>
 </h3></div></div></div>
 <a name="boost_quaternions.quaternions.value_op.real_and_unreal"></a><h5>
-<a name="id2660115"></a>
- <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.real_and_unreal">real
+<a name="id527777"></a>
+ <a href="value_op.html#boost_quaternions.quaternions.value_op.real_and_unreal">real
         and unreal</a>
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">real</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">real</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">unreal</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
@@ -42,18 +41,17 @@
         respectively.
       </p>
 <a name="boost_quaternions.quaternions.value_op.conj"></a><h5>
-<a name="id2660370"></a>
- <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.conj">conj</a>
+<a name="id528058"></a>
+ conj
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">conj</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">conj</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         This returns the conjugate of the quaternion.
       </p>
 <a name="boost_quaternions.quaternions.value_op.sup"></a><h5>
-<a name="id2660495"></a>
- <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.sup">sup</a>
+<a name="id528195"></a>
+ sup
       </h5>
 <p>
         template&lt;typename T&gt; T sup(quaternion&lt;T&gt; const &amp; q);
@@ -62,31 +60,28 @@
         This return the sup norm (the greatest among <code class="computeroutput"><span class="identifier">abs</span><span class="special">(</span><span class="identifier">q</span><span class="special">.</span><span class="identifier">R_component_1</span><span class="special">())...</span><span class="identifier">abs</span><span class="special">(</span><span class="identifier">q</span><span class="special">.</span><span class="identifier">R_component_4</span><span class="special">()))</span></code> of the quaternion.
       </p>
 <a name="boost_quaternions.quaternions.value_op.l1"></a><h5>
-<a name="id2660584"></a>
- <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.l1">l1</a>
+<a name="id528293"></a>
+ l1
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">l1</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">l1</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         This return the l1 norm <code class="computeroutput"><span class="special">(</span><span class="identifier">abs</span><span class="special">(</span><span class="identifier">q</span><span class="special">.</span><span class="identifier">R_component_1</span><span class="special">())+...+</span><span class="identifier">abs</span><span class="special">(</span><span class="identifier">q</span><span class="special">.</span><span class="identifier">R_component_4</span><span class="special">()))</span></code> of the quaternion.
       </p>
 <a name="boost_quaternions.quaternions.value_op.abs"></a><h5>
-<a name="id2660760"></a>
- <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.abs">abs</a>
+<a name="id528486"></a>
+ abs
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">abs</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">abs</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         This return the magnitude (Euclidian norm) of the quaternion.
       </p>
 <a name="boost_quaternions.quaternions.value_op.norm"></a><h5>
-<a name="id2660871"></a>
- <a class="link" href="value_op.html#boost_quaternions.quaternions.value_op.norm">norm</a>
+<a name="id528607"></a>
+ norm
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">norm</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span><span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">T</span> <span class="identifier">norm</span><span class="special">(</span><span class="identifier">quaternion</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span><span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">q</span><span class="special">);</span>
 </pre>
 <p>
         This return the (Cayley) norm of the quaternion. The term "norm"

Modified: branches/CMake/release/libs/math/doc/quaternion/html/index.html
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/html/index.html (original)
+++ branches/CMake/release/libs/math/doc/quaternion/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Boost.Quaternions</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="index.html" title="Boost.Quaternions">
 <link rel="next" href="boost_quaternions/quaternions.html" title="Quaternions">
 </head>
@@ -12,8 +12,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
 </h3></div></div></div>
 <div><p class="copyright">Copyright © 2001 -2003 Hubert Holin</p></div>
 <div><div class="legalnotice">
-<a name="id2625926"></a><p>
+<a name="id447404"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -67,7 +67,7 @@
 </dl>
 </div>
 <p>
- This manual is also available in <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/quaternion.pdf" target="_top">printer
+ This manual is also available in <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/quaternion.pdf" target="_top">printer
     friendly PDF format</a>.
   </p>
 </div>

Modified: branches/CMake/release/libs/math/doc/quaternion/math-quaternion.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/quaternion/math-quaternion.qbk (original)
+++ branches/CMake/release/libs/math/doc/quaternion/math-quaternion.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -34,7 +34,7 @@
 [def __hypot [link boost_quaternions.math_special_functions.hypot hypot]]
 
 This manual is also available in
-[@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/quaternion.pdf
+[@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/quaternion.pdf
 printer friendly PDF format].
 
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/Jamfile.v2 (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,7 +40,7 @@
         
         # PDF Options:
         # TOC Generation: this is needed for FOP-0.9 and later:
- # <xsl:param>fop1.extensions=1
+ <xsl:param>fop1.extensions=0
         <format>pdf:<xsl:param>xep.extensions=1
         # TOC generation: this is needed for FOP 0.2, but must not be set to zero for FOP-0.9!
         <format>pdf:<xsl:param>fop.extensions=0

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/bessel_ik.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/bessel_ik.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/bessel_ik.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -44,11 +44,11 @@
 
 The following graph illustrates the exponential behaviour of I[sub v].
 
-[$../graphs/bessel_i.png]
+[graph cyl_bessel_i]
 
 The following graph illustrates the exponential decay of K[sub v].
 
-[$../graphs/bessel_k.png]
+[graph cyl_bessel_k]
 
 [h4 Testing]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/bessel_jy.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/bessel_jy.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/bessel_jy.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -44,12 +44,12 @@
 
 The following graph illustrates the cyclic nature of J[sub v]:
 
-[$../graphs/bessel_jn.png]
+[graph cyl_bessel_j]
 
 The following graph shows the behaviour of Y[sub v]: this is also
 cyclic for large /x/, but tends to -[infin][space] for small /x/:
 
-[$../graphs/bessel_yv.png]
+[graph cyl_neumann]
 
 [h4 Testing]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/bessel_spherical.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/bessel_spherical.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/bessel_spherical.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -39,12 +39,12 @@
 The j[sub v][space] function is cyclic like J[sub v][space] but differs
 in its behaviour at the origin:
 
-[$../graphs/sph_bessel_j.png]
+[graph sph_bessel]
 
 Likewise y[sub v][space] is also cyclic for large x, but tends to -[infin][space]
 for small /x/:
 
-[$../graphs/sph_bessel_y.png]
+[graph sph_neumann]
 
 [h4 Testing]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/beta.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/beta.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/beta.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -22,7 +22,7 @@
 
 [equation beta1]
 
-[$../graphs/beta.png]
+[graph beta]
 
 [optional_policy]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/common_overviews.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/common_overviews.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/common_overviews.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -185,8 +185,9 @@
    implementation. It should be possible to make this work if someone
    is prepared to offer assistance.]]
 [[IMB AIX][IBM xlc 5.3][Yes]
- [Currently our accuracy tests are unable to be run on this platform
- due to compiler errors in our /test/ code. The IBM compiler group
+ [All tests pass except for our fpclassify tests which fail due to a
+ bug in `std::numeric_limits`, the bug effects the test code, not
+ fpclassify itself. The IBM compiler group
    are aware of the problem.]]
 ]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/concepts.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/concepts.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/concepts.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -174,13 +174,25 @@
 [[`asin(cr1)`][RealType]]
 [[`tan(cr1)`][RealType]]
 [[`atan(cr1)`][RealType]]
+[[`fmod(cr1)`][RealType]]
+[[`round(cr1)`][RealType]]
+[[`iround(cr1)`][int]]
+[[`trunc(cr1)`][RealType]]
+[[`itrunc(cr1)`][int]]
 ]
 
 Note that the table above lists only those standard library functions known to
 be used (or likely to be used in the near future) by this library.
-The following functions: `acos`, `atan2`, `fmod`, `cosh`, `sinh`, `tanh`, `modf` and `log10`
+The following functions: `acos`, `atan2`, `fmod`, `cosh`, `sinh`, `tanh`, `log10`,
+`lround`, `llround`, ltrunc`, `lltrunc` and `modf`
 are not currently used, but may be if further special functions are added.
 
+Note that the `round`, `trunc` and `modf` functions are not part of the
+current C++ standard: they are part of the additions added to C99 which will
+likely be in the next C++ standard. There are Boost versions of these provided
+as a backup, and the functions are always called unqualified so that
+argument-dependent-lookup can take place.
+
 In addition, for efficient and accurate results, a __lanczos is highly desirable.
 You may be able to adapt an existing approximation from
 [@../../../../../boost/math/special_functions/lanczos.hpp

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/credits.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/credits.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/credits.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,6 +20,8 @@
 Xiaogang Zhang worked on the Bessel functions and elliptic integrals for his
 Google Summer of Code project 2006.
 
+Bruno Lalande submitted the "compile time power of a runtime base" code.
+
 Professor Nico Temme for advice on the inverse incomplete beta function.
 
 [@http://www.shoup.net Victor Shoup for NTL],
@@ -33,16 +35,29 @@
 program used to generate the html and pdf versions
 of this document, adding several new features en route.
 
+Plots of the functions and distributions were prepared in
+[@http://www.w3.org/ W3C] standard
+[@http://www.svg.org/ Scalable Vector Graphic (SVG)] format
+using a program created by Jacob Voytko during a
+[@http://code.google.com/soc/2007/ Google Summer of Code (2007)].
+Since browser support for rendering SVG is still not universal
+(Microsoft Internet Explorer, even IE 8 beta, still lacks native SVG support
+but can be made to work with
+[@http://www.adobe.com/svg/viewer/install/ Adobe's free SVG viewer] plugin),
+so the SVG files were batch converted to JPEG using
+[@http://www.inkscape.org/ Inkscape].
+
 We are also indebted to Matthias Schabel for managing the formal Boost-review
 of this library, and to all the reviewers - including Guillaume Melquiond,
 Arnaldur Gylfason, John Phillips, Stephan Tolksdorf and Jeff Garland
 - for their many helpful comments.
 
-[endsect][/section:roadmap Roadmap]
+[endsect] [/section:credits Credits and Acknowledgements]
 
 [/
- Copyright 2006 John Maddock and Paul A. Bristow.
+ Copyright 2006, 2007, 2008 John Maddock and Paul A. Bristow.
   Distributed under the Boost Software License, Version 1.0.
   (See accompanying file LICENSE_1_0.txt or copy at
   http://www.boost.org/LICENSE_1_0.txt).
 ]
+

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/digamma.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/digamma.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/digamma.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -23,7 +23,7 @@
 
 [equation digamma1]
 
-[$../graphs/digamma.png]
+[graph digamma]
 
 [optional_policy]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/dist_reference.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/dist_reference.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/dist_reference.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -15,6 +15,10 @@
 [include distributions/gamma.qbk]
 [include distributions/lognormal.qbk]
 [include distributions/negative_binomial.qbk]
+[include distributions/nc_beta.qbk]
+[include distributions/nc_chi_squared.qbk]
+[include distributions/nc_f.qbk]
+[include distributions/nc_t.qbk]
 [include distributions/normal.qbk]
 [include distributions/pareto.qbk]
 [include distributions/poisson.qbk]

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/dist_tutorial.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/dist_tutorial.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/dist_tutorial.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -158,13 +158,32 @@
 
 `pdf(binomial_distribution<RealType>(n, p), k);`
 
-The distribution (effectively the random variate) is said to be 'supported' over a range that is
+The ranges of random variate values that are permitted and are supported can be
+tested by using two functions `range` and `support`.
+
+The distribution (effectively the random variate) is said to be 'supported'
+over a range that is
 [@http://en.wikipedia.org/wiki/Probability_distribution
  "the smallest closed set whose complement has probability zero"].
 MathWorld uses the word 'defined' for this range.
 Non-mathematicians might say it means the 'interesting' smallest range
 of random variate x that has the cdf going from zero to unity.
 Outside are uninteresting zones where the pdf is zero, and the cdf zero or unity.
+
+For most distributions, with probability distribution functions one might describe
+as 'well-behaved', we have decided that it is most useful for the supported range
+to exclude random variate values like exact zero *if the end point is discontinuous*.
+For example, the Weibull (scale 1, shape 1) distribution smoothly heads for unity
+as the random variate x declines towards zero.
+But at x = zero, the value of the pdf is suddenly exactly zero, by definition.
+If you are plotting the PDF, or otherwise calculating,
+zero is not the most useful value for the lower limit of supported, as we discovered.
+So for this, and similar distributions,
+we have decided it is most numerically useful to use
+the closest value to zero, min_value, for the limit of the supported range.
+(The `range` remains from zero, so you will still get `pdf(weibull, 0) == 0`).
+(Exponential and gamma distributions have similarly discontinuous functions).
+
 Mathematically, the functions may make sense with an (+ or -) infinite value,
 but except for a few special cases (in the Normal and Cauchy distributions)
 this implementation limits random variates to finite values from the `max`
@@ -172,8 +191,6 @@
 (See [link math_toolkit.backgrounders.implementation.handling_of_floating_point_infinity
 Handling of Floating-Point Infinity] for rationale).
 
-The range of random variate values that is permitted and supported can be
-tested by using two functions `range` and `support`.
 
 [note
 
@@ -365,6 +382,7 @@
 [include distributions/binomial_example.qbk]
 [include distributions/negative_binomial_example.qbk]
 [include distributions/normal_example.qbk]
+[include distributions/nc_chi_squared_example.qbk]
 [include distributions/error_handling_example.qbk]
 [include distributions/find_location_and_scale.qbk]
 [include distributions/nag_library.qbk]

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/bernoulli.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/bernoulli.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/bernoulli.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -42,11 +42,11 @@
 [@http://en.wikipedia.org/wiki/Probability_density_function probability density function pdf]
 varies with the outcome of the single trial:
 
-[$../graphs/bernoulli_pdf.png]
+[graph bernoulli_pdf]
 
 and the [@http://en.wikipedia.org/wiki/Cumulative_Distribution_Function Cumulative distribution function]
 
-[$../graphs/bernoulli_cdf.png]
+[graph bernoulli_cdf]
 
 [h4 Member Functions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/beta.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/beta.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/beta.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -84,7 +84,7 @@
 is dome-shaped, and might be approximated by a symmetrical triangular
 distribution.
 
-[$../graphs/beta_dist.png]
+[graph beta_pdf]
 
 If [alpha] = [beta] = 1, then it is a __space
 [@http://en.wikipedia.org/wiki/Uniform_distribution_%28continuous%29 uniform distribution],

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/binomial.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/binomial.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/binomial.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -76,12 +76,12 @@
 upon the distributions parameters, first we'll keep the success
 fraction /p/ fixed at 0.5, and vary the sample size:
 
-[$../graphs/binomial_pdf_1.png]
+[graph binomial_pdf_1]
 
 Alternatively, we can keep the sample size fixed at N=20 and
 vary the success fraction /p/:
 
-[$../graphs/binomial_pdf_2.png]
+[graph binomial_pdf_2]
 
 [discrete_quantile_warning Binomial]
    

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/cauchy.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/cauchy.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/cauchy.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -44,12 +44,12 @@
 The following graph shows how the distributions moves as the
 location parameter changes:
 
-[$../graphs/cauchy1.png]
+[graph cauchy_pdf1]
 
 While the following graph shows how the shape (scale) parameter alters
 the distribution:
 
-[$../graphs/cauchy2.png]
+[graph cauchy_pdf2]
 
 [h4 Member Functions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/chi_squared.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/chi_squared.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/chi_squared.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -49,7 +49,7 @@
 freedom. The following graph illustrates how the distribution changes
 for different values of [nu]:
 
-[$../graphs/chi_square.png]
+[graph chi_squared_pdf]
 
 [h4 Member Functions]
 
@@ -105,6 +105,11 @@
 All the [link math_toolkit.dist.dist_ref.nmp usual non-member accessor functions]
 that are generic to all distributions are supported: __usual_accessors.
 
+(We have followed the usual restriction of the mode to degrees of freedom >= 2,
+but note that the maximum of the pdf is actually zero for degrees of freedom from 2 down to 0,
+and provide an extended definition that would avoid a discontinuity in the mode
+as alternative code in a comment).
+
 The domain of the random variable is \[0, +[infin]\].
 
 [h4 Examples]

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/exponential.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/exponential.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/exponential.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -33,7 +33,7 @@
 The following graph shows how the distribution changes for different
 values of the rate parameter lambda:
 
-[$../graphs/exponential_dist.png]
+[graph exponential_pdf]
 
 [h4 Member Functions]
 
@@ -90,6 +90,13 @@
 * [@http://www.itl.nist.gov/div898/handbook/eda/section3/eda3667.htm NIST Exploratory Data Analysis]
 * [@http://en.wikipedia.org/wiki/Exponential_distribution Wikipedia Exponential distribution]
 
+(See also the reference documentation for the related __extreme_distrib.)
+
+*
+[@http://www.worldscibooks.com/mathematics/p191.html Extreme Value Distributions, Theory and Applications
+Samuel Kotz & Saralees Nadarajah]
+discuss the relationship of the types of extreme value distributions.
+
 [endsect][/section:exp_dist Exponential]
 
 [/ exponential.qbk

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/extreme_value.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/extreme_value.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/extreme_value.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -36,6 +36,11 @@
 and [@http://en.wikipedia.org/wiki/Extreme_value_theory Extreme value theory]
 websites.
 
+The relationship of the types of extreme value distributions, of which this is but one, is
+discussed by
+[@http://www.worldscibooks.com/mathematics/p191.html Extreme Value Distributions, Theory and Applications
+Samuel Kotz & Saralees Nadarajah].
+
 The distribution has a PDF given by:
 
 f(x) = (1/scale) e[super -(x-location)/scale] e[super -e[super -(x-location)/scale]]
@@ -46,11 +51,11 @@
 
 The following graph illustrates how the PDF varies with the location parameter:
 
-[$../graphs/extreme_val_dist.png]
+[graph extreme_value_pdf1]
 
 And this graph illustrates how the PDF varies with the shape parameter:
 
-[$../graphs/extreme_val_dist2.png]
+[graph extreme_value_pdf2]
 
 [h4 Member Functions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/fisher.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/fisher.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/fisher.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -41,7 +41,7 @@
 The following graph illustrates how the PDF varies depending on the
 two degrees of freedom parameters.
 
-[$../graphs/fisher_f.png]
+[graph fisher_f_pdf]
 
 
 [h4 Member Functions]

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/gamma.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/gamma.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/gamma.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -61,9 +61,9 @@
 The following two graphs illustrate how the PDF of the gamma distribution
 varies as the parameters vary:
 
-[$../graphs/gamma_dist1.png]
+[graph gamma1_pdf]
 
-[$../graphs/gamma_dist2.png]
+[graph gamma2_pdf]
 
 The [*Erlang Distribution] is the same as the Gamma, but with the shape parameter
 an integer. It is often expressed using a /rate/ rather than a /scale/ as the

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/lognormal.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/lognormal.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/lognormal.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -43,11 +43,11 @@
 variable remains \[0,+[infin]\] irrespective of the value of the
 location parameter:
 
-[$../graphs/lognormal1.png]
+[graph lognormal_pdf1]
 
 The next graph illustrates the effect of the scale parameter on the PDF:
 
-[$../graphs/lognormal2.png]
+[graph lognormal_pdf2]
 
 [h4 Member Functions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/negative_binomial.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/negative_binomial.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/negative_binomial.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -72,12 +72,12 @@
 The following graph illustrate how the PDF varies as the success fraction
 /p/ changes:
 
-[$../graphs/neg_binomial_pdf1.png]
+[graph negative_binomial_pdf_1]
 
 Alternatively, this graph shows how the shape of the PDF varies as
 the number of successes changes:
 
-[$../graphs/neg_binomial_pdf2.png]
+[graph negative_binomial_pdf_2]
 
 [h4 Related Distributions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/normal.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/normal.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/normal.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,7 +40,7 @@
 The variation the PDF with its parameters is illustrated
 in the following graph:
 
-[$../graphs/normal.png]
+[graph normal_pdf]
 
 [h4 Member Functions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/pareto.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/pareto.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/pareto.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -37,11 +37,14 @@
 often describes the larger compared to the smaller.
 A classic example is that 80% of the wealth is owned by 20% of the population.
 
-The following graph illustrates how the PDF varies with the shape parameter [alpha]:
+The following graph illustrates how the PDF varies with the location parameter [beta]:
+
+[graph pareto_pdf1]
+
+And this graph illustrates how the PDF varies with the shape parameter [alpha]:
+
+[graph pareto_pdf2]
 
-[/$../graphs/paretoShape.png]
-[/ TODO produce a graph as png or svg]
-[@http://upload.wikimedia.org/wikipedia/commons/thumb/d/d9/Pareto_distributionPDF.png/325px-Pareto_distributionPDF.png Pareto pdf]
 
 [h4 Related distributions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/poisson.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/poisson.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/poisson.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -41,7 +41,7 @@
 
 The following graph illustrates how the PDF varies with the parameter [lambda]:
 
-[$../graphs/poisson.png]
+[graph poisson_pdf_1]
 
 [discrete_quantile_warning Poisson]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/rayleigh.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/rayleigh.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/rayleigh.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,11 +40,11 @@
 
 The following graph illustrates how the Probability density Function(pdf) varies with the shape parameter [sigma]:
 
-[$../graphs/rayleigh_pdf.png]
+[graph rayleigh_pdf]
 
 and the Cumulative Distribution Function (cdf)
 
-[$../graphs/rayleigh_cdf.png]
+[graph rayleigh_cdf]
 
 [h4 Related distributions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/students_t.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/students_t.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/students_t.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -55,7 +55,7 @@
 distribution approaches the normal-distribution. The following graph
 illustrates how the PDF varies with the degrees of freedom [nu]:
 
-[$../graphs/students_t.png]
+[graph students_t_pdf]
 
 [h4 Member Functions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/triangular.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/triangular.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/triangular.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -72,11 +72,11 @@
 [@http://en.wikipedia.org/wiki/Probability_density_function probability density function PDF]
 varies with the various parameters:
 
-[$../graphs/triangular_pdf.png]
+[graph triangular_pdf]
 
 and cumulative distribution function
 
-[$../graphs/triangular_cdf.png]
+[graph triangular_cdf]
 
 [h4 Member Functions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/uniform.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/uniform.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/uniform.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -61,11 +61,11 @@
 [@http://en.wikipedia.org/wiki/Probability_density_function probability density function PDF]
 varies with the shape parameter:
 
-[$../graphs/uniform_pdf.png]
+[graph uniform_pdf]
 
 Likewise for the CDF:
 
-[$../graphs/uniform_cdf.png]
+[graph uniform_cdf]
 
 [h4 Member Functions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/distributions/weibull.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/distributions/weibull.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/distributions/weibull.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -45,11 +45,11 @@
 
 The following graph illustrates how the PDF varies with the shape parameter [alpha]:
 
-[$../graphs/weibull.png]
+[graph weibull_pdf1]
 
 While this graph illustrates how the PDF varies with the scale parameter [beta]:
 
-[$../graphs/weibull2.png]
+[graph weibull_pdf2]
 
 [h4 Related distributions]
 
@@ -58,6 +58,11 @@
 [@http://en.wikipedia.org/wiki/Normal_distribution normal distribution].
 When [alpha][space] = 1, the Weibull distribution reduces to the
 [@http://en.wikipedia.org/wiki/Exponential_distribution exponential distribution].
+The relationship of the types of extreme value distributions, of which the Weibull is but one, is
+discussed by
+[@http://www.worldscibooks.com/mathematics/p191.html Extreme Value Distributions, Theory and Applications
+Samuel Kotz & Saralees Nadarajah].
+
    
 [h4 Member Functions]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/ellint_carlson.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/ellint_carlson.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/ellint_carlson.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -76,7 +76,7 @@
 have complicated behavior over all their possible domains, but the following
 graph gives an idea of their behavior:
 
-[$../graphs/ellint_c.png]
+[graph ellint_carlson]
 
 The return type of these functions is computed using the __arg_pomotion_rules
 when the arguments are of different types: otherwise the return is the same type

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/ellint_legendre.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/ellint_legendre.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/ellint_legendre.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -35,7 +35,7 @@
 These two functions evaluate the incomplete elliptic integral of the first kind
 ['F([phi], k)] and its complete counterpart ['K(k) = F([pi]/2, k)].
 
-[$../graphs/ellint_1.png]
+[graph ellint_1]
 
 The return type of these functions is computed using the __arg_pomotion_rules
 when T1 and T2 are different types: when they are the same type then the result
@@ -135,7 +135,7 @@
 These two functions evaluate the incomplete elliptic integral of the second kind
 ['E([phi], k)] and its complete counterpart ['E(k) = E([pi]/2, k)].
 
-[$../graphs/ellint_2.png]
+[graph ellint_2]
 
 The return type of these functions is computed using the __arg_pomotion_rules
 when T1 and T2 are different types: when they are the same type then the result
@@ -161,7 +161,7 @@
   template <class T>
   ``__sf_result`` ellint_2(T k, const ``__Policy``&);
   
-Returns the complete elliptic integral of the first kind ['E(k)]:
+Returns the complete elliptic integral of the second kind ['E(k)]:
 
 [equation ellint7]
 
@@ -235,7 +235,7 @@
 These two functions evaluate the incomplete elliptic integral of the third kind
 ['[Pi](n, [phi], k)] and its complete counterpart ['[Pi](n, k) = E(n, [pi]/2, k)].
 
-[$../graphs/ellint_3.png]
+[graph ellint_3]
 
 The return type of these functions is computed using the __arg_pomotion_rules
 when the arguments are of different types: when they are the same type then the result

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/erf.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/erf.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/erf.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,7 +40,7 @@
 
 [equation erf1]
 
-[$../graphs/erf1.png]
+[graph erf]
 
    template <class T>
    ``__sf_result`` erfc(T z);
@@ -52,7 +52,7 @@
 
 [equation erf2]
 
-[$../graphs/erf2.png]
+[graph erfc]
 
 [h4 Accuracy]
 
@@ -169,17 +169,13 @@
 then a series of rational approximations [jm_rationals] are used.
 
 For `z <= 0.5` then a rational approximation to erf is used, based on the
-observation that:
+observation that erf is an odd function and therefore erf is calculated using:
 
- erf(z)/z ~ 1.12....
+ erf(z) = z * (C + R(z*z));
    
-Therefore erf is calculated using:
-
- erf(z) = z * (1.125F + R(z));
-
-where the rational approximation R(z) is optimised for absolute error:
-as long as its absolute error is small enough compared to 1.125, then any
-round-off error incurred during the computation of R(z) will effectively
+where the rational approximation R(z*z) is optimised for absolute error:
+as long as its absolute error is small enough compared to the constant C, then any
+round-off error incurred during the computation of R(z*z) will effectively
 disappear from the result. As a result the error for erf and erfc in this
 region is very low: the last bit is incorrect in only a very small number of
 cases.
@@ -192,15 +188,20 @@
 
 Therefore for `z > 0.5` we calculate erfc using:
 
- erfc(z) = exp(-z*z) * (c + R(z)) / z;
+ erfc(z) = exp(-z*z) * (C + R(z - B)) / z;
    
-Again R(z) is optimised for absolute error, and the constant `c` is
+Again R(z - B) is optimised for absolute error, and the constant `C` is
 the average of `erfc(z) * exp(z*z) * z` taken at the endpoints of the range.
-Once again, as long as the absolute error in R(z) is small
-compared to `c` then `c + R(z)` will be correctly rounded, and the error
+Once again, as long as the absolute error in R(z - B) is small
+compared to `c` then `c + R(z - B)` will be correctly rounded, and the error
 in the result will depend only on the accuracy of the exp function. In practice,
 in all but a very small number of cases, the error is confined to the last bit
-of the result.
+of the result. The constant `B` is chosen so that the left hand end of the range
+of the rational approximation is 0.
+
+For large `z` over a range \[a, +[infin]\] the above approximation is modified to:
+
+ erfc(z) = exp(-z*z) * (C + R(1 / z)) / z;
 
 [endsect]
 [/ :error_function The Error Functions]

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/erf_inv.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/erf_inv.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/erf_inv.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,7 +40,7 @@
 
    p = erf(x);
 
-[$../graphs/erf_inv.png]
+[graph erf_inv]
 
    template <class T>
    ``__sf_result`` erfc_inv(T z);
@@ -53,7 +53,7 @@
 
    p = erfc(x);
 
-[$../graphs/erfc_inv.png]
+[graph erfc_inv]
 
 [h4 Accuracy]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/error_handling.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/error_handling.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/error_handling.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -26,9 +26,14 @@
    to be represented by any other value in the type being returned by
    the function.]]
 [[Denormalisation Error][Occurs when the returned result would be a denormalised value.]]
+[[Rounding Error][Occurs when the argument to one of the rounding functions __trunc,
+ __round and __modf can not be represented as an integer type, is is
+ outide the range of the result type.]]
 [[Evaluation Error][Occurs when an internal error occured that prevented the
    result from being evaluated: this should never occur, but if it does, then
    it's likely to be due to an iterative method not converging fast enough.]]
+[[Indeterminate Result Error][Occurs when the result of a function is not
+ defined for the values that were passed to it.]]
 ]
 
 The action undertaken by each error condition is determined by the current
@@ -100,16 +105,36 @@
             this function must be defined by the user].]]
 ]
 
+[table Possible Actions for Rounding Errors
+[[Action] [Behaviour]]
+[[throw_on_error][Throws `boost::math::rounding_error`]]
+[[errno_on_error][Sets `::errno` to `ERANGE` and returns an unspecified value.]]
+[[ignore_error][[*Returns the an unspecified value.]]]
+[[user_error][Returns the result of `boost::math::policies::user_rounding_error`:
+ [link math_toolkit.policy.pol_tutorial.user_def_err_pol
+ this function must be defined by the user].]]
+]
+
 [table Possible Actions for Internal Evaluation Errors
 [[Action] [Behaviour]]
 [[throw_on_error][[*Throws `boost::math::evaluation_error`]]]
-[[errno_on_error][Sets `::errno` to `EDOM` and returns `std::numeric_limits<T>::infinity()`.]]
-[[ignore_error][Returns `std::numeric_limits<T>::infinity()`.]]
+[[errno_on_error][Sets `::errno` to `EDOM` and returns the closest approximation found.]]
+[[ignore_error][Returns the closest approximation found.]]
 [[user_error][Returns the result of `boost::math::policies::user_evaluation_error`:
             [link math_toolkit.policy.pol_tutorial.user_def_err_pol
             this function must be defined by the user].]]
 ]
 
+[table Possible Actions for Indeterminate Result Errors
+[[Action] [Behaviour]]
+[[throw_on_error][Throws `std::domain_error`]]
+[[errno_on_error][Sets `::errno` to `EDOM` and returns the same value as `ignore_error`.]]
+[[ignore_error][[*Returns a default result that depends on the function where the error occurred.]]]
+[[user_error][Returns the result of `boost::math::policies::user_indeterminate_result_error`:
+ [link math_toolkit.policy.pol_tutorial.user_def_err_pol
+ this function must be defined by the user].]]
+]
+
 [heading Rationale]
 
 The flexibility of the current implementation should be reasonably obvious, the
@@ -291,6 +316,54 @@
 `val` to the full precision of T, where as "%.3g" would contain the value of
 `val` to 3 digits. See the __format documentation for more details.
 
+[heading [#indeterminate_result_error]Indeterminate Result Errors]
+
+When the result of a special function is indeterminate for the value that was
+passed to it, then the function returns the result of:
+
+ boost::math::policies::raise_overflow_error<T>(FunctionName, Message, Val, Default, __Policy);
+
+Where
+`T` is the floating-point type passed to the function, `FunctionName` is the
+name of the function, `Message` is an error message describing the problem,
+Val is the value for which the result is indeterminate, Default is an
+alternative default result that must be returned for ignore_error and
+errno_on_error policies, and __Policy is the current policy in use for the
+function that was called.
+
+The default policy for this function is `ignore_error`: note that this error
+type is reserved for situations where the result is mathematically
+undefined or indeterminate, but there is none the less a convention for what
+the result should be: for example the C99 standard specifies that the result
+of 0[super 0] is 1, even though the result is actually mathematically indeterminate.
+
+[heading [#rounding_error]Rounding Errors]
+
+When one of the rounding functions __round, __trunc or __modf is
+called with an argument that has no integer representation, or
+is too large to be represented in the result type then the
+value returned is the result of a call to:
+
+ boost::math::policies::raise_rounding_error<T>(FunctionName, Message, Val, __Policy);
+
+Where
+`T` is the floating point type passed to the function, `FunctionName` is the
+name of the function, `Message` is an error message describing the problem,
+`Val` is the erroneous argument,
+and __Policy is the current policy
+in use for the called function.
+
+The default behaviour of this function is to throw a `boost::math::rounding_error`.
+
+Note that in order to support information rich error messages when throwing
+exceptions, `Message` must contain
+a __format recognised format specifier: the argument `val` is inserted into
+the error message according to the specifier used.
+
+For example if `Message` contains a "%1%" then it is replaced by the value of
+`val` to the full precision of T, where as "%.3g" would contain the value of
+`val` to 3 digits. See the __format documentation for more details.
+
 [heading [#checked_narrowing_cast]Errors from typecasts]
 
 Many special functions evaluate their results at a higher precision

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/fpclassify.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/fpclassify.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/fpclassify.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,4 +1,4 @@
-[section:fpclass Floating Point Classification: Infinities and NaN's]
+[section:fpclass Floating-Point Classification: Infinities and NaN's]
 
 [h4 Synopsis]
 
@@ -12,16 +12,20 @@
    int fpclassify(T t);
 
    template <class T>
- bool isfinite(T z);
+ bool isfinite(T z); // Neither infinity nor NaN.
 
    template <class T>
- bool isinf(T t);
+ bool isinf(T t); // Infinity (+ or -).
 
    template <class T>
- bool isnan(T t);
+ bool isnan(T t); // NaN.
 
    template <class T>
- bool isnormal(T t);
+ bool isnormal(T t); // isfinite and not denormalised.
+
+ #include <boost\math\special_functions\fpclassify.hpp>
+
+to use these functions.
 
 [h4 Description]
 
@@ -49,9 +53,18 @@
    // As above but with namespace qualification.
    (boost::math::isnan)(z);
    //
- // This will cause a compiler error is isnan is a native macro:
+ // This will cause a compiler error if isnan is a native macro:
    boost::math::isnan(z);
- // So always use (boost::math::isnan)(z); instead.
+ // So always use instead:
+ (boost::math::isnan)(z);
+ //
+ // You can also add a using statment,
+ // globally to a .cpp file, or to a local function in a .hpp file.
+ using boost::math::isnan;
+ // so you can write the shorter and less cluttered
+ (isnan)(z)
+ // But, as above, if isnan is a native macro, this causes a compiler error,
+ // because the macro always 'gets' the name first, unless enclosed in () brackets.
    
 Detailed descriptions for each of these functions follows:
 
@@ -82,7 +95,7 @@
    template <class T>
    bool isnan(T t);
 
-Returns true only if /z/ is a NaN.
+Returns true only if /z/ is a [@http://en.wikipedia.org/wiki/NaN NaN].
 
    template <class T>
    bool isnormal(T t);
@@ -92,7 +105,7 @@
 [endsect] [/section:fpclass Floating Point Classification: Infinities and NaN's]
 
 [/
- Copyright 2006 John Maddock and Paul A. Bristow.
+ Copyright 2006, 2008 John Maddock and Paul A. Bristow.
   Distributed under the Boost Software License, Version 1.0.
   (See accompanying file LICENSE_1_0.txt or copy at
   http://www.boost.org/LICENSE_1_0.txt).

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/gamma_ratios.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/gamma_ratios.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/gamma_ratios.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -55,6 +55,8 @@
 The return type of these functions is computed using the __arg_pomotion_rules
 when T1 and T2 are different types, otherwise the result type is simple T1.
 
+[graph tgamma_delta_ratio]
+
 [h4 Accuracy]
 
 The following table shows the peak errors (in units of epsilon)

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bernoulli_cdf.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bernoulli_pdf.png
==============================================================================
Binary files. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bessel_i.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bessel_jn.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bessel_jv.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bessel_k.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/bessel_yv.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/beta-small.png
==============================================================================
Binary file. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/beta.png
==============================================================================
Binary files. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/beta_dist.png
==============================================================================
Binary file. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/beta_pdf.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/binomial_pdf_1.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/binomial_pdf_2.png
==============================================================================
Binary files. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cauchy1.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/cauchy2.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/chi_square.png
==============================================================================
Binary file. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/digamma.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_1.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_2.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_3.png
==============================================================================
Binary files. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ellint_c.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erf1.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erf2.png
==============================================================================
Binary file. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erf_inv.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/erfc_inv.png
==============================================================================
Binary files. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/exponential_dist.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/extreme_val_dist.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/extreme_val_dist2.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/fisher_f.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma_dist1.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma_dist2.png
==============================================================================
Binary file. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma_p.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/gamma_q.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/hermite.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/ibeta.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/laguerre.png
==============================================================================
Binary files. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/legendre_p1.png
==============================================================================
Binary file. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/legendre_q.png
==============================================================================
Binary files. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lgamma-errors.png
==============================================================================
Binary file. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lgamma.png
==============================================================================
Binary files. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lognormal1.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/lognormal2.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/neg_binomial_pdf1.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/neg_binomial_pdf2.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/normal.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/poisson.png
==============================================================================
Binary file. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/rayleigh_cdf.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/rayleigh_pdf.png
==============================================================================
Binary files. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/re_exp_on_c.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sph_bessel_j.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/sph_bessel_y.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/students_t.png
==============================================================================
Binary file. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/triangular_cdf.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/triangular_pdf.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/uniform_cdf.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/uniform_pdf.png
==============================================================================
Binary files. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/weibull.png
==============================================================================
Binary file. No diff available.

Deleted: branches/CMake/release/libs/math/doc/sf_and_dist/graphs/weibull2.png
==============================================================================
Binary file. No diff available.

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/hermite.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/hermite.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/hermite.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,7 +40,7 @@
 The following graph illustrates the behaviour of the first few
 Hermite Polynomials:
 
-[$../graphs/hermite.png]
+[graph hermite]
    
    template <class T1, class T2, class T3>
    ``__sf_result`` hermite_next(unsigned n, T1 x, T2 Hn, T3 Hnm1);

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/index.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/index.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,8 +12,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -36,11 +36,14 @@
 <div class="author"><h3 class="author">
 <span class="firstname">Xiaogang</span> <span class="surname">Zhang</span>
 </h3></div>
+<div class="author"><h3 class="author">
+<span class="firstname">Bruno</span> <span class="surname">Lalande</span>
+</h3></div>
 </div></div>
-<div><p class="copyright">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang</p></div>
+<div><p class="copyright">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande</p></div>
 <div><div class="legalnotice">
-<a name="id435852"></a><p>
+<a name="id445703"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -68,6 +71,7 @@
 <dt><span class="section"> Performance</span></dt>
 <dt><span class="section"><a href="math_toolkit/main_overview/history1.html"> History and What's
       New</a></span></dt>
+<dt><span class="section"> C99 and TR1 C Functions</span></dt>
 <dt><span class="section"><a href="math_toolkit/main_overview/contact.html"> Contact Info and
       Support</a></span></dt>
 </dl></dd>
@@ -93,6 +97,8 @@
           Binomial Distribution Examples</a></span></dt>
 <dt><span class="section"><a href="math_toolkit/dist/stat_tut/weg/normal_example.html"> Normal
           Distribution Examples</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/dist/stat_tut/weg/nccs_eg.html"> Non Central
+ Chi Squared Example</a></span></dt>
 <dt><span class="section"><a href="math_toolkit/dist/stat_tut/weg/error_eg.html"> Error Handling
           Example</a></span></dt>
 <dt><span class="section"><a href="math_toolkit/dist/stat_tut/weg/find_eg.html"> Find Location
@@ -132,6 +138,14 @@
           Log Normal Distribution</a></span></dt>
 <dt><span class="section"><a href="math_toolkit/dist/dist_ref/dists/negative_binomial_dist.html">
           Negative Binomial Distribution</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/dist/dist_ref/dists/nc_beta_dist.html"> Noncentral
+ Beta Distribution</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/dist/dist_ref/dists/nc_chi_squared_dist.html">
+ Noncentral Chi-Squared Distribution</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/dist/dist_ref/dists/nc_f_dist.html"> Noncentral
+ F Distribution</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/dist/dist_ref/dists/nc_t_dist.html"> Noncentral
+ T Distribution</a></span></dt>
 <dt><span class="section"><a href="math_toolkit/dist/dist_ref/dists/normal_dist.html"> Normal
           (Gaussian) Distribution</a></span></dt>
 <dt><span class="section"><a href="math_toolkit/dist/dist_ref/dists/pareto.html"> Pareto
@@ -233,6 +247,15 @@
 <dt><span class="section"><a href="math_toolkit/special/ellint/ellint_3.html"> Elliptic Integrals
         of the Third Kind - Legendre Form</a></span></dt>
 </dl></dd>
+<dt><span class="section"> Zeta Functions</span></dt>
+<dd><dl><dt><span class="section"> Riemann Zeta Function</span></dt></dl></dd>
+<dt><span class="section"> Exponential Integrals</span></dt>
+<dd><dl>
+<dt><span class="section"><a href="math_toolkit/special/expint/expint_n.html"> Exponential
+ Integral En</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/special/expint/expint_i.html"> Exponential
+ Integral Ei</a></span></dt>
+</dl></dd>
 <dt><span class="section"><a href="math_toolkit/special/powers.html"> Logs, Powers, Roots and
       Exponentials</a></span></dt>
 <dd><dl>
@@ -242,6 +265,8 @@
 <dt><span class="section"> sqrt1pm1</span></dt>
 <dt><span class="section"> powm1</span></dt>
 <dt><span class="section"> hypot</span></dt>
+<dt><span class="section"><a href="math_toolkit/special/powers/ct_pow.html"> Compile Time Power
+ of a Runtime Base</a></span></dt>
 </dl></dd>
 <dt><span class="section"><a href="math_toolkit/special/sinc.html"> Sinus Cardinal and Hyperbolic
       Sinus Cardinal Functions</a></span></dt>
@@ -259,8 +284,39 @@
 <dt><span class="section"> asinh</span></dt>
 <dt><span class="section"> atanh</span></dt>
 </dl></dd>
-<dt><span class="section"><a href="math_toolkit/special/fpclass.html"> Floating Point Classification:
+<dt><span class="section"><a href="math_toolkit/special/rounding.html"> Rounding Truncation and
+ Integer Conversion</a></span></dt>
+<dd><dl>
+<dt><span class="section"> Rounding Functions</span></dt>
+<dt><span class="section"> Truncation Functions</span></dt>
+<dt><span class="section"><a href="math_toolkit/special/rounding/modf.html"> Integer and Fractional
+ Part Splitting (modf)</a></span></dt>
+</dl></dd>
+<dt><span class="section"><a href="math_toolkit/special/fpclass.html"> Floating-Point Classification:
       Infinities and NaN's</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/special/next_float.html"> Floating-Point Representation
+ Distance (ULP), and Finding Adjacent Floating-Point Values</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="math_toolkit/special/next_float/nextafter.html"> Finding
+ the Next Representable Value in a Specific Direction (nextafter)</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/special/next_float/float_next.html"> Finding
+ the Next Greater Representable Value (float_next)</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/special/next_float/float_prior.html"> Finding
+ the Next Smaller Representable Value (float_prior)</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/special/next_float/float_distance.html"> Calculating
+ the Representation Distance Between Two Floating Point Values (ULP) float_distance</a></span></dt>
+<dt><span class="section"><a href="math_toolkit/special/next_float/float_advance.html"> Advancing
+ a Floating Point Value by a Specific Representation Distance (ULP) float_advance</a></span></dt>
+</dl></dd>
+<dt><span class="section"><a href="math_toolkit/special/extern_c.html"> TR1 and C99 external
+ "C" Functions</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="math_toolkit/special/extern_c/tr1.html"> C99 and TR1 C Functions
+ Overview</a></span></dt>
+<dt><span class="section"> C99 C Functions</span></dt>
+<dt><span class="section"><a href="math_toolkit/special/extern_c/tr1_ref.html"> TR1 C Functions
+ Quick Reference</a></span></dt>
+</dl></dd>
 </dl></dd>
 <dt><span class="section"> Internal Details and Tools (Experimental)</span></dt>
 <dd><dl>
@@ -291,7 +347,7 @@
         Profiling, and Generating Test Data for Special Functions</a></span></dt>
 </dl></dd>
 </dl></dd>
-<dt><span class="section"><a href="math_toolkit/using_udt.html"> Use with User Defined Floating-Point
+<dt><span class="section"><a href="math_toolkit/using_udt.html"> Use with User-Defined Floating-Point
     Types</a></span></dt>
 <dd><dl>
 <dt><span class="section"><a href="math_toolkit/using_udt/use_ntl.html"> Using With NTL - a High-Precision
@@ -385,12 +441,12 @@
     ISBN 0-9504833-2-X 978-0-9504833-2-0, Classification 519.2-dc22
   </p>
 <p>
- This manual is also available in <a href="http:svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf" target="_top">printer
+ This manual is also available in <a href="http://svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf" target="_top">printer
     friendly PDF format</a>.
   </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: March 15, 2008 at 13:34:43 GMT</small></p></td>
+<td align="left"><p><small>Last revised: July 04, 2008 at 17:19:33 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -38,8 +38,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/implementation.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/implementation.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/implementation.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -33,7 +33,7 @@
         and reflect more the general implementation philosophy used.
       </p>
 <a name="math_toolkit.backgrounders.implementation.implemention_philosophy"></a><h5>
-<a name="id782705"></a>
+<a name="id857398"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.implemention_philosophy">Implemention
         philosophy</a>
       </h5>
@@ -85,7 +85,7 @@
         These could still provide sufficient accuracy for some speed-critical applications.
       </p>
 <a name="math_toolkit.backgrounders.implementation.accuracy_and_representation_of_test_values"></a><h5>
-<a name="id782816"></a>
+<a name="id857509"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.accuracy_and_representation_of_test_values">Accuracy
         and Representation of Test Values</a>
       </h5>
@@ -130,7 +130,7 @@
         binary value).
       </p>
 <a name="math_toolkit.backgrounders.implementation.tolerance_of_tests"></a><h5>
-<a name="id783048"></a>
+<a name="id857741"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.tolerance_of_tests">Tolerance
         of Tests</a>
       </h5>
@@ -156,7 +156,7 @@
         first that the suffix L is present, and then that the tolerance is big enough.
       </p>
 <a name="math_toolkit.backgrounders.implementation.handling_unsuitable_arguments"></a><h5>
-<a name="id783107"></a>
+<a name="id857800"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.handling_unsuitable_arguments">Handling
         Unsuitable Arguments</a>
       </h5>
@@ -242,7 +242,7 @@
         </p></td></tr>
 </table></div>
 <a name="math_toolkit.backgrounders.implementation.handling_of_functions_that_are_not_mathematically_defined"></a><h5>
-<a name="id783332"></a>
+<a name="id858025"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.handling_of_functions_that_are_not_mathematically_defined">Handling
         of Functions that are Not Mathematically defined</a>
       </h5>
@@ -276,7 +276,7 @@
         </p></td></tr>
 </table></div>
 <a name="math_toolkit.backgrounders.implementation.median_of_distributions"></a><h5>
-<a name="id783473"></a>
+<a name="id858166"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.median_of_distributions">Median
         of distributions</a>
       </h5>
@@ -309,7 +309,7 @@
         Basic Statistics.</a> give more detail, in particular for discrete distributions.
       </p>
 <a name="math_toolkit.backgrounders.implementation.handling_of_floating_point_infinity"></a><h5>
-<a name="id783618"></a>
+<a name="id858311"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.handling_of_floating_point_infinity">Handling
         of Floating-Point Infinity</a>
       </h5>
@@ -337,6 +337,12 @@
         for the realType on that implementation.
       </p>
 <p>
+ Users who require special handling of infinity (or other specific value)
+ can, of course, always intercept this before calling a distribution or function
+ and return their own choice of value, or other behavior. This will often
+ be simpler than trying to handle the aftermath of the error policy.
+ </p>
+<p>
         Overflow, underflow, denorm can be handled using <a href="../policy/pol_ref/error_handling_policies.html" title="Error Handling Policies">error
         handling policies</a>.
       </p>
@@ -347,7 +353,7 @@
         handling policies</a>.
       </p>
 <a name="math_toolkit.backgrounders.implementation.scale__shape_and_location"></a><h5>
-<a name="id783766"></a>
+<a name="id858468"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.scale__shape_and_location">Scale,
         Shape and Location</a>
       </h5>
@@ -374,7 +380,7 @@
         functions, they can be added if required.
       </p>
 <a name="math_toolkit.backgrounders.implementation.notes_on_implementation_of_specific_functions__amp__distributions"></a><h5>
-<a name="id784231"></a>
+<a name="id858934"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.notes_on_implementation_of_specific_functions__amp__distributions">Notes
         on Implementation of Specific Functions &amp; Distributions</a>
       </h5>
@@ -386,7 +392,7 @@
           0 and upper = 1 would be more suitable.
         </li></ul></div>
 <a name="math_toolkit.backgrounders.implementation.rational_approximations_used"></a><h5>
-<a name="id784271"></a>
+<a name="id858974"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.rational_approximations_used">Rational
         Approximations Used</a>
       </h5>
@@ -429,7 +435,7 @@
         to the "true" minimax solution.
       </p>
 <a name="math_toolkit.backgrounders.implementation.representation_of_mathematical_constants"></a><h5>
-<a name="id784388"></a>
+<a name="id859070"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.representation_of_mathematical_constants">Representation
         of Mathematical Constants</a>
       </h5>
@@ -490,7 +496,7 @@
 </span><span class="keyword">double</span> <span class="identifier">p</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">constants</span><span class="special">::</span><span class="identifier">pi</span><span class="special">();</span> <span class="comment">// Context does not allow for disambiguation of overloaded function
 </span></pre>
 <a name="math_toolkit.backgrounders.implementation.thread_safety"></a><h5>
-<a name="id784929"></a>
+<a name="id859612"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.thread_safety">Thread
         safety</a>
       </h5>
@@ -515,7 +521,7 @@
         the right thing here at some point.
       </p>
 <a name="math_toolkit.backgrounders.implementation.sources_of_test_data"></a><h5>
-<a name="id784994"></a>
+<a name="id859684"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.sources_of_test_data">Sources
         of Test Data</a>
       </h5>
@@ -559,7 +565,7 @@
         the underlying special function is known to be difficult to implement.
       </p>
 <a name="math_toolkit.backgrounders.implementation.creating_and_managing_the_equations"></a><h5>
-<a name="id785105"></a>
+<a name="id859795"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.creating_and_managing_the_equations">Creating
         and Managing the Equations</a>
       </h5>
@@ -621,6 +627,15 @@
       </p>
 <pre class="programlisting">java -jar 'C:\download\open\batik-1.7\batik-rasterizer.jar' -dpi 120 *.svg</pre>
 <p>
+ Or using Inkscape and a command such as:
+ </p>
+<pre class="programlisting">for file in *.svg; do
+ /cygdrive/c/progra~1/Inkscape/inkscape -d 120 -e $(cygpath -a -w $(basename $file .svg).png) $(cygpath -a -w $file);
+done</pre>
+<p>
+ Currently Inkscape seems to generate the better looking png's.
+ </p>
+<p>
         The PDF is generated into \pdf\math.pdf using a command from a shell or command
         window with current directory \math_toolkit\libs\math\doc\sf_and_dist, typically:
       </p>
@@ -711,7 +726,7 @@
         HTML: this needs further investigation.
       </p>
 <a name="math_toolkit.backgrounders.implementation.producing_graphs"></a><h5>
-<a name="id785479"></a>
+<a name="id860173"></a>
         <a href="implementation.html#math_toolkit.backgrounders.implementation.producing_graphs">Producing
         Graphs</a>
       </h5>
@@ -732,8 +747,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/lanczos.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/lanczos.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/lanczos.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.backgrounders.lanczos"></a> The Lanczos Approximation
 </h3></div></div></div>
 <a name="math_toolkit.backgrounders.lanczos.motivation"></a><h5>
-<a name="id785869"></a>
+<a name="id860552"></a>
         <a href="lanczos.html#math_toolkit.backgrounders.lanczos.motivation">Motivation</a>
       </h5>
 <p>
@@ -98,7 +98,7 @@
         functions divided by large powers into single (simpler) expressions.
       </p>
 <a name="math_toolkit.backgrounders.lanczos.the_approximation"></a><h5>
-<a name="id786247"></a>
+<a name="id860930"></a>
         <a href="lanczos.html#math_toolkit.backgrounders.lanczos.the_approximation">The
         Approximation</a>
       </h5>
@@ -160,7 +160,7 @@
         </p></td></tr>
 </table></div>
 <a name="math_toolkit.backgrounders.lanczos.computing_the_coefficients"></a><h5>
-<a name="id786510"></a>
+<a name="id861193"></a>
         <a href="lanczos.html#math_toolkit.backgrounders.lanczos.computing_the_coefficients">Computing
         the Coefficients</a>
       </h5>
@@ -204,7 +204,7 @@
         multiplied by <span class="emphasis"><em>F</em></span> as the last step.
       </p>
 <a name="math_toolkit.backgrounders.lanczos.choosing_the_right_parameters"></a><h5>
-<a name="id786715"></a>
+<a name="id861398"></a>
         <a href="lanczos.html#math_toolkit.backgrounders.lanczos.choosing_the_right_parameters">Choosing
         the Right Parameters</a>
       </h5>
@@ -228,7 +228,7 @@
         computing to float precision with double precision arithmetic.
       </p>
 <div class="table">
-<a name="id786798"></a><p class="title"><b>Table 45. Optimal choices for N and g when computing with
+<a name="id861481"></a><p class="title"><b>Table 53. Optimal choices for N and g when computing with
       guard digits (source: Pugh)</b></p>
 <div class="table-contents"><table class="table" summary="Optimal choices for N and g when computing with
       guard digits (source: Pugh)">
@@ -371,7 +371,7 @@
         exactly matches the machine epsilon for the type in question.
       </p>
 <div class="table">
-<a name="id787120"></a><p class="title"><b>Table 46. Optimum value for N and g when computing at fixed
+<a name="id861804"></a><p class="title"><b>Table 54. Optimum value for N and g when computing at fixed
       precision</b></p>
 <div class="table-contents"><table class="table" summary="Optimum value for N and g when computing at fixed
       precision">
@@ -536,7 +536,7 @@
         is exact, and so isn't used for the gamma function.
       </p>
 <a name="math_toolkit.backgrounders.lanczos.references"></a><h5>
-<a name="id787399"></a>
+<a name="id862082"></a>
         <a href="lanczos.html#math_toolkit.backgrounders.lanczos.references">References</a>
       </h5>
 <a name="godfrey"></a><a name="pugh"></a><div class="orderedlist"><ol type="1">
@@ -561,8 +561,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/refs.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/refs.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/refs.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.backgrounders.refs"></a> References
 </h3></div></div></div>
 <a name="math_toolkit.backgrounders.refs.general_references"></a><h5>
-<a name="id788778"></a>
+<a name="id863475"></a>
         <a href="refs.html#math_toolkit.backgrounders.refs.general_references">General
         references</a>
       </h5>
@@ -75,8 +75,14 @@
         Wiley 2000.
       </p>
 <p>
+ <a href="http://www.worldscibooks.com/mathematics/p191.html" target="_top">EXTREME VALUE
+ DISTRIBUTIONS, Theory and Applications</a> Samuel Kotz &amp; Saralees
+ Nadarajah, ISBN 978-1-86094-224-2 &amp; 1-86094-224-5 Oct 2000, Chapter 1.2
+ discusses the various extreme value distributions.
+ </p>
+<p>
         <a href="http://bh0.physics.ubc.ca/People/matt/Doc/ThesesOthers/Phd/pugh.pdf" target="_top">pugh.pdf
- (application/pdf Object)</a> Pugh Msc Thesis on the Lanczzos approximation
+ (application/pdf Object)</a> Pugh Msc Thesis on the Lanczos approximation
         to the gamma function.
       </p>
 <p>
@@ -85,7 +91,7 @@
         Library (version 2), Walter E. Brown</a>
       </p>
 <a name="math_toolkit.backgrounders.refs.calculators__that_we_found__and_used_to_cross_check___as_far_as_their_widely_varying_accuracy_allowed__"></a><h5>
-<a name="id788923"></a>
+<a name="id863649"></a>
         <a href="refs.html#math_toolkit.backgrounders.refs.calculators__that_we_found__and_used_to_cross_check___as_far_as_their_widely_varying_accuracy_allowed__">Calculators*
         that we found (and used to cross-check - as far as their widely-varying accuracy
         allowed).</a>
@@ -95,7 +101,7 @@
         Binomial Probability Distribution Calculator.
       </p>
 <a name="math_toolkit.backgrounders.refs.other_libraries"></a><h5>
-<a name="id788968"></a>
+<a name="id863694"></a>
         <a href="refs.html#math_toolkit.backgrounders.refs.other_libraries">Other Libraries</a>
       </h5>
 <p>
@@ -155,8 +161,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/relative_error.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/relative_error.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/relative_error.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -81,7 +81,7 @@
 <a name="zero_error"></a><p>
       </p>
 <a name="math_toolkit.backgrounders.relative_error.the_impossibility_of_zero_error"></a><h5>
-<a name="id785780"></a>
+<a name="id860474"></a>
         <a href="relative_error.html#math_toolkit.backgrounders.relative_error.the_impossibility_of_zero_error">The
         Impossibility of Zero Error</a>
       </h5>
@@ -109,8 +109,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/remez.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/remez.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/backgrounders/remez.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -94,7 +94,7 @@
         are located!</em></span>
       </p>
 <a name="math_toolkit.backgrounders.remez.the_remez_method"></a><h5>
-<a name="id787650"></a>
+<a name="id862333"></a>
         <a href="remez.html#math_toolkit.backgrounders.remez.the_remez_method">The Remez
         Method</a>
       </h5>
@@ -174,7 +174,7 @@
 </td></tr>
 </table></div>
 <a name="math_toolkit.backgrounders.remez.remez_step_1"></a><h5>
-<a name="id787870"></a>
+<a name="id862553"></a>
         <a href="remez.html#math_toolkit.backgrounders.remez.remez_step_1">Remez Step
         1</a>
       </h5>
@@ -205,7 +205,7 @@
         to 5.6x10<sup>-4</sup>.
       </p>
 <a name="math_toolkit.backgrounders.remez.remez_step_2"></a><h5>
-<a name="id787975"></a>
+<a name="id862658"></a>
         <a href="remez.html#math_toolkit.backgrounders.remez.remez_step_2">Remez Step
         2</a>
       </h5>
@@ -234,7 +234,7 @@
         In our example we perform multi-point exchange.
       </p>
 <a name="math_toolkit.backgrounders.remez.iteration"></a><h5>
-<a name="id788036"></a>
+<a name="id862719"></a>
         <a href="remez.html#math_toolkit.backgrounders.remez.iteration">Iteration</a>
       </h5>
 <p>
@@ -250,7 +250,7 @@
         <span class="inlinemediaobject"><img src="../../../graphs/remez-4.png" alt="remez-4"></span>
       </p>
 <a name="math_toolkit.backgrounders.remez.rational_approximations"></a><h5>
-<a name="id788097"></a>
+<a name="id862780"></a>
         <a href="remez.html#math_toolkit.backgrounders.remez.rational_approximations">Rational
         Approximations</a>
       </h5>
@@ -299,7 +299,7 @@
         number of terms overall.
       </p>
 <a name="math_toolkit.backgrounders.remez.practical_considerations"></a><h5>
-<a name="id788219"></a>
+<a name="id862903"></a>
         <a href="remez.html#math_toolkit.backgrounders.remez.practical_considerations">Practical
         Considerations</a>
       </h5>
@@ -407,7 +407,7 @@
         desired minimax solution (5x10<sup>-4</sup>).
       </p>
 <a name="math_toolkit.backgrounders.remez.remez_method_checklist"></a><h5>
-<a name="id788502"></a>
+<a name="id863191"></a>
         <a href="remez.html#math_toolkit.backgrounders.remez.remez_method_checklist">Remez
         Method Checklist</a>
       </h5>
@@ -461,7 +461,7 @@
         </li>
 </ul></div>
 <a name="math_toolkit.backgrounders.remez.references"></a><h5>
-<a name="id788597"></a>
+<a name="id863294"></a>
         <a href="remez.html#math_toolkit.backgrounders.remez.references">References</a>
       </h5>
 <p>
@@ -527,8 +527,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -93,6 +93,10 @@
           Distribution Examples</a></span></dt>
 <dd><dl><dt><span class="section"><a href="dist/stat_tut/weg/normal_example/normal_misc.html">
             Some Miscellaneous Examples of the Normal (Gaussian) Distribution</a></span></dt></dl></dd>
+<dt><span class="section"><a href="dist/stat_tut/weg/nccs_eg.html"> Non Central
+ Chi Squared Example</a></span></dt>
+<dd><dl><dt><span class="section"><a href="dist/stat_tut/weg/nccs_eg/nccs_power_eg.html">
+ Tables of the power function of the &#967;<sup>2</sup> test.</a></span></dt></dl></dd>
 <dt><span class="section"><a href="dist/stat_tut/weg/error_eg.html"> Error Handling
           Example</a></span></dt>
 <dt><span class="section"><a href="dist/stat_tut/weg/find_eg.html"> Find Location
@@ -140,6 +144,14 @@
           Log Normal Distribution</a></span></dt>
 <dt><span class="section"><a href="dist/dist_ref/dists/negative_binomial_dist.html">
           Negative Binomial Distribution</a></span></dt>
+<dt><span class="section"><a href="dist/dist_ref/dists/nc_beta_dist.html"> Noncentral
+ Beta Distribution</a></span></dt>
+<dt><span class="section"><a href="dist/dist_ref/dists/nc_chi_squared_dist.html">
+ Noncentral Chi-Squared Distribution</a></span></dt>
+<dt><span class="section"><a href="dist/dist_ref/dists/nc_f_dist.html"> Noncentral
+ F Distribution</a></span></dt>
+<dt><span class="section"><a href="dist/dist_ref/dists/nc_t_dist.html"> Noncentral
+ T Distribution</a></span></dt>
 <dt><span class="section"><a href="dist/dist_ref/dists/normal_dist.html"> Normal
           (Gaussian) Distribution</a></span></dt>
 <dt><span class="section"><a href="dist/dist_ref/dists/pareto.html"> Pareto
@@ -165,8 +177,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -52,6 +52,14 @@
           Log Normal Distribution</a></span></dt>
 <dt><span class="section"><a href="dist_ref/dists/negative_binomial_dist.html">
           Negative Binomial Distribution</a></span></dt>
+<dt><span class="section"><a href="dist_ref/dists/nc_beta_dist.html"> Noncentral
+ Beta Distribution</a></span></dt>
+<dt><span class="section"><a href="dist_ref/dists/nc_chi_squared_dist.html">
+ Noncentral Chi-Squared Distribution</a></span></dt>
+<dt><span class="section"><a href="dist_ref/dists/nc_f_dist.html"> Noncentral
+ F Distribution</a></span></dt>
+<dt><span class="section"><a href="dist_ref/dists/nc_t_dist.html"> Noncentral
+ T Distribution</a></span></dt>
 <dt><span class="section"><a href="dist_ref/dists/normal_dist.html"> Normal
           (Gaussian) Distribution</a></span></dt>
 <dt><span class="section"><a href="dist_ref/dists/pareto.html"> Pareto
@@ -75,8 +83,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dist_algorithms.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dist_algorithms.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dist_algorithms.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Algorithms</a>
 </h4></div></div></div>
 <a name="math_toolkit.dist.dist_ref.dist_algorithms.finding_the_location_and_scale_for_normal_and_similar_distributions"></a><h5>
-<a name="id615449"></a>
+<a name="id648784"></a>
           <a href="dist_algorithms.html#math_toolkit.dist.dist_ref.dist_algorithms.finding_the_location_and_scale_for_normal_and_similar_distributions">Finding
           the Location and Scale for Normal and similar distributions</a>
         </h5>
@@ -50,7 +50,7 @@
 </span><span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">complement</span><span class="special">;</span> <span class="comment">// Will be needed by users who want to use complements.
 </span></pre>
 <a name="math_toolkit.dist.dist_ref.dist_algorithms.find_location_function"></a><h5>
-<a name="id615603"></a>
+<a name="id648939"></a>
           <a href="dist_algorithms.html#math_toolkit.dist.dist_ref.dist_algorithms.find_location_function">find_location
           function</a>
         </h5>
@@ -80,7 +80,7 @@
   <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.dist.dist_ref.dist_algorithms.find_scale_function"></a><h5>
-<a name="id616224"></a>
+<a name="id649560"></a>
           <a href="dist_algorithms.html#math_toolkit.dist.dist_ref.dist_algorithms.find_scale_function">find_scale
           function</a>
         </h5>
@@ -130,8 +130,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -48,6 +48,14 @@
           Log Normal Distribution</a></span></dt>
 <dt><span class="section"><a href="dists/negative_binomial_dist.html">
           Negative Binomial Distribution</a></span></dt>
+<dt><span class="section"><a href="dists/nc_beta_dist.html"> Noncentral
+ Beta Distribution</a></span></dt>
+<dt><span class="section"><a href="dists/nc_chi_squared_dist.html">
+ Noncentral Chi-Squared Distribution</a></span></dt>
+<dt><span class="section"><a href="dists/nc_f_dist.html"> Noncentral
+ F Distribution</a></span></dt>
+<dt><span class="section"><a href="dists/nc_t_dist.html"> Noncentral
+ T Distribution</a></span></dt>
 <dt><span class="section"><a href="dists/normal_dist.html"> Normal
           (Gaussian) Distribution</a></span></dt>
 <dt><span class="section"><a href="dists/pareto.html"> Pareto
@@ -68,8 +76,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/bernoulli_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/bernoulli_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/bernoulli_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -77,17 +77,17 @@
             density function pdf</a> varies with the outcome of the single trial:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/bernoulli_pdf.png" alt="bernoulli_pdf"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/bernoulli_pdf.png" align="middle"></span>
           </p>
 <p>
             and the <a href="http://en.wikipedia.org/wiki/Cumulative_Distribution_Function" target="_top">Cumulative
             distribution function</a>
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/bernoulli_cdf.png" alt="bernoulli_cdf"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/bernoulli_cdf.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.bernoulli_dist.member_functions"></a><h5>
-<a name="id577111"></a>
+<a name="id601318"></a>
             <a href="bernoulli_dist.html#math_toolkit.dist.dist_ref.dists.bernoulli_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -103,7 +103,7 @@
             Returns the <span class="emphasis"><em>success_fraction</em></span> parameter of this distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.bernoulli_dist.non_member_accessors"></a><h5>
-<a name="id577226"></a>
+<a name="id601433"></a>
             <a href="bernoulli_dist.html#math_toolkit.dist.dist_ref.dists.bernoulli_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -128,7 +128,7 @@
             exception and make an error message available.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.bernoulli_dist.accuracy"></a><h5>
-<a name="id577401"></a>
+<a name="id601608"></a>
             <a href="bernoulli_dist.html#math_toolkit.dist.dist_ref.dists.bernoulli_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -136,7 +136,7 @@
             and so should have errors within an epsilon or two.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.bernoulli_dist.implementation"></a><h5>
-<a name="id577432"></a>
+<a name="id601639"></a>
             <a href="bernoulli_dist.html#math_toolkit.dist.dist_ref.dists.bernoulli_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -327,7 +327,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.bernoulli_dist.references"></a><h5>
-<a name="id577803"></a>
+<a name="id602010"></a>
             <a href="bernoulli_dist.html#math_toolkit.dist.dist_ref.dists.bernoulli_dist.references">References</a>
           </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -339,8 +339,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/beta_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/beta_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/beta_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -122,7 +122,7 @@
             might be approximated by a symmetrical triangular distribution.
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/beta_dist.png" alt="beta_dist"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/beta_pdf.png" align="middle"></span>
           </p>
 <p>
             If &#945; = &#946; = 1, then it is a &#8203;
@@ -133,12 +133,12 @@
             from the centre (where x = half).
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.beta_dist.member_functions"></a><h5>
-<a name="id578934"></a>
+<a name="id603156"></a>
             <a href="beta_dist.html#math_toolkit.dist.dist_ref.dists.beta_dist.member_functions">Member
             Functions</a>
           </h5>
 <a name="math_toolkit.dist.dist_ref.dists.beta_dist.constructor"></a><h6>
-<a name="id578961"></a>
+<a name="id603182"></a>
             <a href="beta_dist.html#math_toolkit.dist.dist_ref.dists.beta_dist.constructor">Constructor</a>
           </h6>
 <pre class="programlisting"><span class="identifier">beta_distribution</span><span class="special">(</span><span class="identifier">RealType</span> <span class="identifier">alpha</span><span class="special">,</span> <span class="identifier">RealType</span> <span class="identifier">beta</span><span class="special">);</span>
@@ -165,7 +165,7 @@
             yellow in the graph above).
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.beta_dist.parameter_accessors"></a><h6>
-<a name="id579141"></a>
+<a name="id603362"></a>
             <a href="beta_dist.html#math_toolkit.dist.dist_ref.dists.beta_dist.parameter_accessors">Parameter
             Accessors</a>
           </h6>
@@ -189,7 +189,7 @@
 </span><span class="identifier">assert</span><span class="special">(</span><span class="identifier">mybeta</span><span class="special">.</span><span class="identifier">beta</span><span class="special">()</span> <span class="special">==</span> <span class="number">5.</span><span class="special">);</span> <span class="comment">// mybeta.beta() returns 5
 </span></pre>
 <a name="math_toolkit.dist.dist_ref.dists.beta_dist.parameter_estimators"></a><h5>
-<a name="id579417"></a>
+<a name="id603638"></a>
             <a href="beta_dist.html#math_toolkit.dist.dist_ref.dists.beta_dist.parameter_estimators">Parameter
             Estimators</a>
           </h5>
@@ -242,7 +242,7 @@
             Returns the value of &#946; that gives: <code class="computeroutput"><span class="identifier">cdf</span><span class="special">(</span><span class="identifier">beta_distribution</span><span class="special">&lt;</span><span class="identifier">RealType</span><span class="special">&gt;(</span><span class="identifier">alpha</span><span class="special">,</span> <span class="identifier">beta</span><span class="special">),</span> <span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="identifier">probability</span></code>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.beta_dist.non_member_accessor_functions"></a><h5>
-<a name="id580052"></a>
+<a name="id604273"></a>
             <a href="beta_dist.html#math_toolkit.dist.dist_ref.dists.beta_dist.non_member_accessor_functions">Non-member
             Accessor Functions</a>
           </h5>
@@ -264,7 +264,7 @@
             Mathworld</a>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.beta_dist.applications"></a><h5>
-<a name="id580229"></a>
+<a name="id604451"></a>
             <a href="beta_dist.html#math_toolkit.dist.dist_ref.dists.beta_dist.applications">Applications</a>
           </h5>
 <p>
@@ -277,7 +277,7 @@
             statistical inference</a>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.beta_dist.related_distributions"></a><h5>
-<a name="id580275"></a>
+<a name="id604496"></a>
             <a href="beta_dist.html#math_toolkit.dist.dist_ref.dists.beta_dist.related_distributions">Related
             distributions</a>
           </h5>
@@ -303,7 +303,7 @@
             Distribution</a> with its p parameter set to x.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.beta_dist.accuracy"></a><h5>
-<a name="id580352"></a>
+<a name="id604585"></a>
             <a href="beta_dist.html#math_toolkit.dist.dist_ref.dists.beta_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -315,7 +315,7 @@
             please refer to these functions for information on accuracy.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.beta_dist.implementation"></a><h5>
-<a name="id580431"></a>
+<a name="id604664"></a>
             <a href="beta_dist.html#math_toolkit.dist.dist_ref.dists.beta_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -597,7 +597,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.beta_dist.references"></a><h5>
-<a name="id581728"></a>
+<a name="id605961"></a>
             <a href="beta_dist.html#math_toolkit.dist.dist_ref.dists.beta_dist.references">References</a>
           </h5>
 <p>
@@ -615,8 +615,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/binomial_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/binomial_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/binomial_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -118,14 +118,14 @@
             <span class="emphasis"><em>p</em></span> fixed at 0.5, and vary the sample size:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/binomial_pdf_1.png" alt="binomial_pdf_1"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/binomial_pdf_1.png" align="middle"></span>
           </p>
 <p>
             Alternatively, we can keep the sample size fixed at N=20 and vary the
             success fraction <span class="emphasis"><em>p</em></span>:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/binomial_pdf_2.png" alt="binomial_pdf_2"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/binomial_pdf_2.png" align="middle"></span>
           </p>
 <p>
             </p>
@@ -167,12 +167,12 @@
 <p>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.member_functions"></a><h5>
-<a name="id583024"></a>
+<a name="id607292"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.member_functions">Member
             Functions</a>
           </h5>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.construct"></a><h6>
-<a name="id583048"></a>
+<a name="id607316"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.construct">Construct</a>
           </h6>
 <pre class="programlisting"><span class="identifier">binomial_distribution</span><span class="special">(</span><span class="identifier">RealType</span> <span class="identifier">n</span><span class="special">,</span> <span class="identifier">RealType</span> <span class="identifier">p</span><span class="special">);</span>
@@ -189,7 +189,7 @@
             otherwise calls domain_error.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.accessors"></a><h6>
-<a name="id583210"></a>
+<a name="id607478"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.accessors">Accessors</a>
           </h6>
 <pre class="programlisting"><span class="identifier">RealType</span> <span class="identifier">success_fraction</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
@@ -205,7 +205,7 @@
             was constructed.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.lower_bound_on_the_success_fraction"></a><h6>
-<a name="id583326"></a>
+<a name="id607593"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.lower_bound_on_the_success_fraction">Lower
             Bound on the Success Fraction</a>
           </h6>
@@ -311,7 +311,7 @@
             limits illustrated in the case of the binomial. Biometrika 26 404-413.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.upper_bound_on_the_success_fraction"></a><h6>
-<a name="id583979"></a>
+<a name="id608224"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.upper_bound_on_the_success_fraction">Upper
             Bound on the Success Fraction</a>
           </h6>
@@ -389,7 +389,7 @@
 </td></tr>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.estimating_the_number_of_trials_required_for_a_certain_number_of_successes"></a><h6>
-<a name="id584419"></a>
+<a name="id608664"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.estimating_the_number_of_trials_required_for_a_certain_number_of_successes">Estimating
             the Number of Trials Required for a Certain Number of Successes</a>
           </h6>
@@ -431,7 +431,7 @@
             of seeing 10 events that occur with frequency one half.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.estimating_the_maximum_number_of_trials_to_ensure_no_more_than_a_certain_number_of_successes"></a><h6>
-<a name="id584692"></a>
+<a name="id608937"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.estimating_the_maximum_number_of_trials_to_ensure_no_more_than_a_certain_number_of_successes">Estimating
             the Maximum Number of Trials to Ensure no more than a Certain Number
             of Successes</a>
@@ -479,7 +479,7 @@
             Worked Example.</a>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.non_member_accessors"></a><h5>
-<a name="id584984"></a>
+<a name="id609229"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -504,7 +504,7 @@
             in the context of this distribution:
           </p>
 <div class="table">
-<a name="id585197"></a><p class="title"><b>Table 9. Meaning of the non-member accessors</b></p>
+<a name="id609443"></a><p class="title"><b>Table 11. Meaning of the non-member accessors</b></p>
 <div class="table-contents"><table class="table" summary="Meaning of the non-member accessors">
 <colgroup>
 <col>
@@ -627,7 +627,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.dist.dist_ref.dists.binomial_dist.examples"></a><h5>
-<a name="id585757"></a>
+<a name="id610003"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.examples">Examples</a>
           </h5>
 <p>
@@ -635,7 +635,7 @@
             examples</a> are available illustrating the use of the binomial distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.accuracy"></a><h5>
-<a name="id585797"></a>
+<a name="id610043"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -645,7 +645,7 @@
             please refer to these functions for information on accuracy.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.implementation"></a><h5>
-<a name="id585847"></a>
+<a name="id610092"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -886,7 +886,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.binomial_dist.references"></a><h5>
-<a name="id587186"></a>
+<a name="id611431"></a>
             <a href="binomial_dist.html#math_toolkit.dist.dist_ref.dists.binomial_dist.references">References</a>
           </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -907,8 +907,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/cauchy_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/cauchy_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/cauchy_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -78,17 +78,17 @@
             parameter changes:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/cauchy1.png" alt="cauchy1"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/cauchy_pdf1.png" align="middle"></span>
           </p>
 <p>
             While the following graph shows how the shape (scale) parameter alters
             the distribution:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/cauchy2.png" alt="cauchy2"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/cauchy_pdf2.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.cauchy_dist.member_functions"></a><h5>
-<a name="id587866"></a>
+<a name="id612141"></a>
             <a href="cauchy_dist.html#math_toolkit.dist.dist_ref.dists.cauchy_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -114,7 +114,7 @@
             Returns the scale parameter of the distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.cauchy_dist.non_member_accessors"></a><h5>
-<a name="id588077"></a>
+<a name="id612352"></a>
             <a href="cauchy_dist.html#math_toolkit.dist.dist_ref.dists.cauchy_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -151,7 +151,7 @@
             The domain of the random variable is [-[max_value], +[min_value]].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.cauchy_dist.accuracy"></a><h5>
-<a name="id588331"></a>
+<a name="id612606"></a>
             <a href="cauchy_dist.html#math_toolkit.dist.dist_ref.dists.cauchy_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -160,7 +160,7 @@
             have very low error rates.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.cauchy_dist.implementation"></a><h5>
-<a name="id588386"></a>
+<a name="id612662"></a>
             <a href="cauchy_dist.html#math_toolkit.dist.dist_ref.dists.cauchy_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -276,7 +276,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.cauchy_dist.references"></a><h5>
-<a name="id588676"></a>
+<a name="id612951"></a>
             <a href="cauchy_dist.html#math_toolkit.dist.dist_ref.dists.cauchy_dist.references">References</a>
           </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -291,8 +291,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/chi_squared_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/chi_squared_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/chi_squared_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -84,10 +84,10 @@
             values of &#957;:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/chi_square.png" alt="chi_square"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/chi_squared_pdf.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.chi_squared_dist.member_functions"></a><h5>
-<a name="id589438"></a>
+<a name="id613727"></a>
             <a href="chi_squared_dist.html#math_toolkit.dist.dist_ref.dists.chi_squared_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -170,7 +170,7 @@
             NIST Engineering Statistics Handbook, Section 7.2.3.2</a>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.chi_squared_dist.non_member_accessors"></a><h5>
-<a name="id589882"></a>
+<a name="id614172"></a>
             <a href="chi_squared_dist.html#math_toolkit.dist.dist_ref.dists.chi_squared_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -187,10 +187,16 @@
             <a href="../nmp.html#math.dist.range">range</a> and <a href="../nmp.html#math.dist.support">support</a>.
           </p>
 <p>
+ (We have followed the usual restriction of the mode to degrees of freedom
+ &gt;= 2, but note that the maximum of the pdf is actually zero for degrees
+ of freedom from 2 down to 0, and provide an extended definition that
+ would avoid a discontinuity in the mode as alternative code in a comment).
+ </p>
+<p>
             The domain of the random variable is [0, +&#8734;].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.chi_squared_dist.examples"></a><h5>
-<a name="id590054"></a>
+<a name="id614361"></a>
             <a href="chi_squared_dist.html#math_toolkit.dist.dist_ref.dists.chi_squared_dist.examples">Examples</a>
           </h5>
 <p>
@@ -198,7 +204,7 @@
             are available illustrating the use of the Chi Squared Distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.chi_squared_dist.accuracy"></a><h5>
-<a name="id590094"></a>
+<a name="id614402"></a>
             <a href="chi_squared_dist.html#math_toolkit.dist.dist_ref.dists.chi_squared_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -206,7 +212,7 @@
             gamma functions</a>: please refer to the accuracy data for those functions.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.chi_squared_dist.implementation"></a><h5>
-<a name="id590136"></a>
+<a name="id614444"></a>
             <a href="chi_squared_dist.html#math_toolkit.dist.dist_ref.dists.chi_squared_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -373,7 +379,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.chi_squared_dist.references"></a><h5>
-<a name="id590480"></a>
+<a name="id614788"></a>
             <a href="chi_squared_dist.html#math_toolkit.dist.dist_ref.dists.chi_squared_dist.references">References</a>
           </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -388,8 +394,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/exp_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/exp_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/exp_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -68,10 +68,10 @@
             values of the rate parameter lambda:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/exponential_dist.png" alt="exponential_dist"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/exponential_pdf.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.exp_dist.member_functions"></a><h5>
-<a name="id591047"></a>
+<a name="id615369"></a>
             <a href="exp_dist.html#math_toolkit.dist.dist_ref.dists.exp_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -91,7 +91,7 @@
             Accessor function returns the lambda parameter of the distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.exp_dist.non_member_accessors"></a><h5>
-<a name="id591188"></a>
+<a name="id615511"></a>
             <a href="exp_dist.html#math_toolkit.dist.dist_ref.dists.exp_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -111,7 +111,7 @@
             The domain of the random variable is [0, +&#8734;].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.exp_dist.accuracy"></a><h5>
-<a name="id591360"></a>
+<a name="id615682"></a>
             <a href="exp_dist.html#math_toolkit.dist.dist_ref.dists.exp_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -122,7 +122,7 @@
             should have very low error rates.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.exp_dist.implementation"></a><h5>
-<a name="id591437"></a>
+<a name="id615760"></a>
             <a href="exp_dist.html#math_toolkit.dist.dist_ref.dists.exp_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -283,7 +283,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.exp_dist.references"></a><h5>
-<a name="id591739"></a>
+<a name="id616062"></a>
             <a href="exp_dist.html#math_toolkit.dist.dist_ref.dists.exp_dist.references">references</a>
           </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -297,11 +297,21 @@
 <li><a href="http://en.wikipedia.org/wiki/Exponential_distribution" target="_top">Wikipedia
               Exponential distribution</a></li>
 </ul></div>
+<p>
+ (See also the reference documentation for the related <a href="extreme_dist.html" title="Extreme Value Distribution">Extreme
+ Distributions</a>.)
+ </p>
+<div class="itemizedlist"><ul type="disc"><li>
+<a href="http://www.worldscibooks.com/mathematics/p191.html" target="_top">Extreme
+ Value Distributions, Theory and Applications Samuel Kotz &amp; Saralees
+ Nadarajah</a> discuss the relationship of the types of extreme
+ value distributions.
+ </li></ul></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/extreme_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/extreme_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/extreme_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -69,6 +69,12 @@
             value theory</a> websites.
           </p>
 <p>
+ The relationship of the types of extreme value distributions, of which
+ this is but one, is discussed by <a href="http://www.worldscibooks.com/mathematics/p191.html" target="_top">Extreme
+ Value Distributions, Theory and Applications Samuel Kotz &amp; Saralees
+ Nadarajah</a>.
+ </p>
+<p>
             The distribution has a PDF given by:
           </p>
 <p>
@@ -85,16 +91,16 @@
             parameter:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/extreme_val_dist.png" alt="extreme_val_dist"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/extreme_value_pdf1.png" align="middle"></span>
           </p>
 <p>
             And this graph illustrates how the PDF varies with the shape parameter:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/extreme_val_dist2.png" alt="extreme_val_dist2"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/extreme_value_pdf2.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.extreme_dist.member_functions"></a><h5>
-<a name="id592419"></a>
+<a name="id616820"></a>
             <a href="extreme_dist.html#math_toolkit.dist.dist_ref.dists.extreme_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -119,7 +125,7 @@
             Returns the scale parameter of the distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.extreme_dist.non_member_accessors"></a><h5>
-<a name="id592643"></a>
+<a name="id617044"></a>
             <a href="extreme_dist.html#math_toolkit.dist.dist_ref.dists.extreme_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -139,7 +145,7 @@
             The domain of the random parameter is [-&#8734;, +&#8734;].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.extreme_dist.accuracy"></a><h5>
-<a name="id592813"></a>
+<a name="id617214"></a>
             <a href="extreme_dist.html#math_toolkit.dist.dist_ref.dists.extreme_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -148,7 +154,7 @@
             very low error rates.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.extreme_dist.implementation"></a><h5>
-<a name="id592866"></a>
+<a name="id617268"></a>
             <a href="extreme_dist.html#math_toolkit.dist.dist_ref.dists.extreme_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -314,8 +320,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/f_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/f_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/f_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -77,10 +77,10 @@
             degrees of freedom parameters.
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/fisher_f.png" alt="fisher_f"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/fisher_f_pdf.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.f_dist.member_functions"></a><h5>
-<a name="id593812"></a>
+<a name="id618227"></a>
             <a href="f_dist.html#math_toolkit.dist.dist_ref.dists.f_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -106,7 +106,7 @@
             Returns the denominator degrees of freedom parameter of the distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.f_dist.non_member_accessors"></a><h5>
-<a name="id594024"></a>
+<a name="id618440"></a>
             <a href="f_dist.html#math_toolkit.dist.dist_ref.dists.f_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -126,7 +126,7 @@
             The domain of the random variable is [0, +&#8734;].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.f_dist.examples"></a><h5>
-<a name="id594195"></a>
+<a name="id618612"></a>
             <a href="f_dist.html#math_toolkit.dist.dist_ref.dists.f_dist.examples">Examples</a>
           </h5>
 <p>
@@ -134,7 +134,7 @@
             are available illustrating the use of the F Distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.f_dist.accuracy"></a><h5>
-<a name="id594236"></a>
+<a name="id618651"></a>
             <a href="f_dist.html#math_toolkit.dist.dist_ref.dists.f_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -143,7 +143,7 @@
             refer to those functions for accuracy data.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.f_dist.implementation"></a><h5>
-<a name="id594284"></a>
+<a name="id618700"></a>
             <a href="f_dist.html#math_toolkit.dist.dist_ref.dists.f_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -423,8 +423,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/gamma_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/gamma_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/gamma_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -118,10 +118,10 @@
             varies as the parameters vary:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/gamma_dist1.png" alt="gamma_dist1"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/gamma1_pdf.png" align="middle"></span>
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/gamma_dist2.png" alt="gamma_dist2"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/gamma2_pdf.png" align="middle"></span>
           </p>
 <p>
             The <span class="bold"><strong>Erlang Distribution</strong></span> is the same
@@ -137,7 +137,7 @@
             than a dedicated Erlang Distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.gamma_dist.member_functions"></a><h5>
-<a name="id595677"></a>
+<a name="id620121"></a>
             <a href="gamma_dist.html#math_toolkit.dist.dist_ref.dists.gamma_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -162,7 +162,7 @@
             Returns the <span class="emphasis"><em>scale</em></span> parameter of this distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.gamma_dist.non_member_accessors"></a><h5>
-<a name="id595881"></a>
+<a name="id620325"></a>
             <a href="gamma_dist.html#math_toolkit.dist.dist_ref.dists.gamma_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -182,7 +182,7 @@
             The domain of the random variable is [0,+&#8734;].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.gamma_dist.accuracy"></a><h5>
-<a name="id596052"></a>
+<a name="id620496"></a>
             <a href="gamma_dist.html#math_toolkit.dist.dist_ref.dists.gamma_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -194,7 +194,7 @@
             refer to the accuracy data for those functions for more information.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.gamma_dist.implementation"></a><h5>
-<a name="id596120"></a>
+<a name="id620565"></a>
             <a href="gamma_dist.html#math_toolkit.dist.dist_ref.dists.gamma_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -363,8 +363,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/lognormal_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/lognormal_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/lognormal_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -79,16 +79,16 @@
             irrespective of the value of the location parameter:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/lognormal1.png" alt="lognormal1"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/lognormal_pdf1.png" align="middle"></span>
           </p>
 <p>
             The next graph illustrates the effect of the scale parameter on the PDF:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/lognormal2.png" alt="lognormal2"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/lognormal_pdf2.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.lognormal_dist.member_functions"></a><h5>
-<a name="id597140"></a>
+<a name="id621614"></a>
             <a href="lognormal_dist.html#math_toolkit.dist.dist_ref.dists.lognormal_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -121,7 +121,7 @@
             Returns the <span class="emphasis"><em>scale</em></span> parameter of this distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.lognormal_dist.non_member_accessors"></a><h5>
-<a name="id597367"></a>
+<a name="id621841"></a>
             <a href="lognormal_dist.html#math_toolkit.dist.dist_ref.dists.lognormal_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -141,7 +141,7 @@
             The domain of the random variable is [0,+&#8734;].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.lognormal_dist.accuracy"></a><h5>
-<a name="id597535"></a>
+<a name="id622009"></a>
             <a href="lognormal_dist.html#math_toolkit.dist.dist_ref.dists.lognormal_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -150,7 +150,7 @@
             function</a>, and as such should have very low error rates.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.lognormal_dist.implementation"></a><h5>
-<a name="id597576"></a>
+<a name="id622050"></a>
             <a href="lognormal_dist.html#math_toolkit.dist.dist_ref.dists.lognormal_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -318,8 +318,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/negative_binomial_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/negative_binomial_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/negative_binomial_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,20 +7,20 @@
 <link rel="start" href="../../../../index.html" title="Math Toolkit">
 <link rel="up" href="../dists.html" title="Distributions">
 <link rel="prev" href="lognormal_dist.html" title="Log Normal Distribution">
-<link rel="next" href="normal_dist.html" title="Normal (Gaussian) Distribution">
+<link rel="next" href="nc_beta_dist.html" title="Noncentral Beta Distribution">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="lognormal_dist.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../dists.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="normal_dist.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="lognormal_dist.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../dists.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="nc_beta_dist.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
@@ -113,17 +113,17 @@
             <span class="emphasis"><em>p</em></span> changes:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/neg_binomial_pdf1.png" alt="neg_binomial_pdf1"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/negative_binomial_pdf_1.png" align="middle"></span>
           </p>
 <p>
             Alternatively, this graph shows how the shape of the PDF varies as the
             number of successes changes:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/neg_binomial_pdf2.png" alt="neg_binomial_pdf2"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/negative_binomial_pdf_2.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.related_distributions"></a><h5>
-<a name="id599019"></a>
+<a name="id623528"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.related_distributions">Related
             Distributions</a>
           </h5>
@@ -200,12 +200,12 @@
 <p>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.member_functions"></a><h5>
-<a name="id599223"></a>
+<a name="id623732"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.member_functions">Member
             Functions</a>
           </h5>
 <a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.construct"></a><h6>
-<a name="id599250"></a>
+<a name="id623760"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.construct">Construct</a>
           </h6>
 <pre class="programlisting"><span class="identifier">negative_binomial_distribution</span><span class="special">(</span><span class="identifier">RealType</span> <span class="identifier">r</span><span class="special">,</span> <span class="identifier">RealType</span> <span class="identifier">p</span><span class="special">);</span>
@@ -221,7 +221,7 @@
             <span class="special">&lt;=</span> <span class="number">1</span></code>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.accessors"></a><h6>
-<a name="id599405"></a>
+<a name="id623915"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.accessors">Accessors</a>
           </h6>
 <pre class="programlisting"><span class="identifier">RealType</span> <span class="identifier">success_fraction</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> <span class="comment">// successes / trials (0 &lt;= p &lt;= 1)
@@ -237,7 +237,7 @@
             was constructed.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.lower_bound_on_parameter_p"></a><h6>
-<a name="id599531"></a>
+<a name="id624040"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.lower_bound_on_parameter_p">Lower
             Bound on Parameter p</a>
           </h6>
@@ -298,7 +298,7 @@
             vol. 48, no3, 605-621</a>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.upper_bound_on_parameter_p"></a><h6>
-<a name="id599894"></a>
+<a name="id624404"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.upper_bound_on_parameter_p">Upper
             Bound on Parameter p</a>
           </h6>
@@ -358,7 +358,7 @@
             vol. 48, no3, 605-621</a>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.estimating_number_of_trials_to_ensure_at_least_a_certain_number_of_failures"></a><h6>
-<a name="id600257"></a>
+<a name="id624766"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.estimating_number_of_trials_to_ensure_at_least_a_certain_number_of_failures">Estimating
             Number of Trials to Ensure at Least a Certain Number of Failures</a>
           </h6>
@@ -409,7 +409,7 @@
             probability of observing k failures or fewer.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.estimating_number_of_trials_to_ensure_a_maximum_number_of_failures_or_less"></a><h6>
-<a name="id600564"></a>
+<a name="id625073"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.estimating_number_of_trials_to_ensure_a_maximum_number_of_failures_or_less">Estimating
             Number of Trials to Ensure a Maximum Number of Failures or Less</a>
           </h6>
@@ -457,7 +457,7 @@
             probability of observing more than k failures.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.non_member_accessors"></a><h5>
-<a name="id600881"></a>
+<a name="id625390"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -478,7 +478,7 @@
             in the context of this distribution:
           </p>
 <div class="table">
-<a name="id601044"></a><p class="title"><b>Table 10. Meaning of the non-member accessors.</b></p>
+<a name="id625554"></a><p class="title"><b>Table 12. Meaning of the non-member accessors.</b></p>
 <div class="table-contents"><table class="table" summary="Meaning of the non-member accessors.">
 <colgroup>
 <col>
@@ -603,7 +603,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.accuracy"></a><h5>
-<a name="id601609"></a>
+<a name="id626112"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -613,7 +613,7 @@
             please refer to these functions for information on accuracy.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.negative_binomial_dist.implementation"></a><h5>
-<a name="id601659"></a>
+<a name="id626162"></a>
             <a href="negative_binomial_dist.html#math_toolkit.dist.dist_ref.dists.negative_binomial_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -894,8 +894,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -903,7 +903,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="lognormal_dist.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../dists.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="normal_dist.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="lognormal_dist.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../dists.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="nc_beta_dist.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/normal_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/normal_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/normal_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Math Toolkit">
 <link rel="up" href="../dists.html" title="Distributions">
-<link rel="prev" href="negative_binomial_dist.html" title="Negative Binomial Distribution">
+<link rel="prev" href="nc_t_dist.html" title="Noncentral T Distribution">
 <link rel="next" href="pareto.html" title="Pareto Distribution">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -14,13 +14,13 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="negative_binomial_dist.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../dists.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pareto.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="nc_t_dist.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../dists.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pareto.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
@@ -76,10 +76,10 @@
             graph:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/normal.png" alt="normal"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/normal_pdf.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.normal_dist.member_functions"></a><h5>
-<a name="id603350"></a>
+<a name="id636448"></a>
             <a href="normal_dist.html#math_toolkit.dist.dist_ref.dists.normal_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -109,7 +109,7 @@
             be used generically).
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.normal_dist.non_member_accessors"></a><h5>
-<a name="id603624"></a>
+<a name="id636722"></a>
             <a href="normal_dist.html#math_toolkit.dist.dist_ref.dists.normal_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -131,7 +131,7 @@
             and complement cdf -&#8734; = 1 and +&#8734; = 0, if RealType permits.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.normal_dist.accuracy"></a><h5>
-<a name="id603801"></a>
+<a name="id636899"></a>
             <a href="normal_dist.html#math_toolkit.dist.dist_ref.dists.normal_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -139,7 +139,7 @@
             function</a>, and as such should have very low error rates.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.normal_dist.implementation"></a><h5>
-<a name="id603841"></a>
+<a name="id636939"></a>
             <a href="normal_dist.html#math_toolkit.dist.dist_ref.dists.normal_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -289,8 +289,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -298,7 +298,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="negative_binomial_dist.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../dists.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pareto.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="nc_t_dist.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../dists.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pareto.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/pareto.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/pareto.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/pareto.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -72,20 +72,26 @@
             A classic example is that 80% of the wealth is owned by 20% of the population.
           </p>
 <p>
- The following graph illustrates how the PDF varies with the shape parameter
+ The following graph illustrates how the PDF varies with the location
+ parameter &#946;:
+ </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/pareto_pdf1.png" align="middle"></span>
+ </p>
+<p>
+ And this graph illustrates how the PDF varies with the shape parameter
             &#945;:
           </p>
 <p>
- <a href="http://upload.wikimedia.org/wikipedia/commons/thumb/d/d9/Pareto_distributionPDF.png/325px-Pareto_distributionPDF.png" target="_top">Pareto
- pdf</a>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/pareto_pdf2.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.pareto.related_distributions"></a><h5>
-<a name="id604800"></a>
+<a name="id637962"></a>
             <a href="pareto.html#math_toolkit.dist.dist_ref.dists.pareto.related_distributions">Related
             distributions</a>
           </h5>
 <a name="math_toolkit.dist.dist_ref.dists.pareto.member_functions"></a><h5>
-<a name="id604824"></a>
+<a name="id637986"></a>
             <a href="pareto.html#math_toolkit.dist.dist_ref.dists.pareto.member_functions">Member
             Functions</a>
           </h5>
@@ -111,7 +117,7 @@
             Returns the <span class="emphasis"><em>shape</em></span> parameter of this distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.pareto.non_member_accessors"></a><h5>
-<a name="id605054"></a>
+<a name="id638217"></a>
             <a href="pareto.html#math_toolkit.dist.dist_ref.dists.pareto.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -131,7 +137,7 @@
             The supported domain of the random variable is [location, &#8734;].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.pareto.accuracy"></a><h5>
-<a name="id605227"></a>
+<a name="id638389"></a>
             <a href="pareto.html#math_toolkit.dist.dist_ref.dists.pareto.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -141,7 +147,7 @@
             to unity.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.pareto.implementation"></a><h5>
-<a name="id605281"></a>
+<a name="id638443"></a>
             <a href="pareto.html#math_toolkit.dist.dist_ref.dists.pareto.implementation">Implementation</a>
           </h5>
 <p>
@@ -309,7 +315,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.pareto.references"></a><h5>
-<a name="id605637"></a>
+<a name="id638799"></a>
             <a href="pareto.html#math_toolkit.dist.dist_ref.dists.pareto.references">References</a>
           </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -322,8 +328,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/poisson_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/poisson_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/poisson_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -80,7 +80,7 @@
             &#955;:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/poisson.png" alt="poisson"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/poisson_pdf_1.png" align="middle"></span>
           </p>
 <p>
             </p>
@@ -122,7 +122,7 @@
 <p>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.poisson_dist.member_functions"></a><h5>
-<a name="id606377"></a>
+<a name="id639554"></a>
             <a href="poisson_dist.html#math_toolkit.dist.dist_ref.dists.poisson_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -137,7 +137,7 @@
             Returns the <span class="emphasis"><em>mean</em></span> of this distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.poisson_dist.non_member_accessors"></a><h5>
-<a name="id606501"></a>
+<a name="id639678"></a>
             <a href="poisson_dist.html#math_toolkit.dist.dist_ref.dists.poisson_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -157,7 +157,7 @@
             The domain of the random variable is [0, &#8734;].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.poisson_dist.accuracy"></a><h5>
-<a name="id606670"></a>
+<a name="id639848"></a>
             <a href="poisson_dist.html#math_toolkit.dist.dist_ref.dists.poisson_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -171,7 +171,7 @@
             using an iterative method with a lower tolerance to avoid excessive computation.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.poisson_dist.implementation"></a><h5>
-<a name="id606719"></a>
+<a name="id639896"></a>
             <a href="poisson_dist.html#math_toolkit.dist.dist_ref.dists.poisson_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -326,8 +326,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/rayleigh.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/rayleigh.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/rayleigh.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -77,16 +77,16 @@
             varies with the shape parameter &#963;:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/rayleigh_pdf.png" alt="rayleigh_pdf"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/rayleigh_pdf.png" align="middle"></span>
           </p>
 <p>
             and the Cumulative Distribution Function (cdf)
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/rayleigh_cdf.png" alt="rayleigh_cdf"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/rayleigh_cdf.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.rayleigh.related_distributions"></a><h5>
-<a name="id607630"></a>
+<a name="id640836"></a>
             <a href="rayleigh.html#math_toolkit.dist.dist_ref.dists.rayleigh.related_distributions">Related
             distributions</a>
           </h5>
@@ -102,7 +102,7 @@
             distribution</a>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.rayleigh.member_functions"></a><h5>
-<a name="id607705"></a>
+<a name="id640912"></a>
             <a href="rayleigh.html#math_toolkit.dist.dist_ref.dists.rayleigh.member_functions">Member
             Functions</a>
           </h5>
@@ -121,7 +121,7 @@
             Returns the <span class="emphasis"><em>sigma</em></span> parameter of this distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.rayleigh.non_member_accessors"></a><h5>
-<a name="id607852"></a>
+<a name="id641058"></a>
             <a href="rayleigh.html#math_toolkit.dist.dist_ref.dists.rayleigh.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -141,7 +141,7 @@
             The domain of the random variable is [0, max_value].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.rayleigh.accuracy"></a><h5>
-<a name="id608022"></a>
+<a name="id641229"></a>
             <a href="rayleigh.html#math_toolkit.dist.dist_ref.dists.rayleigh.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -151,7 +151,7 @@
             using NTL RR type with 150-bit accuracy, about 50 decimal digits.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.rayleigh.implementation"></a><h5>
-<a name="id608078"></a>
+<a name="id641285"></a>
             <a href="rayleigh.html#math_toolkit.dist.dist_ref.dists.rayleigh.implementation">Implementation</a>
           </h5>
 <p>
@@ -320,7 +320,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.rayleigh.references"></a><h5>
-<a name="id608467"></a>
+<a name="id641675"></a>
             <a href="rayleigh.html#math_toolkit.dist.dist_ref.dists.rayleigh.references">References</a>
           </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -332,8 +332,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/students_t_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/students_t_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/students_t_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -94,10 +94,10 @@
             the PDF varies with the degrees of freedom &#957;:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/students_t.png" alt="students_t"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/students_t_pdf.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.students_t_dist.member_functions"></a><h5>
-<a name="id609255"></a>
+<a name="id642478"></a>
             <a href="students_t_dist.html#math_toolkit.dist.dist_ref.dists.students_t_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -174,7 +174,7 @@
             Engineering Statistics Handbook</a>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.students_t_dist.non_member_accessors"></a><h5>
-<a name="id609641"></a>
+<a name="id642863"></a>
             <a href="students_t_dist.html#math_toolkit.dist.dist_ref.dists.students_t_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -194,7 +194,7 @@
             The domain of the random variable is [-&#8734;, +&#8734;].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.students_t_dist.examples"></a><h5>
-<a name="id609811"></a>
+<a name="id643033"></a>
             <a href="students_t_dist.html#math_toolkit.dist.dist_ref.dists.students_t_dist.examples">Examples</a>
           </h5>
 <p>
@@ -202,7 +202,7 @@
             are available illustrating the use of the Student's t distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.students_t_dist.accuracy"></a><h5>
-<a name="id609851"></a>
+<a name="id643073"></a>
             <a href="students_t_dist.html#math_toolkit.dist.dist_ref.dists.students_t_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -211,7 +211,7 @@
             inverses</a>, refer to accuracy data on those functions for more information.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.students_t_dist.implementation"></a><h5>
-<a name="id609900"></a>
+<a name="id643122"></a>
             <a href="students_t_dist.html#math_toolkit.dist.dist_ref.dists.students_t_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -408,8 +408,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/triangular_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/triangular_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/triangular_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -119,16 +119,16 @@
             density function PDF</a> varies with the various parameters:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/triangular_pdf.png" alt="triangular_pdf"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/triangular_pdf.png" align="middle"></span>
           </p>
 <p>
             and cumulative distribution function
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/triangular_cdf.png" alt="triangular_cdf"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/triangular_cdf.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.triangular_dist.member_functions"></a><h5>
-<a name="id611220"></a>
+<a name="id644483"></a>
             <a href="triangular_dist.html#math_toolkit.dist.dist_ref.dists.triangular_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -163,7 +163,7 @@
             (default+1).
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.triangular_dist.non_member_accessors"></a><h5>
-<a name="id611524"></a>
+<a name="id644787"></a>
             <a href="triangular_dist.html#math_toolkit.dist.dist_ref.dists.triangular_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -184,7 +184,7 @@
             range is lower &lt;= x &lt;= upper.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.triangular_dist.accuracy"></a><h5>
-<a name="id611695"></a>
+<a name="id644959"></a>
             <a href="triangular_dist.html#math_toolkit.dist.dist_ref.dists.triangular_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -193,7 +193,7 @@
             with arguments nearing the extremes of zero and unity.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.triangular_dist.implementation"></a><h5>
-<a name="id611728"></a>
+<a name="id644991"></a>
             <a href="triangular_dist.html#math_toolkit.dist.dist_ref.dists.triangular_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -378,7 +378,7 @@
             Calculate and plot probability distributions</a>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.triangular_dist.references"></a><h5>
-<a name="id612117"></a>
+<a name="id645381"></a>
             <a href="triangular_dist.html#math_toolkit.dist.dist_ref.dists.triangular_dist.references">References</a>
           </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -404,8 +404,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/uniform_dist.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/uniform_dist.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/uniform_dist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -108,16 +108,16 @@
             density function PDF</a> varies with the shape parameter:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/uniform_pdf.png" alt="uniform_pdf"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/uniform_pdf.png" align="middle"></span>
           </p>
 <p>
             Likewise for the CDF:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/uniform_cdf.png" alt="uniform_cdf"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/uniform_cdf.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.uniform_dist.member_functions"></a><h5>
-<a name="id614610"></a>
+<a name="id647947"></a>
             <a href="uniform_dist.html#math_toolkit.dist.dist_ref.dists.uniform_dist.member_functions">Member
             Functions</a>
           </h5>
@@ -144,7 +144,7 @@
             Returns the <span class="emphasis"><em>upper</em></span> parameter of this distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.uniform_dist.non_member_accessors"></a><h5>
-<a name="id614842"></a>
+<a name="id648178"></a>
             <a href="uniform_dist.html#math_toolkit.dist.dist_ref.dists.uniform_dist.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -165,7 +165,7 @@
             range is only <span class="emphasis"><em>lower</em></span> &lt;= x &lt;= <span class="emphasis"><em>upper</em></span>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.uniform_dist.accuracy"></a><h5>
-<a name="id615020"></a>
+<a name="id648356"></a>
             <a href="uniform_dist.html#math_toolkit.dist.dist_ref.dists.uniform_dist.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -173,7 +173,7 @@
             and so should have errors within an epsilon or two.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.uniform_dist.implementation"></a><h5>
-<a name="id615051"></a>
+<a name="id648387"></a>
             <a href="uniform_dist.html#math_toolkit.dist.dist_ref.dists.uniform_dist.implementation">Implementation</a>
           </h5>
 <p>
@@ -337,7 +337,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.uniform_dist.references"></a><h5>
-<a name="id615360"></a>
+<a name="id648696"></a>
             <a href="uniform_dist.html#math_toolkit.dist.dist_ref.dists.uniform_dist.references">References</a>
           </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -351,8 +351,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/weibull.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/weibull.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/weibull.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -90,17 +90,17 @@
             &#945;:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/weibull.png" alt="weibull"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/weibull_pdf1.png" align="middle"></span>
           </p>
 <p>
             While this graph illustrates how the PDF varies with the scale parameter
             &#946;:
           </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../../graphs/weibull2.png" alt="weibull2"></span>
+ <span class="inlinemediaobject"><img src="../../../../../graphs/weibull_pdf2.png" align="middle"></span>
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.weibull.related_distributions"></a><h5>
-<a name="id612878"></a>
+<a name="id646174"></a>
             <a href="weibull.html#math_toolkit.dist.dist_ref.dists.weibull.related_distributions">Related
             distributions</a>
           </h5>
@@ -109,10 +109,12 @@
             distribution</a> appears similar to the <a href="http://en.wikipedia.org/wiki/Normal_distribution" target="_top">normal
             distribution</a>. When &#945; = 1, the Weibull distribution reduces to the
             <a href="http://en.wikipedia.org/wiki/Exponential_distribution" target="_top">exponential
- distribution</a>.
+ distribution</a>. The relationship of the types of extreme value
+ distributions, of which the Weibull is but one, is discussed by <a href="http://www.worldscibooks.com/mathematics/p191.html" target="_top">Extreme Value
+ Distributions, Theory and Applications Samuel Kotz &amp; Saralees Nadarajah</a>.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.weibull.member_functions"></a><h5>
-<a name="id612934"></a>
+<a name="id646241"></a>
             <a href="weibull.html#math_toolkit.dist.dist_ref.dists.weibull.member_functions">Member
             Functions</a>
           </h5>
@@ -138,7 +140,7 @@
             Returns the <span class="emphasis"><em>scale</em></span> parameter of this distribution.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.weibull.non_member_accessors"></a><h5>
-<a name="id613153"></a>
+<a name="id646460"></a>
             <a href="weibull.html#math_toolkit.dist.dist_ref.dists.weibull.non_member_accessors">Non-member
             Accessors</a>
           </h5>
@@ -158,7 +160,7 @@
             The domain of the random variable is [0, &#8734;].
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.weibull.accuracy"></a><h5>
-<a name="id613324"></a>
+<a name="id646632"></a>
             <a href="weibull.html#math_toolkit.dist.dist_ref.dists.weibull.accuracy">Accuracy</a>
           </h5>
 <p>
@@ -168,7 +170,7 @@
             as such should have very low error rates.
           </p>
 <a name="math_toolkit.dist.dist_ref.dists.weibull.implementation"></a><h5>
-<a name="id613396"></a>
+<a name="id646704"></a>
             <a href="weibull.html#math_toolkit.dist.dist_ref.dists.weibull.implementation">Implementation</a>
           </h5>
 <p>
@@ -335,7 +337,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.dist.dist_ref.dists.weibull.references"></a><h5>
-<a name="id613782"></a>
+<a name="id647089"></a>
             <a href="weibull.html#math_toolkit.dist.dist_ref.dists.weibull.references">References</a>
           </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -349,8 +351,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/nmp.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/nmp.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/nmp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -37,7 +37,7 @@
           the function you want if you already know its name.
         </p>
 <a name="function_index"></a><a name="math_toolkit.dist.dist_ref.nmp.function_index"></a><h5>
-<a name="id571325"></a>
+<a name="id595500"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.function_index">Function
           Index</a>
         </h5>
@@ -93,7 +93,7 @@
           </li>
 </ul></div>
 <a name="concept_index"></a><a name="math_toolkit.dist.dist_ref.nmp.conceptual_index"></a><h5>
-<a name="id571581"></a>
+<a name="id595757"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.conceptual_index">Conceptual
           Index</a>
         </h5>
@@ -174,7 +174,7 @@
           </li>
 </ul></div>
 <a name="math.dist.cdf"></a><a name="math_toolkit.dist.dist_ref.nmp.cumulative_distribution_function"></a><h5>
-<a name="id571936"></a>
+<a name="id596113"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.cumulative_distribution_function">Cumulative
           Distribution Function</a>
         </h5>
@@ -198,7 +198,7 @@
           <span class="inlinemediaobject"><img src="../../../../graphs/cdf.png" alt="cdf"></span>
         </p>
 <a name="math.dist.ccdf"></a><a name="math_toolkit.dist.dist_ref.nmp.complement_of_the_cumulative_distribution_function"></a><h5>
-<a name="id572183"></a>
+<a name="id596360"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.complement_of_the_cumulative_distribution_function">Complement
           of the Cumulative Distribution Function</a>
         </h5>
@@ -239,7 +239,7 @@
           complement is useful and when it should be used.
         </p>
 <a name="math.dist.hazard"></a><a name="math_toolkit.dist.dist_ref.nmp.hazard_function"></a><h5>
-<a name="id572599"></a>
+<a name="id596776"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.hazard_function">Hazard Function</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> <span class="keyword">class</span> Policy<span class="special">&gt;</span>
@@ -267,7 +267,7 @@
           </p></td></tr>
 </table></div>
 <a name="math.dist.chf"></a><a name="math_toolkit.dist.dist_ref.nmp.cumulative_hazard_function"></a><h5>
-<a name="id572852"></a>
+<a name="id597030"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.cumulative_hazard_function">Cumulative
           Hazard Function</a>
         </h5>
@@ -295,7 +295,7 @@
           </p></td></tr>
 </table></div>
 <a name="math.dist.mean"></a><a name="math_toolkit.dist.dist_ref.nmp.mean"></a><h5>
-<a name="id573107"></a>
+<a name="id597284"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.mean">mean</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> <span class="keyword">class</span> Policy<span class="special">&gt;</span>
@@ -310,7 +310,7 @@
           distribution).
         </p>
 <a name="math.dist.median"></a><a name="math_toolkit.dist.dist_ref.nmp.median"></a><h5>
-<a name="id573278"></a>
+<a name="id597456"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.median">median</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> <span class="keyword">class</span> Policy<span class="special">&gt;</span>
@@ -320,7 +320,7 @@
           Returns the median of the distribution <span class="emphasis"><em>dist</em></span>.
         </p>
 <a name="math.dist.mode"></a><a name="math_toolkit.dist.dist_ref.nmp.mode"></a><h5>
-<a name="id573436"></a>
+<a name="id597614"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.mode">mode</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> Policy<span class="special">&gt;</span>
@@ -334,7 +334,7 @@
           if the distribution does not have a defined mode.
         </p>
 <a name="math.dist.pdf"></a><a name="math_toolkit.dist.dist_ref.nmp.probability_density_function"></a><h5>
-<a name="id573601"></a>
+<a name="id597779"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.probability_density_function">Probability
           Density Function</a>
         </h5>
@@ -363,7 +363,7 @@
           <span class="inlinemediaobject"><img src="../../../../graphs/pdf.png" alt="pdf"></span>
         </p>
 <a name="math.dist.range"></a><a name="math_toolkit.dist.dist_ref.nmp.range"></a><h5>
-<a name="id573844"></a>
+<a name="id598022"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.range">range</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> <span class="keyword">class</span> Policy<span class="special">&gt;</span>
@@ -373,7 +373,7 @@
           Returns the valid range of the random variable over distribution <span class="emphasis"><em>dist</em></span>.
         </p>
 <a name="math.dist.quantile"></a><a name="math_toolkit.dist.dist_ref.nmp.quantile"></a><h5>
-<a name="id574040"></a>
+<a name="id598217"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.quantile">Quantile</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> <span class="keyword">class</span> Policy<span class="special">&gt;</span>
@@ -402,7 +402,7 @@
           <span class="inlinemediaobject"><img src="../../../../graphs/quantile.png" alt="quantile"></span>
         </p>
 <a name="math.dist.quantile_c"></a><a name="math_toolkit.dist.dist_ref.nmp.quantile_from_the_complement_of_the_probability_"></a><h5>
-<a name="id574357"></a>
+<a name="id598534"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.quantile_from_the_complement_of_the_probability_">Quantile
           from the complement of the probability.</a>
         </h5>
@@ -448,7 +448,7 @@
           <span class="inlinemediaobject"><img src="../../../../graphs/survival_inv.png" alt="survival_inv"></span>
         </p>
 <a name="math.dist.sd"></a><a name="math_toolkit.dist.dist_ref.nmp.standard_deviation"></a><h5>
-<a name="id574835"></a>
+<a name="id599013"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.standard_deviation">Standard
           Deviation</a>
         </h5>
@@ -463,7 +463,7 @@
           if the distribution does not have a defined standard deviation.
         </p>
 <a name="math.dist.support"></a><a name="math_toolkit.dist.dist_ref.nmp.support"></a><h5>
-<a name="id575011"></a>
+<a name="id599188"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.support">support</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> <span class="keyword">class</span> Policy<span class="special">&gt;</span>
@@ -480,7 +480,7 @@
           where the pdf is zero, and the cdf zero or unity.
         </p>
 <a name="math.dist.variance"></a><a name="math_toolkit.dist.dist_ref.nmp.variance"></a><h5>
-<a name="id575223"></a>
+<a name="id599400"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.variance">Variance</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> <span class="keyword">class</span> Policy<span class="special">&gt;</span>
@@ -494,7 +494,7 @@
           if the distribution does not have a defined variance.
         </p>
 <a name="math.dist.skewness"></a><a name="math_toolkit.dist.dist_ref.nmp.skewness"></a><h5>
-<a name="id575396"></a>
+<a name="id599574"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.skewness">Skewness</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> <span class="keyword">class</span> Policy<span class="special">&gt;</span>
@@ -508,7 +508,7 @@
           if the distribution does not have a defined skewness.
         </p>
 <a name="math.dist.kurtosis"></a><a name="math_toolkit.dist.dist_ref.nmp.kurtosis"></a><h5>
-<a name="id575570"></a>
+<a name="id599747"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.kurtosis">Kurtosis</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> <span class="keyword">class</span> Policy<span class="special">&gt;</span>
@@ -550,7 +550,7 @@
           'Proper' kurtosis can have a value from zero to + infinity.
         </p>
 <a name="math.dist.kurtosis_excess"></a><a name="math_toolkit.dist.dist_ref.nmp.kurtosis_excess"></a><h5>
-<a name="id575868"></a>
+<a name="id600045"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.kurtosis_excess">Kurtosis
           excess</a>
         </h5>
@@ -585,7 +585,7 @@
           The kurtosis excess of a normal distribution is zero.
         </p>
 <a name="cdfPQ"></a><a name="math_toolkit.dist.dist_ref.nmp.p_and_q"></a><h5>
-<a name="id576128"></a>
+<a name="id600306"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.p_and_q">P and Q</a>
         </h5>
 <p>
@@ -595,7 +595,7 @@
           returned by these functions.
         </p>
 <a name="percent"></a><a name="math_toolkit.dist.dist_ref.nmp.percent_point_function"></a><h5>
-<a name="id576183"></a>
+<a name="id600361"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.percent_point_function">Percent
           Point Function</a>
         </h5>
@@ -604,7 +604,7 @@
           the Quantile.
         </p>
 <a name="cdf_inv"></a><a name="math_toolkit.dist.dist_ref.nmp.inverse_cdf_function_"></a><h5>
-<a name="id576227"></a>
+<a name="id600404"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.inverse_cdf_function_">Inverse
           CDF Function.</a>
         </h5>
@@ -613,7 +613,7 @@
           <a href="nmp.html#math.dist.quantile">Quantile</a>.
         </p>
 <a name="survival_inv"></a><a name="math_toolkit.dist.dist_ref.nmp.inverse_survival_function_"></a><h5>
-<a name="id576271"></a>
+<a name="id600449"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.inverse_survival_function_">Inverse
           Survival Function.</a>
         </h5>
@@ -621,7 +621,7 @@
           The inverse of the survival function, is the same as computing the quantile from the complement of the probability.
         </p>
 <a name="pmf"></a><a name="math_toolkit.dist.dist_ref.nmp.probability_mass_function"></a><h5>
-<a name="id576317"></a>
+<a name="id600495"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.probability_mass_function">Probability
           Mass Function</a>
         </h5>
@@ -635,7 +635,7 @@
           applies to continuous distributions.
         </p>
 <a name="lower_critical"></a><a name="math_toolkit.dist.dist_ref.nmp.lower_critical_value_"></a><h5>
-<a name="id576377"></a>
+<a name="id600554"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.lower_critical_value_">Lower
           Critical Value.</a>
         </h5>
@@ -645,7 +645,7 @@
           the Quantile.
         </p>
 <a name="upper_critical"></a><a name="math_toolkit.dist.dist_ref.nmp.upper_critical_value_"></a><h5>
-<a name="id576422"></a>
+<a name="id600600"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.upper_critical_value_">Upper
           Critical Value.</a>
         </h5>
@@ -656,7 +656,7 @@
           complement of the probability</a>.
         </p>
 <a name="survival"></a><a name="math_toolkit.dist.dist_ref.nmp.survival_function"></a><h5>
-<a name="id576469"></a>
+<a name="id600647"></a>
           <a href="nmp.html#math_toolkit.dist.dist_ref.nmp.survival_function">Survival
           Function</a>
         </h5>
@@ -667,8 +667,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/future.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/future.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/future.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.dist.future"></a> Extras/Future Directions
 </h3></div></div></div>
 <a name="math_toolkit.dist.future.adding_additional_location_and_scale_parameters"></a><h5>
-<a name="id616918"></a>
+<a name="id650254"></a>
         <a href="future.html#math_toolkit.dist.future.adding_additional_location_and_scale_parameters">Adding
         Additional Location and Scale Parameters</a>
       </h5>
@@ -55,7 +55,7 @@
         functions.
       </p>
 <a name="math_toolkit.dist.future.an__quot_any_distribution_quot__class"></a><h5>
-<a name="id617145"></a>
+<a name="id650481"></a>
         <a href="future.html#math_toolkit.dist.future.an__quot_any_distribution_quot__class">An
         "any_distribution" class</a>
       </h5>
@@ -84,7 +84,7 @@
         use case: this needs more investigation.
       </p>
 <a name="math_toolkit.dist.future.higher_level_hypothesis_tests"></a><h5>
-<a name="id617442"></a>
+<a name="id650778"></a>
         <a href="future.html#math_toolkit.dist.future.higher_level_hypothesis_tests">Higher
         Level Hypothesis Tests</a>
       </h5>
@@ -104,7 +104,7 @@
         <span class="emphasis"><em>expected_mean</em></span>.
       </p>
 <a name="math_toolkit.dist.future.integration_with_statistical_accumulators"></a><h5>
-<a name="id617674"></a>
+<a name="id651009"></a>
         <a href="future.html#math_toolkit.dist.future.integration_with_statistical_accumulators">Integration
         With Statistical Accumulators</a>
       </h5>
@@ -126,8 +126,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -91,6 +91,10 @@
           Distribution Examples</a></span></dt>
 <dd><dl><dt><span class="section"><a href="stat_tut/weg/normal_example/normal_misc.html">
             Some Miscellaneous Examples of the Normal (Gaussian) Distribution</a></span></dt></dl></dd>
+<dt><span class="section"><a href="stat_tut/weg/nccs_eg.html"> Non Central
+ Chi Squared Example</a></span></dt>
+<dd><dl><dt><span class="section"><a href="stat_tut/weg/nccs_eg/nccs_power_eg.html">
+ Tables of the power function of the &#967;<sup>2</sup> test.</a></span></dt></dl></dd>
 <dt><span class="section"><a href="stat_tut/weg/error_eg.html"> Error Handling
           Example</a></span></dt>
 <dt><span class="section"><a href="stat_tut/weg/find_eg.html"> Find Location
@@ -119,8 +123,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/dist_params.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/dist_params.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/dist_params.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -83,8 +83,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/overview.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/overview.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/overview.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.dist.stat_tut.overview"></a> Overview
 </h4></div></div></div>
 <a name="math_toolkit.dist.stat_tut.overview.headers_and_namespaces"></a><h5>
-<a name="id497201"></a>
+<a name="id518374"></a>
           <a href="overview.html#math_toolkit.dist.stat_tut.overview.headers_and_namespaces">Headers
           and Namespaces</a>
         </h5>
@@ -44,7 +44,7 @@
           or &lt;boost/math/distributions.hpp&gt;
         </p>
 <a name="math_toolkit.dist.stat_tut.overview.distributions_are_objects"></a><h5>
-<a name="id497254"></a>
+<a name="id518429"></a>
           <a href="overview.html#math_toolkit.dist.stat_tut.overview.distributions_are_objects">Distributions
           are Objects</a>
         </h5>
@@ -131,7 +131,7 @@
           and <span class="emphasis"><em>quantiles</em></span> etc for these distributions.
         </p>
 <a name="math_toolkit.dist.stat_tut.overview.generic_operations_common_to_all_distributions_are_non_member_functions"></a><h5>
-<a name="id497787"></a>
+<a name="id518961"></a>
           <a href="overview.html#math_toolkit.dist.stat_tut.overview.generic_operations_common_to_all_distributions_are_non_member_functions">Generic
           operations common to all distributions are non-member functions</a>
         </h5>
@@ -230,23 +230,42 @@
           <code class="computeroutput"><span class="identifier">pdf</span><span class="special">(</span><span class="identifier">binomial_distribution</span><span class="special">&lt;</span><span class="identifier">RealType</span><span class="special">&gt;(</span><span class="identifier">n</span><span class="special">,</span> <span class="identifier">p</span><span class="special">),</span> <span class="identifier">k</span><span class="special">);</span></code>
         </p>
 <p>
+ The ranges of random variate values that are permitted and are supported
+ can be tested by using two functions <code class="computeroutput"><span class="identifier">range</span></code>
+ and <code class="computeroutput"><span class="identifier">support</span></code>.
+ </p>
+<p>
           The distribution (effectively the random variate) is said to be 'supported'
           over a range that is <a href="http://en.wikipedia.org/wiki/Probability_distribution" target="_top">"the
           smallest closed set whose complement has probability zero"</a>.
           MathWorld uses the word 'defined' for this range. Non-mathematicians might
           say it means the 'interesting' smallest range of random variate x that
           has the cdf going from zero to unity. Outside are uninteresting zones where
- the pdf is zero, and the cdf zero or unity. Mathematically, the functions
- may make sense with an (+ or -) infinite value, but except for a few special
- cases (in the Normal and Cauchy distributions) this implementation limits
- random variates to finite values from the <code class="computeroutput"><span class="identifier">max</span></code>
- to <code class="computeroutput"><span class="identifier">min</span></code> for the <code class="computeroutput"><span class="identifier">RealType</span></code>. (See <a href="../../backgrounders/implementation.html#math_toolkit.backgrounders.implementation.handling_of_floating_point_infinity">Handling
- of Floating-Point Infinity</a> for rationale).
+ the pdf is zero, and the cdf zero or unity.
         </p>
 <p>
- The range of random variate values that is permitted and supported can
- be tested by using two functions <code class="computeroutput"><span class="identifier">range</span></code>
- and <code class="computeroutput"><span class="identifier">support</span></code>.
+ For most distributions, with probability distribution functions one might
+ describe as 'well-behaved', we have decided that it is most useful for
+ the supported range to exclude random variate values like exact zero <span class="bold"><strong>if the end point is discontinuous</strong></span>. For example,
+ the Weibull (scale 1, shape 1) distribution smoothly heads for unity as
+ the random variate x declines towards zero. But at x = zero, the value
+ of the pdf is suddenly exactly zero, by definition. If you are plotting
+ the PDF, or otherwise calculating, zero is not the most useful value for
+ the lower limit of supported, as we discovered. So for this, and similar
+ distributions, we have decided it is most numerically useful to use the
+ closest value to zero, min_value, for the limit of the supported range.
+ (The <code class="computeroutput"><span class="identifier">range</span></code> remains from
+ zero, so you will still get <code class="computeroutput"><span class="identifier">pdf</span><span class="special">(</span><span class="identifier">weibull</span><span class="special">,</span> <span class="number">0</span><span class="special">)</span>
+ <span class="special">==</span> <span class="number">0</span></code>).
+ (Exponential and gamma distributions have similarly discontinuous functions).
+ </p>
+<p>
+ Mathematically, the functions may make sense with an (+ or -) infinite
+ value, but except for a few special cases (in the Normal and Cauchy distributions)
+ this implementation limits random variates to finite values from the <code class="computeroutput"><span class="identifier">max</span></code> to <code class="computeroutput"><span class="identifier">min</span></code>
+ for the <code class="computeroutput"><span class="identifier">RealType</span></code>. (See
+ <a href="../../backgrounders/implementation.html#math_toolkit.backgrounders.implementation.handling_of_floating_point_infinity">Handling
+ of Floating-Point Infinity</a> for rationale).
         </p>
 <div class="note"><table border="0" summary="Note">
 <tr>
@@ -307,7 +326,7 @@
 <a name="complements"></a><p>
         </p>
 <a name="math_toolkit.dist.stat_tut.overview.complements_are_supported_too"></a><h5>
-<a name="id498520"></a>
+<a name="id519794"></a>
           <a href="overview.html#math_toolkit.dist.stat_tut.overview.complements_are_supported_too">Complements
           are supported too</a>
         </h5>
@@ -442,7 +461,7 @@
 </td></tr>
 </table></div>
 <a name="math_toolkit.dist.stat_tut.overview.parameters_can_be_calculated"></a><h5>
-<a name="id499699"></a>
+<a name="id520977"></a>
           <a href="overview.html#math_toolkit.dist.stat_tut.overview.parameters_can_be_calculated">Parameters
           can be calculated</a>
         </h5>
@@ -473,7 +492,7 @@
           sample size.
         </p>
 <a name="math_toolkit.dist.stat_tut.overview.summary"></a><h5>
-<a name="id499851"></a>
+<a name="id521141"></a>
           <a href="overview.html#math_toolkit.dist.stat_tut.overview.summary">Summary</a>
         </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -507,8 +526,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/variates.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/variates.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/variates.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -59,8 +59,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -87,6 +87,10 @@
           Distribution Examples</a></span></dt>
 <dd><dl><dt><span class="section"><a href="weg/normal_example/normal_misc.html">
             Some Miscellaneous Examples of the Normal (Gaussian) Distribution</a></span></dt></dl></dd>
+<dt><span class="section"><a href="weg/nccs_eg.html"> Non Central
+ Chi Squared Example</a></span></dt>
+<dd><dl><dt><span class="section"><a href="weg/nccs_eg/nccs_power_eg.html">
+ Tables of the power function of the &#967;<sup>2</sup> test.</a></span></dt></dl></dd>
 <dt><span class="section"><a href="weg/error_eg.html"> Error Handling
           Example</a></span></dt>
 <dt><span class="section"><a href="weg/find_eg.html"> Find Location
@@ -109,8 +113,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -45,8 +45,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binom_conf.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binom_conf.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binom_conf.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -227,8 +227,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binom_size_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binom_size_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binom_size_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -143,8 +143,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binomial_coinflip_example.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binomial_coinflip_example.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binomial_coinflip_example.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -391,8 +391,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binomial_quiz_example.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binomial_quiz_example.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/binom_eg/binomial_quiz_example.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -497,7 +497,7 @@
               <a name="math_toolkit.dist.stat_tut.weg.binom_eg.binomial_quiz_example.using_binomial_distribution_moments"></a>
               </p>
 <h5>
-<a name="id528045"></a>
+<a name="id549391"></a>
                 <a href="binomial_quiz_example.html#math_toolkit.dist.stat_tut.weg.binom_eg.binomial_quiz_example.using_binomial_distribution_moments">Using
                 Binomial distribution moments</a>
               </h5>
@@ -534,7 +534,7 @@
               <a name="math_toolkit.dist.stat_tut.weg.binom_eg.binomial_quiz_example.quantiles"></a>
               </p>
 <h5>
-<a name="id528562"></a>
+<a name="id549908"></a>
                 <a href="binomial_quiz_example.html#math_toolkit.dist.stat_tut.weg.binom_eg.binomial_quiz_example.quantiles">Quantiles</a>
               </h5>
 <p>
@@ -726,8 +726,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -39,8 +39,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_intervals.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_intervals.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_intervals.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -139,7 +139,7 @@
               is between 0.00551 and 0.00729.
             </p>
 <a name="math_toolkit.dist.stat_tut.weg.cs_eg.chi_sq_intervals.confidence_intervals_as_a_function_of_the_number_of_observations"></a><h5>
-<a name="id511672"></a>
+<a name="id532887"></a>
               <a href="chi_sq_intervals.html#math_toolkit.dist.stat_tut.weg.cs_eg.chi_sq_intervals.confidence_intervals_as_a_function_of_the_number_of_observations">Confidence
               intervals as a function of the number of observations</a>
             </h5>
@@ -220,8 +220,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_size.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_size.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_size.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -166,8 +166,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_test.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_test.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/cs_eg/chi_sq_test.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -280,8 +280,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/dist_construct_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/dist_construct_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/dist_construct_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -332,7 +332,7 @@
             <a name="math_toolkit.dist.stat_tut.weg.dist_construct_eg.default_arguments_to_distribution_constructors_"></a>
             </p>
 <h6>
-<a name="id502028"></a>
+<a name="id523318"></a>
               <a href="dist_construct_eg.html#math_toolkit.dist.stat_tut.weg.dist_construct_eg.default_arguments_to_distribution_constructors_">Default
               arguments to distribution constructors.</a>
             </h6>
@@ -396,8 +396,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/error_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/error_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/error_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Math Toolkit">
 <link rel="up" href="../weg.html" title="Worked Examples">
-<link rel="prev" href="normal_example/normal_misc.html" title="Some Miscellaneous Examples of the Normal (Gaussian) Distribution">
+<link rel="prev" href="nccs_eg/nccs_power_eg.html" title="Tables of the power function of the &#967;2 test.">
 <link rel="next" href="find_eg.html" title="Find Location and Scale Examples">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -14,13 +14,13 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="normal_example/normal_misc.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../weg.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find_eg.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="nccs_eg/nccs_power_eg.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../weg.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find_eg.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
@@ -250,8 +250,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -259,7 +259,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="normal_example/normal_misc.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../weg.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find_eg.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="nccs_eg/nccs_power_eg.html"><img src="../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../weg.html"><img src="../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find_eg.html"><img src="../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/f_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/f_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/f_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -315,8 +315,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -38,8 +38,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_location_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_location_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_location_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -175,7 +175,7 @@
               <a name="math_toolkit.dist.stat_tut.weg.find_eg.find_location_eg.controlling_error_handling_from_find_location"></a>
               </p>
 <h5>
-<a name="id559470"></a>
+<a name="id583651"></a>
                 <a href="find_location_eg.html#math_toolkit.dist.stat_tut.weg.find_eg.find_location_eg.controlling_error_handling_from_find_location">Controlling
                 Error Handling from find_location</a>
               </h5>
@@ -266,8 +266,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_mean_and_sd_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_mean_and_sd_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_mean_and_sd_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -62,7 +62,7 @@
               <a name="math_toolkit.dist.stat_tut.weg.find_eg.find_mean_and_sd_eg.using_find_location_and_find_scale_to_meet_dispensing_and_measurement_specifications"></a>
               </p>
 <h5>
-<a name="id564633"></a>
+<a name="id588821"></a>
                 <a href="find_mean_and_sd_eg.html#math_toolkit.dist.stat_tut.weg.find_eg.find_mean_and_sd_eg.using_find_location_and_find_scale_to_meet_dispensing_and_measurement_specifications">Using
                 find_location and find_scale to meet dispensing and measurement specifications</a>
               </h5>
@@ -246,7 +246,7 @@
               <a name="math_toolkit.dist.stat_tut.weg.find_eg.find_mean_and_sd_eg.using_cauchy_lorentz_instead_of_normal_distribution"></a>
               </p>
 <h5>
-<a name="id566280"></a>
+<a name="id590468"></a>
                 <a href="find_mean_and_sd_eg.html#math_toolkit.dist.stat_tut.weg.find_eg.find_mean_and_sd_eg.using_cauchy_lorentz_instead_of_normal_distribution">Using
                 Cauchy-Lorentz instead of normal distribution</a>
               </h5>
@@ -397,7 +397,7 @@
               <a name="math_toolkit.dist.stat_tut.weg.find_eg.find_mean_and_sd_eg.changing_the_scale_or_standard_deviation"></a>
               </p>
 <h5>
-<a name="id567233"></a>
+<a name="id591414"></a>
                 <a href="find_mean_and_sd_eg.html#math_toolkit.dist.stat_tut.weg.find_eg.find_mean_and_sd_eg.changing_the_scale_or_standard_deviation">Changing
                 the scale or standard deviation</a>
               </h5>
@@ -711,8 +711,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_scale_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_scale_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/find_eg/find_scale_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -179,7 +179,7 @@
               <a name="math_toolkit.dist.stat_tut.weg.find_eg.find_scale_eg.controlling_how_errors_from_find_scale_are_handled"></a>
               </p>
 <h5>
-<a name="id562485"></a>
+<a name="id586666"></a>
                 <a href="find_scale_eg.html#math_toolkit.dist.stat_tut.weg.find_eg.find_scale_eg.controlling_how_errors_from_find_scale_are_handled">Controlling
                 how Errors from find_scale are handled</a>
               </h5>
@@ -291,8 +291,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/nag_library.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/nag_library.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/nag_library.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -99,8 +99,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -45,8 +45,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/neg_binom_conf.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/neg_binom_conf.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/neg_binom_conf.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -251,8 +251,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/neg_binom_size_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/neg_binom_size_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/neg_binom_size_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -233,8 +233,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/negative_binomial_example1.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/negative_binomial_example1.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/negative_binomial_example1.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -791,8 +791,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/negative_binomial_example2.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/negative_binomial_example2.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/neg_binom_eg/negative_binomial_example2.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -135,8 +135,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/normal_example.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/normal_example.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/normal_example.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -36,8 +36,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/normal_example/normal_misc.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/normal_example/normal_misc.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/normal_example/normal_misc.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,20 +7,20 @@
 <link rel="start" href="../../../../../index.html" title="Math Toolkit">
 <link rel="up" href="../normal_example.html" title="Normal Distribution Examples">
 <link rel="prev" href="../normal_example.html" title="Normal Distribution Examples">
-<link rel="next" href="../error_eg.html" title="Error Handling Example">
+<link rel="next" href="../nccs_eg.html" title="Non Central Chi Squared Example">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../normal_example.html"><img src="../../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../normal_example.html"><img src="../../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../../index.html"><img src="../../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../error_eg.html"><img src="../../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../normal_example.html"><img src="../../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../normal_example.html"><img src="../../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../../index.html"><img src="../../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../nccs_eg.html"><img src="../../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h6 class="title">
@@ -32,7 +32,7 @@
               illustrates their use.
             </p>
 <a name="math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.traditional_tables"></a><h5>
-<a name="id547398"></a>
+<a name="id568697"></a>
               <a href="normal_misc.html#math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.traditional_tables">Traditional
               Tables</a>
             </h5>
@@ -278,7 +278,7 @@
 <p>
             </p>
 <a name="math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.standard_deviations_either_side_of_the_mean"></a><h5>
-<a name="id550559"></a>
+<a name="id571858"></a>
               <a href="normal_misc.html#math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.standard_deviations_either_side_of_the_mean">Standard
               deviations either side of the Mean</a>
             </h5>
@@ -346,12 +346,12 @@
 <p>
             </p>
 <a name="math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.some_simple_examples"></a><h5>
-<a name="id551292"></a>
+<a name="id572591"></a>
               <a href="normal_misc.html#math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.some_simple_examples">Some
               simple examples</a>
             </h5>
 <a name="math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.life_of_light_bulbs"></a><h5>
-<a name="id551318"></a>
+<a name="id572617"></a>
               <a href="normal_misc.html#math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.life_of_light_bulbs">Life
               of light bulbs</a>
             </h5>
@@ -435,7 +435,7 @@
 <p>
             </p>
 <a name="math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.how_many_onions_"></a><h5>
-<a name="id552020"></a>
+<a name="id573319"></a>
               <a href="normal_misc.html#math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.how_many_onions_">How
               many onions?</a>
             </h5>
@@ -494,7 +494,7 @@
 <p>
             </p>
 <a name="math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.packing_beef"></a><h5>
-<a name="id552592"></a>
+<a name="id573891"></a>
               <a href="normal_misc.html#math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.packing_beef">Packing
               beef</a>
             </h5>
@@ -703,7 +703,7 @@
 <p>
             </p>
 <a name="math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.length_of_bolts"></a><h5>
-<a name="id555587"></a>
+<a name="id576886"></a>
               <a href="normal_misc.html#math_toolkit.dist.stat_tut.weg.normal_example.normal_misc.length_of_bolts">Length
               of bolts</a>
             </h5>
@@ -744,8 +744,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -753,7 +753,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../normal_example.html"><img src="../../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../normal_example.html"><img src="../../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../../index.html"><img src="../../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../error_eg.html"><img src="../../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../normal_example.html"><img src="../../../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../normal_example.html"><img src="../../../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../../index.html"><img src="../../../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../nccs_eg.html"><img src="../../../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -43,8 +43,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/paired_st.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/paired_st.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/paired_st.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -64,8 +64,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_intervals.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_intervals.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_intervals.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -253,8 +253,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_size.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_size.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_size.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -165,8 +165,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_test.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_test.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/tut_mean_test.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -319,8 +319,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/two_sample_students_t.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/two_sample_students_t.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/two_sample_students_t.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -343,8 +343,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -42,6 +42,7 @@
 <dt><span class="section"> Performance</span></dt>
 <dt><span class="section"><a href="main_overview/history1.html"> History and What's
       New</a></span></dt>
+<dt><span class="section"> C99 and TR1 C Functions</span></dt>
 <dt><span class="section"><a href="main_overview/contact.html"> Contact Info and
       Support</a></span></dt>
 </dl></div>
@@ -52,8 +53,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/contact.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/contact.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/contact.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Math Toolkit">
 <link rel="up" href="../main_overview.html" title="Overview">
-<link rel="prev" href="history1.html" title="History and What's New">
+<link rel="prev" href="tr1.html" title="C99 and TR1 C Functions">
 <link rel="next" href="../dist.html" title="Statistical Distributions and Functions">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -14,13 +14,13 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="history1.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../main_overview.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../dist.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="tr1.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../main_overview.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../dist.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
@@ -47,8 +47,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -56,7 +56,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="history1.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../main_overview.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../dist.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="tr1.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../main_overview.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../dist.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/directories.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/directories.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/directories.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
       File Structure</a>
 </h3></div></div></div>
 <a name="math_toolkit.main_overview.directories.boost_math"></a><h5>
-<a name="id435979"></a>
+<a name="id445760"></a>
         <a href="directories.html#math_toolkit.main_overview.directories.boost_math">boost/math</a>
       </h5>
 <div class="variablelist">
@@ -73,7 +73,7 @@
 </dl>
 </div>
 <a name="math_toolkit.main_overview.directories.boost_libs"></a><h5>
-<a name="id436170"></a>
+<a name="id445951"></a>
         <a href="directories.html#math_toolkit.main_overview.directories.boost_libs">boost/libs</a>
       </h5>
 <div class="variablelist">
@@ -109,8 +109,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/error_handling.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/error_handling.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/error_handling.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.main_overview.error_handling"></a> Error Handling
 </h3></div></div></div>
 <a name="math_toolkit.main_overview.error_handling.quick_reference"></a><h5>
-<a name="id491116"></a>
+<a name="id500960"></a>
         <a href="error_handling.html#math_toolkit.main_overview.error_handling.quick_reference">Quick
         Reference</a>
       </h5>
@@ -75,12 +75,25 @@
 <dd><p>
             Occurs when the returned result would be a denormalised value.
           </p></dd>
+<dt><span class="term">Rounding Error</span></dt>
+<dd><p>
+ Occurs when the argument to one of the rounding functions trunc,
+ round and
+ modf can not
+ be represented as an integer type, is is outide the range of the result
+ type.
+ </p></dd>
 <dt><span class="term">Evaluation Error</span></dt>
 <dd><p>
             Occurs when an internal error occured that prevented the result from
             being evaluated: this should never occur, but if it does, then it's likely
             to be due to an iterative method not converging fast enough.
           </p></dd>
+<dt><span class="term">Indeterminate Result Error</span></dt>
+<dd><p>
+ Occurs when the result of a function is not defined for the values that
+ were passed to it.
+ </p></dd>
 </dl>
 </div>
 <p>
@@ -121,7 +134,7 @@
         the default action for each error shown in bold:
       </p>
 <div class="table">
-<a name="id491374"></a><p class="title"><b>Table 1. Possible Actions for Domain Errors</b></p>
+<a name="id501281"></a><p class="title"><b>Table 1. Possible Actions for Domain Errors</b></p>
 <div class="table-contents"><table class="table" summary="Possible Actions for Domain Errors">
 <colgroup>
 <col>
@@ -196,7 +209,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id491690"></a><p class="title"><b>Table 2. Possible Actions for Pole Errors</b></p>
+<a name="id501598"></a><p class="title"><b>Table 2. Possible Actions for Pole Errors</b></p>
 <div class="table-contents"><table class="table" summary="Possible Actions for Pole Errors">
 <colgroup>
 <col>
@@ -271,7 +284,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id492004"></a><p class="title"><b>Table 3. Possible Actions for Overflow Errors</b></p>
+<a name="id501912"></a><p class="title"><b>Table 3. Possible Actions for Overflow Errors</b></p>
 <div class="table-contents"><table class="table" summary="Possible Actions for Overflow Errors">
 <colgroup>
 <col>
@@ -346,7 +359,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id492320"></a><p class="title"><b>Table 4. Possible Actions for Underflow Errors</b></p>
+<a name="id502228"></a><p class="title"><b>Table 4. Possible Actions for Underflow Errors</b></p>
 <div class="table-contents"><table class="table" summary="Possible Actions for Underflow Errors">
 <colgroup>
 <col>
@@ -421,7 +434,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id492543"></a><p class="title"><b>Table 5. Possible Actions for Denorm Errors</b></p>
+<a name="id502451"></a><p class="title"><b>Table 5. Possible Actions for Denorm Errors</b></p>
 <div class="table-contents"><table class="table" summary="Possible Actions for Denorm Errors">
 <colgroup>
 <col>
@@ -496,7 +509,82 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id492768"></a><p class="title"><b>Table 6. Possible Actions for Internal Evaluation
+<a name="id502676"></a><p class="title"><b>Table 6. Possible Actions for Rounding Errors</b></p>
+<div class="table-contents"><table class="table" summary="Possible Actions for Rounding Errors">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Action
+ </p>
+ </th>
+<th>
+ <p>
+ Behaviour
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ throw_on_error
+ </p>
+ </td>
+<td>
+ <p>
+ Throws <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">rounding_error</span></code>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ errno_on_error
+ </p>
+ </td>
+<td>
+ <p>
+ Sets <code class="computeroutput"><span class="special">::</span><span class="identifier">errno</span></code>
+ to <code class="computeroutput"><span class="identifier">ERANGE</span></code> and returns
+ an unspecified value.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ ignore_error
+ </p>
+ </td>
+<td>
+ <p>
+ <span class="bold"><strong>Returns the an unspecified value.</strong></span>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ user_error
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the result of <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">policies</span><span class="special">::</span><span class="identifier">user_rounding_error</span></code>:
+ <a href="../policy/pol_tutorial/user_def_err_pol.html" title="Calling User Defined Error Handlers">this
+ function must be defined by the user</a>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<br class="table-break"><div class="table">
+<a name="id502910"></a><p class="title"><b>Table 7. Possible Actions for Internal Evaluation
       Errors</b></p>
 <div class="table-contents"><table class="table" summary="Possible Actions for Internal Evaluation
       Errors">
@@ -539,7 +627,7 @@
             <p>
               Sets <code class="computeroutput"><span class="special">::</span><span class="identifier">errno</span></code>
               to <code class="computeroutput"><span class="identifier">EDOM</span></code> and returns
- <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">infinity</span><span class="special">()</span></code>.
+ the closest approximation found.
             </p>
             </td>
 </tr>
@@ -551,7 +639,7 @@
             </td>
 <td>
             <p>
- Returns <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">infinity</span><span class="special">()</span></code>.
+ Returns the closest approximation found.
             </p>
             </td>
 </tr>
@@ -572,8 +660,86 @@
 </tbody>
 </table></div>
 </div>
+<br class="table-break"><div class="table">
+<a name="id503145"></a><p class="title"><b>Table 8. Possible Actions for Indeterminate Result
+ Errors</b></p>
+<div class="table-contents"><table class="table" summary="Possible Actions for Indeterminate Result
+ Errors">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Action
+ </p>
+ </th>
+<th>
+ <p>
+ Behaviour
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ throw_on_error
+ </p>
+ </td>
+<td>
+ <p>
+ Throws <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">domain_error</span></code>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ errno_on_error
+ </p>
+ </td>
+<td>
+ <p>
+ Sets <code class="computeroutput"><span class="special">::</span><span class="identifier">errno</span></code>
+ to <code class="computeroutput"><span class="identifier">EDOM</span></code> and returns
+ the same value as <code class="computeroutput"><span class="identifier">ignore_error</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ ignore_error
+ </p>
+ </td>
+<td>
+ <p>
+ <span class="bold"><strong>Returns a default result that depends on the
+ function where the error occurred.</strong></span>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ user_error
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the result of <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">policies</span><span class="special">::</span><span class="identifier">user_indeterminate_result_error</span></code>:
+ <a href="../policy/pol_tutorial/user_def_err_pol.html" title="Calling User Defined Error Handlers">this
+ function must be defined by the user</a>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+</div>
 <br class="table-break"><a name="math_toolkit.main_overview.error_handling.rationale"></a><h5>
-<a name="id493103"></a>
+<a name="id503391"></a>
         <a href="error_handling.html#math_toolkit.main_overview.error_handling.rationale">Rationale</a>
       </h5>
 <p>
@@ -592,7 +758,7 @@
         </li>
 </ul></div>
 <a name="math_toolkit.main_overview.error_handling.finding_more_information"></a><h5>
-<a name="id493152"></a>
+<a name="id503440"></a>
         <a href="error_handling.html#math_toolkit.main_overview.error_handling.finding_more_information">Finding
         More Information</a>
       </h5>
@@ -614,7 +780,7 @@
         The various kind of errors are described in more detail below.
       </p>
 <a name="domain_error"></a><a name="math_toolkit.main_overview.error_handling.domain_errors"></a><h5>
-<a name="id493247"></a>
+<a name="id503535"></a>
         <a href="error_handling.html#math_toolkit.main_overview.error_handling.domain_errors">Domain
         Errors</a>
       </h5>
@@ -707,7 +873,7 @@
         for more details.
       </p>
 <a name="pole_error"></a><a name="math_toolkit.main_overview.error_handling.evaluation_at_a_pole"></a><h5>
-<a name="id493629"></a>
+<a name="id503917"></a>
         <a href="error_handling.html#math_toolkit.main_overview.error_handling.evaluation_at_a_pole">Evaluation
         at a pole</a>
       </h5>
@@ -746,7 +912,7 @@
         for more details.
       </p>
 <a name="overflow_error"></a><a name="math_toolkit.main_overview.error_handling.numeric_overflow"></a><h5>
-<a name="id493951"></a>
+<a name="id504239"></a>
         <a href="error_handling.html#math_toolkit.main_overview.error_handling.numeric_overflow">Numeric
         Overflow</a>
       </h5>
@@ -771,7 +937,7 @@
         doesn't support infinities, the maximum value for the type is returned.
       </p>
 <a name="underflow_error"></a><a name="math_toolkit.main_overview.error_handling.numeric_underflow"></a><h5>
-<a name="id494232"></a>
+<a name="id504519"></a>
         <a href="error_handling.html#math_toolkit.main_overview.error_handling.numeric_underflow">Numeric
         Underflow</a>
       </h5>
@@ -794,7 +960,7 @@
         an <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">underflow_error</span></code> C++ exception.
       </p>
 <a name="denorm_error"></a><a name="math_toolkit.main_overview.error_handling.denormalisation_errors"></a><h5>
-<a name="id494453"></a>
+<a name="id504741"></a>
         <a href="error_handling.html#math_toolkit.main_overview.error_handling.denormalisation_errors">Denormalisation
         Errors</a>
       </h5>
@@ -817,7 +983,7 @@
         throws an <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">underflow_error</span></code> C++ exception.
       </p>
 <a name="evaluation_error"></a><a name="math_toolkit.main_overview.error_handling.evaluation_errors"></a><h5>
-<a name="id494690"></a>
+<a name="id504978"></a>
         <a href="error_handling.html#math_toolkit.main_overview.error_handling.evaluation_errors">Evaluation
         Errors</a>
       </h5>
@@ -853,8 +1019,74 @@
         <a href="../../../../../../format/index.html" target="_top">Boost.Format</a> documentation
         for more details.
       </p>
+<a name="indeterminate_result_error"></a><a name="math_toolkit.main_overview.error_handling.indeterminate_result_errors"></a><h5>
+<a name="id505309"></a>
+ <a href="error_handling.html#math_toolkit.main_overview.error_handling.indeterminate_result_errors">Indeterminate
+ Result Errors</a>
+ </h5>
+<p>
+ When the result of a special function is indeterminate for the value that
+ was passed to it, then the function returns the result of:
+ </p>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">policies</span><span class="special">::</span><span class="identifier">raise_overflow_error</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(</span><span class="identifier">FunctionName</span><span class="special">,</span> <span class="identifier">Message</span><span class="special">,</span> <span class="identifier">Val</span><span class="special">,</span> <span class="identifier">Default</span><span class="special">,</span> Policy<span class="special">);</span>
+</pre>
+<p>
+ Where <code class="computeroutput"><span class="identifier">T</span></code> is the floating-point
+ type passed to the function, <code class="computeroutput"><span class="identifier">FunctionName</span></code>
+ is the name of the function, <code class="computeroutput"><span class="identifier">Message</span></code>
+ is an error message describing the problem, Val is the value for which the
+ result is indeterminate, Default is an alternative default result that must
+ be returned for ignore_error and errno_on_error policies, and Policy
+ is the current policy in use for the function that was called.
+ </p>
+<p>
+ The default policy for this function is <code class="computeroutput"><span class="identifier">ignore_error</span></code>:
+ note that this error type is reserved for situations where the result is
+ mathematically undefined or indeterminate, but there is none the less a convention
+ for what the result should be: for example the C99 standard specifies that
+ the result of 0<sup>0</sup> is 1, even though the result is actually mathematically indeterminate.
+ </p>
+<a name="rounding_error"></a><a name="math_toolkit.main_overview.error_handling.rounding_errors"></a><h5>
+<a name="id505536"></a>
+ <a href="error_handling.html#math_toolkit.main_overview.error_handling.rounding_errors">Rounding
+ Errors</a>
+ </h5>
+<p>
+ When one of the rounding functions round,
+ trunc or modf is called with an
+ argument that has no integer representation, or is too large to be represented
+ in the result type then the value returned is the result of a call to:
+ </p>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">policies</span><span class="special">::</span><span class="identifier">raise_rounding_error</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(</span><span class="identifier">FunctionName</span><span class="special">,</span> <span class="identifier">Message</span><span class="special">,</span> <span class="identifier">Val</span><span class="special">,</span> Policy<span class="special">);</span>
+</pre>
+<p>
+ Where <code class="computeroutput"><span class="identifier">T</span></code> is the floating point
+ type passed to the function, <code class="computeroutput"><span class="identifier">FunctionName</span></code>
+ is the name of the function, <code class="computeroutput"><span class="identifier">Message</span></code>
+ is an error message describing the problem, <code class="computeroutput"><span class="identifier">Val</span></code>
+ is the erroneous argument, and Policy
+ is the current policy in use for the called function.
+ </p>
+<p>
+ The default behaviour of this function is to throw a <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">rounding_error</span></code>.
+ </p>
+<p>
+ Note that in order to support information rich error messages when throwing
+ exceptions, <code class="computeroutput"><span class="identifier">Message</span></code> must
+ contain a Boost.Format
+ recognised format specifier: the argument <code class="computeroutput"><span class="identifier">val</span></code>
+ is inserted into the error message according to the specifier used.
+ </p>
+<p>
+ For example if <code class="computeroutput"><span class="identifier">Message</span></code> contains
+ a "%1%" then it is replaced by the value of <code class="computeroutput"><span class="identifier">val</span></code>
+ to the full precision of T, where as "%.3g" would contain the value
+ of <code class="computeroutput"><span class="identifier">val</span></code> to 3 digits. See the
+ Boost.Format documentation
+ for more details.
+ </p>
 <a name="checked_narrowing_cast"></a><a name="math_toolkit.main_overview.error_handling.errors_from_typecasts"></a><h5>
-<a name="id495018"></a>
+<a name="id505891"></a>
         <a href="error_handling.html#math_toolkit.main_overview.error_handling.errors_from_typecasts">Errors
         from typecasts</a>
       </h5>
@@ -877,8 +1109,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/history1.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/history1.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/history1.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,20 +7,20 @@
 <link rel="start" href="../../index.html" title="Math Toolkit">
 <link rel="up" href="../main_overview.html" title="Overview">
 <link rel="prev" href="perf_over.html" title="Performance">
-<link rel="next" href="contact.html" title="Contact Info and Support">
+<link rel="next" href="tr1.html" title="C99 and TR1 C Functions">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="perf_over.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../main_overview.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="contact.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="perf_over.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../main_overview.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tr1.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
@@ -28,12 +28,50 @@
       New</a>
 </h3></div></div></div>
 <p>
- <a name="math_toolkit.main_overview.history1.milestone_5__post_review_first_official_release"></a>
+ <a name="math_toolkit.main_overview.history1.boost_1_36_0"></a>
         </p>
 <h5>
-<a name="id496722"></a>
- <a href="history1.html#math_toolkit.main_overview.history1.milestone_5__post_review_first_official_release">Milestone
- 5: Post Review First Official Release</a>
+<a name="id507610"></a>
+ Boost-1.36.0
+ </h5>
+<p>
+ </p>
+<div class="itemizedlist"><ul type="disc">
+<li>
+ Added Noncentral Chi Squared Distribution.
+ </li>
+<li>
+ Added Noncentral Beta Distribution.
+ </li>
+<li>
+ Added Noncentral F Distribution.
+ </li>
+<li>
+ Added Noncentral T Distribution.
+ </li>
+<li>
+ Added Exponential Integral Functions.
+ </li>
+<li>
+ Added Zeta Function.
+ </li>
+<li>
+ Added Rounding and Truncation functions.
+ </li>
+<li>
+ Added Compile time powers of runtime bases.
+ </li>
+<li>
+ Added SSE2 optimizations for Lanczos evaluation.
+ </li>
+</ul></div>
+<p>
+ <a name="math_toolkit.main_overview.history1.boost_1_35_0__post_review_first_official_release"></a>
+ </p>
+<h5>
+<a name="id507683"></a>
+ <a href="history1.html#math_toolkit.main_overview.history1.boost_1_35_0__post_review_first_official_release">Boost-1.35.0:
+ Post Review First Official Release</a>
         </h5>
 <p>
         </p>
@@ -68,7 +106,7 @@
         <a name="math_toolkit.main_overview.history1.milestone_4__second_review_candidate__1st_march_2007_"></a>
         </p>
 <h5>
-<a name="id496827"></a>
+<a name="id507787"></a>
           <a href="history1.html#math_toolkit.main_overview.history1.milestone_4__second_review_candidate__1st_march_2007_">Milestone
           4: Second Review Candidate (1st March 2007)</a>
         </h5>
@@ -87,7 +125,7 @@
         <a name="math_toolkit.main_overview.history1.milestone_3__first_review_candidate__31st_dec_2006_"></a>
         </p>
 <h5>
-<a name="id496869"></a>
+<a name="id507829"></a>
           <a href="history1.html#math_toolkit.main_overview.history1.milestone_3__first_review_candidate__31st_dec_2006_">Milestone
           3: First Review Candidate (31st Dec 2006)</a>
         </h5>
@@ -120,7 +158,7 @@
         <a name="math_toolkit.main_overview.history1.milestone_2__released_september_10th_2006"></a>
         </p>
 <h5>
-<a name="id496933"></a>
+<a name="id507893"></a>
           <a href="history1.html#math_toolkit.main_overview.history1.milestone_2__released_september_10th_2006">Milestone
           2: Released September 10th 2006</a>
         </h5>
@@ -161,7 +199,7 @@
         <a name="math_toolkit.main_overview.history1.milestone_1__released_march_31st_2006"></a>
         </p>
 <h5>
-<a name="id497009"></a>
+<a name="id507969"></a>
           <a href="history1.html#math_toolkit.main_overview.history1.milestone_1__released_march_31st_2006">Milestone
           1: Released March 31st 2006</a>
         </h5>
@@ -196,15 +234,15 @@
 <p>
         </p>
 <p>
- Sandbox and trunk last synchonised at revision: 41065.
+ Sandbox and trunk last synchonised at revision: 47084.
         </p>
 <p>
       </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -212,7 +250,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="perf_over.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../main_overview.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="contact.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="perf_over.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../main_overview.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tr1.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/intro.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/intro.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/intro.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -30,7 +30,7 @@
         This library is divided into three interconnected parts:
       </p>
 <a name="math_toolkit.main_overview.intro.statistical_distributions"></a><h5>
-<a name="id440384"></a>
+<a name="id447685"></a>
         <a href="intro.html#math_toolkit.main_overview.intro.statistical_distributions">Statistical
         Distributions</a>
       </h5>
@@ -56,7 +56,7 @@
         tests.
       </p>
 <a name="math_toolkit.main_overview.intro.mathematical_special_functions"></a><h5>
-<a name="id436301"></a>
+<a name="id446082"></a>
         <a href="intro.html#math_toolkit.main_overview.intro.mathematical_special_functions">Mathematical
         Special Functions</a>
       </h5>
@@ -83,7 +83,7 @@
         <span class="keyword">double</span></code>.
       </p>
 <a name="math_toolkit.main_overview.intro.implementation_toolkit"></a><h5>
-<a name="id436426"></a>
+<a name="id446207"></a>
         <a href="intro.html#math_toolkit.main_overview.intro.implementation_toolkit">Implementation
         Toolkit</a>
       </h5>
@@ -119,8 +119,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/namespaces.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/namespaces.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/namespaces.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -59,8 +59,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/navigation.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/navigation.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/navigation.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -31,7 +31,7 @@
         as handy shortcuts for common navigation tasks.
       </p>
 <a name="math_toolkit.main_overview.navigation.shortcuts"></a><h6>
-<a name="id437857"></a>
+<a name="id450142"></a>
         <a href="navigation.html#math_toolkit.main_overview.navigation.shortcuts">Shortcuts</a>
       </h6>
 <div class="blockquote"><blockquote class="blockquote">
@@ -139,8 +139,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/perf_over.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/perf_over.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/perf_over.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -78,8 +78,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/pol_overview.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/pol_overview.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/pol_overview.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -121,8 +121,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/result_type.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/result_type.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/result_type.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -133,8 +133,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/threads.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/threads.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/threads.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -54,8 +54,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -41,8 +41,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/comp_compilers.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/comp_compilers.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/comp_compilers.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -35,7 +35,7 @@
         in this respect).
       </p>
 <div class="table">
-<a name="id776653"></a><p class="title"><b>Table 40. Performance Comparison of Various Windows Compilers</b></p>
+<a name="id851338"></a><p class="title"><b>Table 48. Performance Comparison of Various Windows Compilers</b></p>
 <div class="table-contents"><table class="table" summary="Performance Comparison of Various Windows Compilers">
 <colgroup>
 <col>
@@ -362,8 +362,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/comparisons.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/comparisons.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/comparisons.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -46,7 +46,7 @@
         </p></td></tr>
 </table></div>
 <a name="math_toolkit.perf.comparisons.comparison_to_gsl_1_9_and_cephes"></a><h5>
-<a name="id779112"></a>
+<a name="id853805"></a>
         <a href="comparisons.html#math_toolkit.perf.comparisons.comparison_to_gsl_1_9_and_cephes">Comparison
         to GSL-1.9 and Cephes</a>
       </h5>
@@ -213,7 +213,7 @@
 <td>
               <p>
                 +INF
- <sup>[<a name="id779479" href="#ftn.id779479">1</a>]</sup>
+ <sup>[<a name="id854172" href="#ftn.id854172">1</a>]</sup>
               </p>
               </td>
 </tr>
@@ -284,13 +284,13 @@
               </td>
 </tr>
 </tbody>
-<tbody class="footnotes"><tr><td colspan="4"><div class="footnote"><p><sup>[<a name="ftn.id779479" href="#id779479">1</a>] </sup>
+<tbody class="footnotes"><tr><td colspan="4"><div class="footnote"><p><sup>[<a name="ftn.id854172" href="#id854172">1</a>] </sup>
                     Cephes gets stuck in an infinite loop while trying to execute
                     our test cases.
                   </p></div></td></tr></tbody>
 </table></div>
 <a name="math_toolkit.perf.comparisons.comparison_to_the_r_statistical_library_on_windows"></a><h5>
-<a name="id779648"></a>
+<a name="id854341"></a>
         <a href="comparisons.html#math_toolkit.perf.comparisons.comparison_to_the_r_statistical_library_on_windows">Comparison
         to the R Statistical Library on Windows</a>
       </h5>
@@ -301,7 +301,7 @@
         appears not to be buildable with Visual C++).
       </p>
 <div class="table">
-<a name="id779676"></a><p class="title"><b>Table 43. A Comparison to the R Statistical Library on Windows
+<a name="id854368"></a><p class="title"><b>Table 51. A Comparison to the R Statistical Library on Windows
       XP</b></p>
 <div class="table-contents"><table class="table" summary="A Comparison to the R Statistical Library on Windows
       XP">
@@ -374,7 +374,7 @@
             <p>
               </p>
 <p>74.66
- <sup>[<a name="id779816" href="#ftn.id779816">1</a>]</sup>
+ <sup>[<a name="id854509" href="#ftn.id854509">1</a>]</sup>
               </p>
 <p> </p>
 <p>(4.905e-004s)</p>
@@ -792,7 +792,7 @@
             <p>
               </p>
 <p>53.59
- <sup>[<a name="id780665" href="#ftn.id780665">2</a>]</sup>
+ <sup>[<a name="id855357" href="#ftn.id855357">2</a>]</sup>
               </p>
 <p> </p>
 <p>(5.145e-004s)</p>
@@ -1010,12 +1010,12 @@
 </tr>
 </tbody>
 <tbody class="footnotes"><tr><td colspan="3">
-<div class="footnote"><p><sup>[<a name="ftn.id779816" href="#id779816">1</a>] </sup>
+<div class="footnote"><p><sup>[<a name="ftn.id854509" href="#id854509">1</a>] </sup>
                   There are a small number of our test cases where the R library
                   fails to converge on a result: these tend to dominate the performance
                   result.
                 </p></div>
-<div class="footnote"><p><sup>[<a name="ftn.id780665" href="#id780665">2</a>] </sup>
+<div class="footnote"><p><sup>[<a name="ftn.id855357" href="#id855357">2</a>] </sup>
                   The R library appears to use a linear-search strategy, that can
                   perform very badly in a small number of pathological cases, but
                   may or may not be more efficient in "typical" cases
@@ -1024,7 +1024,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.perf.comparisons.comparison_to_the_r_statistical_library_on_linux"></a><h5>
-<a name="id781115"></a>
+<a name="id855808"></a>
         <a href="comparisons.html#math_toolkit.perf.comparisons.comparison_to_the_r_statistical_library_on_linux">Comparison
         to the R Statistical Library on Linux</a>
       </h5>
@@ -1033,7 +1033,7 @@
         Linux machine, with the test program and R-2.5.0 compiled with GNU G++ 4.2.0.
       </p>
 <div class="table">
-<a name="id781140"></a><p class="title"><b>Table 44. A Comparison to the R Statistical Library on Linux</b></p>
+<a name="id855833"></a><p class="title"><b>Table 52. A Comparison to the R Statistical Library on Linux</b></p>
 <div class="table-contents"><table class="table" summary="A Comparison to the R Statistical Library on Linux">
 <colgroup>
 <col>
@@ -1104,7 +1104,7 @@
             <p>
               </p>
 <p>44.06
- <sup>[<a name="id781279" href="#ftn.id781279">1</a>]</sup>
+ <sup>[<a name="id855972" href="#ftn.id855972">1</a>]</sup>
               </p>
 <p> </p>
 <p>(5.701e-004s)</p>
@@ -1522,7 +1522,7 @@
             <p>
               </p>
 <p>30.07
- <sup>[<a name="id782124" href="#ftn.id782124">2</a>]</sup>
+ <sup>[<a name="id856817" href="#ftn.id856817">2</a>]</sup>
               </p>
 <p> </p>
 <p>(5.490e-004s)</p>
@@ -1740,12 +1740,12 @@
 </tr>
 </tbody>
 <tbody class="footnotes"><tr><td colspan="3">
-<div class="footnote"><p><sup>[<a name="ftn.id781279" href="#id781279">1</a>] </sup>
+<div class="footnote"><p><sup>[<a name="ftn.id855972" href="#id855972">1</a>] </sup>
                   There are a small number of our test cases where the R library
                   fails to converge on a result: these tend to dominate the performance
                   result.
                 </p></div>
-<div class="footnote"><p><sup>[<a name="ftn.id782124" href="#id782124">2</a>] </sup>
+<div class="footnote"><p><sup>[<a name="ftn.id856817" href="#id856817">2</a>] </sup>
                   The R library appears to use a linear-search strategy, that can
                   perform very badly in a small number of pathological cases, but
                   may or may not be more efficient in "typical" cases
@@ -1757,8 +1757,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/getting_best.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/getting_best.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/getting_best.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -33,7 +33,7 @@
         penalty for using the library in debug mode can be quite large.
       </p>
 <div class="table">
-<a name="id776090"></a><p class="title"><b>Table 39. Performance Comparison of Release and Debug Settings</b></p>
+<a name="id850767"></a><p class="title"><b>Table 47. Performance Comparison of Release and Debug Settings</b></p>
 <div class="table-contents"><table class="table" summary="Performance Comparison of Release and Debug Settings">
 <colgroup>
 <col>
@@ -279,8 +279,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/interp.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/interp.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/interp.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -55,8 +55,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/perf_over.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/perf_over.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/perf_over.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -78,8 +78,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/perf_test_app.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/perf_test_app.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/perf_test_app.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -48,8 +48,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/tuning.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/tuning.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/perf/tuning.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -234,7 +234,7 @@
         highly vectorisable processors in the future.
       </p>
 <div class="table">
-<a name="id777760"></a><p class="title"><b>Table 41. A Comparison of Polynomial Evaluation Methods</b></p>
+<a name="id852454"></a><p class="title"><b>Table 49. A Comparison of Polynomial Evaluation Methods</b></p>
 <div class="table-contents"><table class="table" summary="A Comparison of Polynomial Evaluation Methods">
 <colgroup>
 <col>
@@ -634,7 +634,7 @@
         tutorial</a>.
       </p>
 <div class="table">
-<a name="id778516"></a><p class="title"><b>Table 42. Performance Comparison with and Without Internal
+<a name="id853209"></a><p class="title"><b>Table 50. Performance Comparison with and Without Internal
       Promotion to long double</b></p>
 <div class="table-contents"><table class="table" summary="Performance Comparison with and Without Internal
       Promotion to long double">
@@ -882,8 +882,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -76,8 +76,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_overview.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_overview.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_overview.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -120,8 +120,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -49,8 +49,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/assert_undefined.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/assert_undefined.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/assert_undefined.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -74,8 +74,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/discrete_quant_ref.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/discrete_quant_ref.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/discrete_quant_ref.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -55,7 +55,7 @@
           can take have the following meanings:
         </p>
 <a name="math_toolkit.policy.pol_ref.discrete_quant_ref.real"></a><h6>
-<a name="id766407"></a>
+<a name="id840468"></a>
           <a href="discrete_quant_ref.html#math_toolkit.policy.pol_ref.discrete_quant_ref.real">real</a>
         </h6>
 <p>
@@ -93,7 +93,7 @@
           <span class="special">=</span> <span class="number">68.1584</span></code>.
         </p>
 <a name="math_toolkit.policy.pol_ref.discrete_quant_ref.integer_round_outwards"></a><h6>
-<a name="id766893"></a>
+<a name="id840954"></a>
           <a href="discrete_quant_ref.html#math_toolkit.policy.pol_ref.discrete_quant_ref.integer_round_outwards">integer_round_outwards</a>
         </h6>
 <p>
@@ -151,7 +151,7 @@
           in each tail</em></span>.
         </p>
 <a name="math_toolkit.policy.pol_ref.discrete_quant_ref.integer_round_inwards"></a><h6>
-<a name="id767412"></a>
+<a name="id841473"></a>
           <a href="discrete_quant_ref.html#math_toolkit.policy.pol_ref.discrete_quant_ref.integer_round_inwards">integer_round_inwards</a>
         </h6>
 <p>
@@ -214,7 +214,7 @@
           in each tail</em></span>.
         </p>
 <a name="math_toolkit.policy.pol_ref.discrete_quant_ref.integer_round_down"></a><h6>
-<a name="id768066"></a>
+<a name="id842127"></a>
           <a href="discrete_quant_ref.html#math_toolkit.policy.pol_ref.discrete_quant_ref.integer_round_down">integer_round_down</a>
         </h6>
 <p>
@@ -222,7 +222,7 @@
           or a lower quantile.
         </p>
 <a name="math_toolkit.policy.pol_ref.discrete_quant_ref.integer_round_up"></a><h6>
-<a name="id768098"></a>
+<a name="id842158"></a>
           <a href="discrete_quant_ref.html#math_toolkit.policy.pol_ref.discrete_quant_ref.integer_round_up">integer_round_up</a>
         </h6>
 <p>
@@ -230,7 +230,7 @@
           a lower quantile.
         </p>
 <a name="math_toolkit.policy.pol_ref.discrete_quant_ref.integer_round_nearest"></a><h6>
-<a name="id768129"></a>
+<a name="id842190"></a>
           <a href="discrete_quant_ref.html#math_toolkit.policy.pol_ref.discrete_quant_ref.integer_round_nearest">integer_round_nearest</a>
         </h6>
 <p>
@@ -275,8 +275,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/error_handling_policies.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/error_handling_policies.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/error_handling_policies.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -39,7 +39,7 @@
           </li>
 </ul></div>
 <a name="math_toolkit.policy.pol_ref.error_handling_policies.available_actions_when_an_error_is_raised"></a><h5>
-<a name="id760983"></a>
+<a name="id834430"></a>
           <a href="error_handling_policies.html#math_toolkit.policy.pol_ref.error_handling_policies.available_actions_when_an_error_is_raised">Available
           Actions When an Error is Raised</a>
         </h5>
@@ -62,7 +62,7 @@
           The various enumerated values have the following meanings:
         </p>
 <a name="math_toolkit.policy.pol_ref.error_handling_policies.throw_on_error"></a><h6>
-<a name="id761236"></a>
+<a name="id834682"></a>
           <a href="error_handling_policies.html#math_toolkit.policy.pol_ref.error_handling_policies.throw_on_error">throw_on_error</a>
         </h6>
 <p>
@@ -159,10 +159,22 @@
                 </p>
                 </td>
 </tr>
+<tr>
+<td>
+ <p>
+ Indeterminate Result Error
+ </p>
+ </td>
+<td>
+ <p>
+ std::domain_error
+ </p>
+ </td>
+</tr>
 </tbody>
 </table></div>
 <a name="math_toolkit.policy.pol_ref.error_handling_policies.errno_on_error"></a><h6>
-<a name="id761418"></a>
+<a name="id834884"></a>
           <a href="error_handling_policies.html#math_toolkit.policy.pol_ref.error_handling_policies.errno_on_error">errno_on_error</a>
         </h6>
 <p>
@@ -260,14 +272,26 @@
                 </p>
                 </td>
 </tr>
+<tr>
+<td>
+ <p>
+ Indeterminate Result Error
+ </p>
+ </td>
+<td>
+ <p>
+ EDOM
+ </p>
+ </td>
+</tr>
 </tbody>
 </table></div>
 <a name="math_toolkit.policy.pol_ref.error_handling_policies.ignore_error"></a><h6>
-<a name="id761617"></a>
+<a name="id835102"></a>
           <a href="error_handling_policies.html#math_toolkit.policy.pol_ref.error_handling_policies.ignore_error">ignore_error</a>
         </h6>
 <p>
- Will return a one of the values below depending on the error type (<code class="computeroutput"><span class="special">::</span><span class="identifier">errno</span></code>
+ Will return one of the values below depending on the error type (<code class="computeroutput"><span class="special">::</span><span class="identifier">errno</span></code>
           is NOT changed)::
         </p>
 <div class="informaltable"><table class="table">
@@ -361,10 +385,22 @@
                 </p>
                 </td>
 </tr>
+<tr>
+<td>
+ <p>
+ Indeterminate Result Error
+ </p>
+ </td>
+<td>
+ <p>
+ Depends on the function where the error occurred
+ </p>
+ </td>
+</tr>
 </tbody>
 </table></div>
 <a name="math_toolkit.policy.pol_ref.error_handling_policies.user_error"></a><h6>
-<a name="id761818"></a>
+<a name="id835323"></a>
           <a href="error_handling_policies.html#math_toolkit.policy.pol_ref.error_handling_policies.user_error">user_error</a>
         </h6>
 <p>
@@ -389,8 +425,14 @@
 <span class="identifier">T</span> <span class="identifier">user_denorm_error</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">function</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">message</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="identifier">T</span> <span class="identifier">user_rounding_error</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">function</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">message</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">T</span> <span class="identifier">user_evaluation_error</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">function</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">message</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">);</span>
 
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="identifier">T</span> <span class="identifier">user_indeterminate_result_error</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">function</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">message</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">);</span>
+
 <span class="special">}}}</span> <span class="comment">// namespaces
 </span></pre>
 <p>
@@ -407,12 +449,12 @@
           here</a>.
         </p>
 <a name="math_toolkit.policy.pol_ref.error_handling_policies.kinds_of_error_raised"></a><h5>
-<a name="id762751"></a>
+<a name="id836523"></a>
           <a href="error_handling_policies.html#math_toolkit.policy.pol_ref.error_handling_policies.kinds_of_error_raised">Kinds
           of Error Raised</a>
         </h5>
 <p>
- There are five kinds of error reported by this library, which are summarised
+ There are six kinds of error reported by this library, which are summarised
           in the following table:
         </p>
 <div class="informaltable"><table class="table">
@@ -566,6 +608,34 @@
 <tr>
 <td>
                 <p>
+ Rounding Error
+ </p>
+ </td>
+<td>
+ <p>
+ boost::math::policies::rounding_error&lt;<span class="emphasis"><em>action</em></span>&gt;
+ </p>
+ </td>
+<td>
+ <p>
+ Raised When one of the rounding functions round,
+ trunc
+ or modf
+ is called with an argument that has no integer representation,
+ or is too large to be represented in the result type
+ </p>
+ <p>
+ Defaults to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">policies</span><span class="special">::</span><span class="identifier">rounding_error</span><span class="special">&lt;</span><span class="identifier">throw_on_error</span><span class="special">&gt;</span></code>
+ </p>
+ <p>
+ When the action is <span class="emphasis"><em>throw_on_error</em></span> then throws
+ <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">rounding_error</span></code>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
                   Evaluation Error
                 </p>
                 </td>
@@ -590,10 +660,35 @@
                 </p>
                 </td>
 </tr>
+<tr>
+<td>
+ <p>
+ Indeterminate Result Error
+ </p>
+ </td>
+<td>
+ <p>
+ boost::math::policies::indeterminate_result_error&lt;<span class="emphasis"><em>action</em></span>&gt;
+ </p>
+ </td>
+<td>
+ <p>
+ Raised when the result of a function is not defined for the values
+ that were passed to it.
+ </p>
+ <p>
+ Defaults to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">policies</span><span class="special">::</span><span class="identifier">indeterminate_result_error</span><span class="special">&lt;</span><span class="identifier">ignore_error</span><span class="special">&gt;</span></code>
+ </p>
+ <p>
+ When the action is <span class="emphasis"><em>throw_on_error</em></span> then throws
+ <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">domain_error</span></code>
+ </p>
+ </td>
+</tr>
 </tbody>
 </table></div>
 <a name="math_toolkit.policy.pol_ref.error_handling_policies.examples"></a><h5>
-<a name="id763593"></a>
+<a name="id837654"></a>
           <a href="error_handling_policies.html#math_toolkit.policy.pol_ref.error_handling_policies.examples">Examples</a>
         </h5>
 <p>
@@ -668,8 +763,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/internal_promotion.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/internal_promotion.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/internal_promotion.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -84,7 +84,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.policy.pol_ref.internal_promotion.examples"></a><h5>
-<a name="id764907"></a>
+<a name="id838968"></a>
           <a href="internal_promotion.html#math_toolkit.policy.pol_ref.internal_promotion.examples">Examples</a>
         </h5>
 <p>
@@ -151,8 +151,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/iteration_pol.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/iteration_pol.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/iteration_pol.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -51,8 +51,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/namespace_pol.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/namespace_pol.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/namespace_pol.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -151,8 +151,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/pol_ref_ref.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/pol_ref_ref.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/pol_ref_ref.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -51,7 +51,9 @@
           <span class="keyword">class</span> <span class="identifier">A8</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
           <span class="keyword">class</span> <span class="identifier">A9</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
           <span class="keyword">class</span> <span class="identifier">A10</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
- <span class="keyword">class</span> <span class="identifier">A11</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">&gt;</span>
+ <span class="keyword">class</span> <span class="identifier">A11</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">A12</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">A13</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">policy</span>
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>
@@ -60,7 +62,9 @@
    <span class="keyword">typedef</span> <span class="emphasis"><em>computed-from-template-arguments</em></span> <span class="identifier">overflow_error_type</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="emphasis"><em>computed-from-template-arguments</em></span> <span class="identifier">underflow_error_type</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="emphasis"><em>computed-from-template-arguments</em></span> <span class="identifier">denorm_error_type</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>computed-from-template-arguments</em></span> <span class="identifier">rounding_error_type</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="emphasis"><em>computed-from-template-arguments</em></span> <span class="identifier">evaluation_error_type</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>computed-from-template-arguments</em></span> <span class="identifier">indeterminate_result_error_type</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="emphasis"><em>computed-from-template-arguments</em></span> <span class="identifier">precision_type</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="emphasis"><em>computed-from-template-arguments</em></span> <span class="identifier">promote_float_type</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="emphasis"><em>computed-from-template-arguments</em></span> <span class="identifier">promote_double_type</span><span class="special">;</span>
@@ -82,7 +86,9 @@
           <span class="keyword">class</span> <span class="identifier">A8</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
           <span class="keyword">class</span> <span class="identifier">A9</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
           <span class="keyword">class</span> <span class="identifier">A10</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
- <span class="keyword">class</span> <span class="identifier">A11</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">&gt;</span>
+ <span class="keyword">class</span> <span class="identifier">A11</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">A12</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">A13</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">normalise</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> computed-from-template-arguments <span class="identifier">type</span><span class="special">;</span>
@@ -133,6 +139,14 @@
           one of the <code class="computeroutput"><span class="identifier">error_policy_type</span></code>
           enumerated values.
         </p>
+<pre class="programlisting"><span class="identifier">policy</span><span class="special">&lt;...&gt;::</span><span class="identifier">rounding_error_type</span>
+</pre>
+<p>
+ Specifies how rounding errors are handled, will be an instance of <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">policies</span><span class="special">::</span><span class="identifier">rounding_error</span><span class="special">&lt;&gt;</span></code>
+ with the template argument to <code class="computeroutput"><span class="identifier">rounding_error</span></code>
+ one of the <code class="computeroutput"><span class="identifier">error_policy_type</span></code>
+ enumerated values.
+ </p>
 <pre class="programlisting"><span class="identifier">policy</span><span class="special">&lt;...&gt;::</span><span class="identifier">evaluation_error_type</span>
 </pre>
 <p>
@@ -141,6 +155,15 @@
           one of the <code class="computeroutput"><span class="identifier">error_policy_type</span></code>
           enumerated values.
         </p>
+<pre class="programlisting"><span class="identifier">policy</span><span class="special">&lt;...&gt;::</span><span class="identifier">indeterminate_error_type</span>
+</pre>
+<p>
+ Specifies how indeterminate result errors are handled, will be an instance
+ of <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">policies</span><span class="special">::</span><span class="identifier">indeterminate_result_error</span><span class="special">&lt;&gt;</span></code>
+ with the template argument to <code class="computeroutput"><span class="identifier">indeterminate_result_error</span></code>
+ one of the <code class="computeroutput"><span class="identifier">error_policy_type</span></code>
+ enumerated values.
+ </p>
 <pre class="programlisting"><span class="identifier">policy</span><span class="special">&lt;...&gt;::</span><span class="identifier">precision_type</span>
 </pre>
 <p>
@@ -195,7 +218,9 @@
           <span class="keyword">class</span> <span class="identifier">A8</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
           <span class="keyword">class</span> <span class="identifier">A9</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
           <span class="keyword">class</span> <span class="identifier">A10</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
- <span class="keyword">class</span> <span class="identifier">A11</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">&gt;</span>
+ <span class="keyword">class</span> <span class="identifier">A11</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">A12</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">A13</span> <span class="special">=</span> <span class="identifier">default_policy</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">normalise</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> computed-from-template-arguments <span class="identifier">type</span><span class="special">;</span>
@@ -220,8 +245,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/policy_defaults.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/policy_defaults.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/policy_defaults.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -61,7 +61,7 @@
           then you can do so by defining various macros in boost/math/tools/user.hpp.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_domain_error_policy"></a><h6>
-<a name="id769931"></a>
+<a name="id843993"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_domain_error_policy">BOOST_MATH_DOMAIN_ERROR_POLICY</a>
         </h6>
 <p>
@@ -71,7 +71,7 @@
           <code class="computeroutput"><span class="identifier">ignore_error</span></code> or <code class="computeroutput"><span class="identifier">user_error</span></code>.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_pole_error_policy"></a><h6>
-<a name="id770023"></a>
+<a name="id844085"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_pole_error_policy">BOOST_MATH_POLE_ERROR_POLICY</a>
         </h6>
 <p>
@@ -81,7 +81,7 @@
           <code class="computeroutput"><span class="identifier">ignore_error</span></code> or <code class="computeroutput"><span class="identifier">user_error</span></code>.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_overflow_error_policy"></a><h6>
-<a name="id770116"></a>
+<a name="id844178"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_overflow_error_policy">BOOST_MATH_OVERFLOW_ERROR_POLICY</a>
         </h6>
 <p>
@@ -90,8 +90,18 @@
           but can be set to any of the enumerated actions for error handing: <code class="computeroutput"><span class="identifier">throw_on_error</span></code>, <code class="computeroutput"><span class="identifier">errno_on_error</span></code>,
           <code class="computeroutput"><span class="identifier">ignore_error</span></code> or <code class="computeroutput"><span class="identifier">user_error</span></code>.
         </p>
+<a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_rounding_error_policy"></a><h6>
+<a name="id844271"></a>
+ BOOST_MATH_ROUNDING_ERROR_POLICY
+ </h6>
+<p>
+ Defines what happens when a rounding error occurs, if not defined then
+ defaults to <code class="computeroutput"><span class="identifier">throw_on_error</span></code>,
+ but can be set to any of the enumerated actions for error handing: <code class="computeroutput"><span class="identifier">throw_on_error</span></code>, <code class="computeroutput"><span class="identifier">errno_on_error</span></code>,
+ <code class="computeroutput"><span class="identifier">ignore_error</span></code> or <code class="computeroutput"><span class="identifier">user_error</span></code>.
+ </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_evaluation_error_policy"></a><h6>
-<a name="id770209"></a>
+<a name="id844363"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_evaluation_error_policy">BOOST_MATH_EVALUATION_ERROR_POLICY</a>
         </h6>
 <p>
@@ -101,7 +111,7 @@
           <code class="computeroutput"><span class="identifier">ignore_error</span></code> or <code class="computeroutput"><span class="identifier">user_error</span></code>.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_underflow_error_policy"></a><h6>
-<a name="id770302"></a>
+<a name="id844456"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_underflow_error_policy">BOOST_MATH_UNDERFLOW_ERROR_POLICY</a>
         </h6>
 <p>
@@ -111,7 +121,7 @@
           <code class="computeroutput"><span class="identifier">ignore_error</span></code> or <code class="computeroutput"><span class="identifier">user_error</span></code>.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_denorm_error_policy"></a><h6>
-<a name="id770395"></a>
+<a name="id844550"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_denorm_error_policy">BOOST_MATH_DENORM_ERROR_POLICY</a>
         </h6>
 <p>
@@ -120,8 +130,19 @@
           but can be set to any of the enumerated actions for error handing: <code class="computeroutput"><span class="identifier">throw_on_error</span></code>, <code class="computeroutput"><span class="identifier">errno_on_error</span></code>,
           <code class="computeroutput"><span class="identifier">ignore_error</span></code> or <code class="computeroutput"><span class="identifier">user_error</span></code>.
         </p>
+<a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_indeterminate_result_error_policy"></a><h6>
+<a name="id844644"></a>
+ BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY
+ </h6>
+<p>
+ Defines what happens when the result is indeterminate, but where there
+ is none the less a convention for the result. If not defined then defaults
+ to <code class="computeroutput"><span class="identifier">ignore_error</span></code>, but can
+ be set to any of the enumerated actions for error handing: <code class="computeroutput"><span class="identifier">throw_on_error</span></code>, <code class="computeroutput"><span class="identifier">errno_on_error</span></code>,
+ <code class="computeroutput"><span class="identifier">ignore_error</span></code> or <code class="computeroutput"><span class="identifier">user_error</span></code>.
+ </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_digits10_policy"></a><h6>
-<a name="id770487"></a>
+<a name="id844739"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_digits10_policy">BOOST_MATH_DIGITS10_POLICY</a>
         </h6>
 <p>
@@ -132,7 +153,7 @@
           recommended that you change this from the default.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_promote_float_policy"></a><h6>
-<a name="id770536"></a>
+<a name="id844789"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_promote_float_policy">BOOST_MATH_PROMOTE_FLOAT_POLICY</a>
         </h6>
 <p>
@@ -144,7 +165,7 @@
           off.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_promote_double_policy"></a><h6>
-<a name="id770628"></a>
+<a name="id844880"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_promote_double_policy">BOOST_MATH_PROMOTE_DOUBLE_POLICY</a>
         </h6>
 <p>
@@ -156,7 +177,7 @@
           off.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_discrete_quantile_policy"></a><h6>
-<a name="id770726"></a>
+<a name="id844979"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_discrete_quantile_policy">BOOST_MATH_DISCRETE_QUANTILE_POLICY</a>
         </h6>
 <p>
@@ -167,7 +188,7 @@
           Defaults to <code class="computeroutput"><span class="identifier">integer_round_outwards</span></code>.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_assert_undefined_policy"></a><h6>
-<a name="id770843"></a>
+<a name="id845095"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_assert_undefined_policy">BOOST_MATH_ASSERT_UNDEFINED_POLICY</a>
         </h6>
 <p>
@@ -180,7 +201,7 @@
           whether or not a particular property is well defined.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_max_series_iteration_policy"></a><h6>
-<a name="id770907"></a>
+<a name="id845158"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_max_series_iteration_policy">BOOST_MATH_MAX_SERIES_ITERATION_POLICY</a>
         </h6>
 <p>
@@ -189,7 +210,7 @@
           Defaults to 1000000.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.boost_math_max_root_iteration_policy"></a><h6>
-<a name="id770949"></a>
+<a name="id845200"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.boost_math_max_root_iteration_policy">BOOST_MATH_MAX_ROOT_ITERATION_POLICY</a>
         </h6>
 <p>
@@ -198,7 +219,7 @@
           Defaults to 200.
         </p>
 <a name="math_toolkit.policy.pol_ref.policy_defaults.example"></a><h6>
-<a name="id770991"></a>
+<a name="id845241"></a>
           <a href="policy_defaults.html#math_toolkit.policy.pol_ref.policy_defaults.example">Example</a>
         </h6>
 <p>
@@ -223,8 +244,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/precision_pol.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/precision_pol.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_ref/precision_pol.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -122,8 +122,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -49,8 +49,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/ad_hoc_dist_policies.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/ad_hoc_dist_policies.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/ad_hoc_dist_policies.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -93,8 +93,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/ad_hoc_sf_policies.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/ad_hoc_sf_policies.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/ad_hoc_sf_policies.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -152,8 +152,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/changing_policy_defaults.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/changing_policy_defaults.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/changing_policy_defaults.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -316,8 +316,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/namespace_policies.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/namespace_policies.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/namespace_policies.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -448,8 +448,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/policy_tut_defaults.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/policy_tut_defaults.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/policy_tut_defaults.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -55,10 +55,18 @@
 <dd><p>
               Ignores the fact that the result is denormalised, and returns it.
             </p></dd>
+<dt><span class="term">Rounding Error</span></dt>
+<dd><p>
+ Throws a <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">rounding_error</span></code> exception.
+ </p></dd>
 <dt><span class="term">Internal Evaluation Error</span></dt>
 <dd><p>
               Throws a <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">evaluation_error</span></code> exception.
             </p></dd>
+<dt><span class="term">Indeterminate Result Error</span></dt>
+<dd><p>
+ Returns a result that depends on the function where the error occurred.
+ </p></dd>
 <dt><span class="term">Promotion of float to double</span></dt>
 <dd><p>
               Does occur by default - gives full float precision results.
@@ -114,8 +122,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/policy_usage.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/policy_usage.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/policy_usage.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -56,8 +56,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/understand_dis_quant.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/understand_dis_quant.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/understand_dis_quant.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -177,7 +177,7 @@
           <span class="emphasis"><em>base your comparisons on CDF's instead</em></span>.
         </p>
 <a name="math_toolkit.policy.pol_tutorial.understand_dis_quant.other_rounding_policies_are_available"></a><h6>
-<a name="id757473"></a>
+<a name="id830945"></a>
           <a href="understand_dis_quant.html#math_toolkit.policy.pol_tutorial.understand_dis_quant.other_rounding_policies_are_available">Other
           Rounding Policies are Available</a>
         </h6>
@@ -418,8 +418,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/user_def_err_pol.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/user_def_err_pol.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/user_def_err_pol.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -54,6 +54,8 @@
 <span class="identifier">T</span> <span class="identifier">user_denorm_error</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">function</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">message</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="identifier">T</span> <span class="identifier">user_evaluation_error</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">function</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">message</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">);</span>
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="identifier">T</span> <span class="identifier">user_indeterminate_result_error</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">function</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">message</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">);</span>
 
 <span class="special">}}}</span> <span class="comment">// namespaces
 </span></pre>
@@ -611,8 +613,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/what_is_a_policy.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/what_is_a_policy.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/policy/pol_tutorial/what_is_a_policy.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -72,8 +72,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -104,6 +104,15 @@
 <dt><span class="section"><a href="special/ellint/ellint_3.html"> Elliptic Integrals
         of the Third Kind - Legendre Form</a></span></dt>
 </dl></dd>
+<dt><span class="section"> Zeta Functions</span></dt>
+<dd><dl><dt><span class="section"> Riemann Zeta Function</span></dt></dl></dd>
+<dt><span class="section"> Exponential Integrals</span></dt>
+<dd><dl>
+<dt><span class="section"><a href="special/expint/expint_n.html"> Exponential
+ Integral En</a></span></dt>
+<dt><span class="section"><a href="special/expint/expint_i.html"> Exponential
+ Integral Ei</a></span></dt>
+</dl></dd>
 <dt><span class="section"><a href="special/powers.html"> Logs, Powers, Roots and
       Exponentials</a></span></dt>
 <dd><dl>
@@ -113,6 +122,8 @@
 <dt><span class="section"> sqrt1pm1</span></dt>
 <dt><span class="section"> powm1</span></dt>
 <dt><span class="section"> hypot</span></dt>
+<dt><span class="section"><a href="special/powers/ct_pow.html"> Compile Time Power
+ of a Runtime Base</a></span></dt>
 </dl></dd>
 <dt><span class="section"><a href="special/sinc.html"> Sinus Cardinal and Hyperbolic
       Sinus Cardinal Functions</a></span></dt>
@@ -130,14 +141,47 @@
 <dt><span class="section"> asinh</span></dt>
 <dt><span class="section"> atanh</span></dt>
 </dl></dd>
-<dt><span class="section"><a href="special/fpclass.html"> Floating Point Classification:
+<dt><span class="section"><a href="special/rounding.html"> Rounding Truncation and
+ Integer Conversion</a></span></dt>
+<dd><dl>
+<dt><span class="section"> Rounding Functions</span></dt>
+<dt><span class="section"> Truncation Functions</span></dt>
+<dt><span class="section"><a href="special/rounding/modf.html"> Integer and Fractional
+ Part Splitting (modf)</a></span></dt>
+</dl></dd>
+<dt><span class="section"><a href="special/fpclass.html"> Floating-Point Classification:
       Infinities and NaN's</a></span></dt>
+<dt><span class="section"><a href="special/next_float.html"> Floating-Point Representation
+ Distance (ULP), and Finding Adjacent Floating-Point Values</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="special/next_float/nextafter.html"> Finding
+ the Next Representable Value in a Specific Direction (nextafter)</a></span></dt>
+<dt><span class="section"><a href="special/next_float/float_next.html"> Finding
+ the Next Greater Representable Value (float_next)</a></span></dt>
+<dt><span class="section"><a href="special/next_float/float_prior.html"> Finding
+ the Next Smaller Representable Value (float_prior)</a></span></dt>
+<dt><span class="section"><a href="special/next_float/float_distance.html"> Calculating
+ the Representation Distance Between Two Floating Point Values (ULP) float_distance</a></span></dt>
+<dt><span class="section"><a href="special/next_float/float_advance.html"> Advancing
+ a Floating Point Value by a Specific Representation Distance (ULP) float_advance</a></span></dt>
+</dl></dd>
+<dt><span class="section"><a href="special/extern_c.html"> TR1 and C99 external
+ "C" Functions</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="special/extern_c/tr1.html"> C99 and TR1 C Functions
+ Overview</a></span></dt>
+<dt><span class="section"> C99 C Functions</span></dt>
+<dt><span class="section"><a href="special/extern_c/tr1_ref.html"> TR1 C Functions
+ Quick Reference</a></span></dt>
+</dl></dd>
 </dl></div>
+<p>
+ </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -47,8 +47,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/bessel.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/bessel.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/bessel.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         of the First and Second Kinds</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.bessel.bessel.synopsis"></a><h5>
-<a name="id669527"></a>
+<a name="id707545"></a>
           <a href="bessel.html#math_toolkit.special.bessel.bessel.synopsis">Synopsis</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T2</span><span class="special">&gt;</span>
@@ -44,7 +44,7 @@
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">cyl_neumann</span><span class="special">(</span><span class="identifier">T1</span> <span class="identifier">v</span><span class="special">,</span> <span class="identifier">T2</span> <span class="identifier">x</span><span class="special">,</span> <span class="keyword">const</span> <a href="../../policy.html" title="Policies">Policy</a><span class="special">&amp;);</span>
 </pre>
 <a name="math_toolkit.special.bessel.bessel.description"></a><h5>
-<a name="id670035"></a>
+<a name="id708053"></a>
           <a href="bessel.html#math_toolkit.special.bessel.bessel.description">Description</a>
         </h5>
 <p>
@@ -100,17 +100,17 @@
           The following graph illustrates the cyclic nature of J<sub>v</sub>:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/bessel_jn.png" alt="bessel_jn"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/cyl_bessel_j.png" align="middle"></span>
         </p>
 <p>
           The following graph shows the behaviour of Y<sub>v</sub>: this is also cyclic for
           large <span class="emphasis"><em>x</em></span>, but tends to -&#8734; for small <span class="emphasis"><em>x</em></span>:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/bessel_yv.png" alt="bessel_yv"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/cyl_neumann.png" align="middle"></span>
         </p>
 <a name="math_toolkit.special.bessel.bessel.testing"></a><h5>
-<a name="id670407"></a>
+<a name="id708454"></a>
           <a href="bessel.html#math_toolkit.special.bessel.bessel.testing">Testing</a>
         </h5>
 <p>
@@ -119,7 +119,7 @@
           (with all the special case handling removed).
         </p>
 <a name="math_toolkit.special.bessel.bessel.accuracy"></a><h5>
-<a name="id670446"></a>
+<a name="id708493"></a>
           <a href="bessel.html#math_toolkit.special.bessel.bessel.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -135,7 +135,7 @@
           zero error</a>. All values are relative errors in units of epsilon.
         </p>
 <div class="table">
-<a name="id670503"></a><p class="title"><b>Table 31. Errors Rates in cyl_bessel_j</b></p>
+<a name="id708550"></a><p class="title"><b>Table 36. Errors Rates in cyl_bessel_j</b></p>
 <div class="table-contents"><table class="table" summary="Errors Rates in cyl_bessel_j">
 <colgroup>
 <col>
@@ -304,7 +304,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id670807"></a><p class="title"><b>Table 32. Errors Rates in cyl_neumann</b></p>
+<a name="id708854"></a><p class="title"><b>Table 37. Errors Rates in cyl_neumann</b></p>
 <div class="table-contents"><table class="table" summary="Errors Rates in cyl_neumann">
 <colgroup>
 <col>
@@ -494,7 +494,7 @@
           were found.
         </p>
 <a name="math_toolkit.special.bessel.bessel.implementation"></a><h5>
-<a name="id671236"></a>
+<a name="id709283"></a>
           <a href="bessel.html#math_toolkit.special.bessel.bessel.implementation">Implementation</a>
         </h5>
 <p>
@@ -657,8 +657,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/bessel_over.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/bessel_over.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/bessel_over.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Overview</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.bessel.bessel_over.ordinary_bessel_functions"></a><h5>
-<a name="id668537"></a>
+<a name="id706557"></a>
           <a href="bessel_over.html#math_toolkit.special.bessel.bessel_over.ordinary_bessel_functions">Ordinary
           Bessel Functions</a>
         </h5>
@@ -103,7 +103,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/bessel10.png"></span>
         </p>
 <a name="math_toolkit.special.bessel.bessel_over.modified_bessel_functions"></a><h5>
-<a name="id668954"></a>
+<a name="id706974"></a>
           <a href="bessel_over.html#math_toolkit.special.bessel.bessel_over.modified_bessel_functions">Modified
           Bessel Functions</a>
         </h5>
@@ -167,7 +167,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/mbessel10.png"></span>
         </p>
 <a name="math_toolkit.special.bessel.bessel_over.spherical_bessel_functions"></a><h5>
-<a name="id669351"></a>
+<a name="id707370"></a>
           <a href="bessel_over.html#math_toolkit.special.bessel.bessel_over.spherical_bessel_functions">Spherical
           Bessel Functions</a>
         </h5>
@@ -198,8 +198,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/mbessel.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/mbessel.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/mbessel.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Functions of the First and Second Kinds</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.bessel.mbessel.synopsis"></a><h5>
-<a name="id672024"></a>
+<a name="id710072"></a>
           <a href="mbessel.html#math_toolkit.special.bessel.mbessel.synopsis">Synopsis</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T2</span><span class="special">&gt;</span>
@@ -44,7 +44,7 @@
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">cyl_bessel_k</span><span class="special">(</span><span class="identifier">T1</span> <span class="identifier">v</span><span class="special">,</span> <span class="identifier">T2</span> <span class="identifier">x</span><span class="special">,</span> <span class="keyword">const</span> <a href="../../policy.html" title="Policies">Policy</a><span class="special">&amp;);</span>
 </pre>
 <a name="math_toolkit.special.bessel.mbessel.description"></a><h5>
-<a name="id672534"></a>
+<a name="id710580"></a>
           <a href="mbessel.html#math_toolkit.special.bessel.mbessel.description">Description</a>
         </h5>
 <p>
@@ -100,16 +100,16 @@
           The following graph illustrates the exponential behaviour of I<sub>v</sub>.
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/bessel_i.png" alt="bessel_i"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/cyl_bessel_i.png" align="middle"></span>
         </p>
 <p>
           The following graph illustrates the exponential decay of K<sub>v</sub>.
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/bessel_k.png" alt="bessel_k"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/cyl_bessel_k.png" align="middle"></span>
         </p>
 <a name="math_toolkit.special.bessel.mbessel.testing"></a><h5>
-<a name="id672894"></a>
+<a name="id710970"></a>
           <a href="mbessel.html#math_toolkit.special.bessel.mbessel.testing">Testing</a>
         </h5>
 <p>
@@ -118,7 +118,7 @@
           (with all the special case handling removed).
         </p>
 <a name="math_toolkit.special.bessel.mbessel.accuracy"></a><h5>
-<a name="id672933"></a>
+<a name="id711009"></a>
           <a href="mbessel.html#math_toolkit.special.bessel.mbessel.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -129,7 +129,7 @@
           zero error</a>. All values are relative errors in units of epsilon.
         </p>
 <div class="table">
-<a name="id672973"></a><p class="title"><b>Table 33. Errors Rates in cyl_bessel_i</b></p>
+<a name="id711048"></a><p class="title"><b>Table 38. Errors Rates in cyl_bessel_i</b></p>
 <div class="table-contents"><table class="table" summary="Errors Rates in cyl_bessel_i">
 <colgroup>
 <col>
@@ -226,7 +226,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id673128"></a><p class="title"><b>Table 34. Errors Rates in cyl_bessel_k</b></p>
+<a name="id711203"></a><p class="title"><b>Table 39. Errors Rates in cyl_bessel_k</b></p>
 <div class="table-contents"><table class="table" summary="Errors Rates in cyl_bessel_k">
 <colgroup>
 <col>
@@ -326,7 +326,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.special.bessel.mbessel.implementation"></a><h5>
-<a name="id673296"></a>
+<a name="id711372"></a>
           <a href="mbessel.html#math_toolkit.special.bessel.mbessel.implementation">Implementation</a>
         </h5>
 <p>
@@ -469,8 +469,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/sph_bessel.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/sph_bessel.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/bessel/sph_bessel.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Bessel Functions of the First and Second Kinds</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.bessel.sph_bessel.synopsis"></a><h5>
-<a name="id673974"></a>
+<a name="id712050"></a>
           <a href="sph_bessel.html#math_toolkit.special.bessel.sph_bessel.synopsis">Synopsis</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T2</span><span class="special">&gt;</span>
@@ -44,7 +44,7 @@
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">sph_neumann</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="identifier">v</span><span class="special">,</span> <span class="identifier">T2</span> <span class="identifier">x</span><span class="special">,</span> <span class="keyword">const</span> <a href="../../policy.html" title="Policies">Policy</a><span class="special">&amp;);</span>
 </pre>
 <a name="math_toolkit.special.bessel.sph_bessel.description"></a><h5>
-<a name="id674483"></a>
+<a name="id712559"></a>
           <a href="sph_bessel.html#math_toolkit.special.bessel.sph_bessel.description">Description</a>
         </h5>
 <p>
@@ -87,17 +87,17 @@
           The j<sub>v</sub> function is cyclic like J<sub>v</sub> but differs in its behaviour at the origin:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/sph_bessel_j.png" alt="sph_bessel_j"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/sph_bessel.png" align="middle"></span>
         </p>
 <p>
           Likewise y<sub>v</sub> is also cyclic for large x, but tends to -&#8734;
 for small <span class="emphasis"><em>x</em></span>:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/sph_bessel_y.png" alt="sph_bessel_y"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/sph_neumann.png" align="middle"></span>
         </p>
 <a name="math_toolkit.special.bessel.sph_bessel.testing"></a><h5>
-<a name="id674734"></a>
+<a name="id712839"></a>
           <a href="sph_bessel.html#math_toolkit.special.bessel.sph_bessel.testing">Testing</a>
         </h5>
 <p>
@@ -106,7 +106,7 @@
           implementation (with all the special case handling removed).
         </p>
 <a name="math_toolkit.special.bessel.sph_bessel.accuracy"></a><h5>
-<a name="id674773"></a>
+<a name="id712878"></a>
           <a href="sph_bessel.html#math_toolkit.special.bessel.sph_bessel.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -116,7 +116,7 @@
           refer to these functions for accuracy data.
         </p>
 <a name="math_toolkit.special.bessel.sph_bessel.implementation"></a><h5>
-<a name="id674823"></a>
+<a name="id712928"></a>
           <a href="sph_bessel.html#math_toolkit.special.bessel.sph_bessel.implementation">Implementation</a>
         </h5>
 <p>
@@ -146,8 +146,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -41,8 +41,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_1.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_1.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_1.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         of the First Kind - Legendre Form</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.ellint.ellint_1.synopsis"></a><h6>
-<a name="id680500"></a>
+<a name="id718620"></a>
           <a href="ellint_1.html#math_toolkit.special.ellint.ellint_1.synopsis">Synopsis</a>
         </h6>
 <p>
@@ -55,7 +55,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.ellint.ellint_1.description"></a><h6>
-<a name="id681063"></a>
+<a name="id719183"></a>
           <a href="ellint_1.html#math_toolkit.special.ellint.ellint_1.description">Description</a>
         </h6>
 <p>
@@ -64,7 +64,7 @@
           = F(&#960;/2, k)</em></span>.
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/ellint_1.png" alt="ellint_1"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/ellint_1.png" align="middle"></span>
         </p>
 <p>
           The return type of these functions is computed using the <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>result
@@ -123,7 +123,7 @@
 <p>
         </p>
 <a name="math_toolkit.special.ellint.ellint_1.accuracy"></a><h6>
-<a name="id681708"></a>
+<a name="id719842"></a>
           <a href="ellint_1.html#math_toolkit.special.ellint.ellint_1.accuracy">Accuracy</a>
         </h6>
 <p>
@@ -134,7 +134,7 @@
           All values are relative errors in units of epsilon.
         </p>
 <div class="table">
-<a name="id681742"></a><p class="title"><b>Table 36. Errors Rates in the Elliptic Integrals of the
+<a name="id719876"></a><p class="title"><b>Table 41. Errors Rates in the Elliptic Integrals of the
         First Kind</b></p>
 <div class="table-contents"><table class="table" summary="Errors Rates in the Elliptic Integrals of the
         First Kind">
@@ -237,7 +237,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.special.ellint.ellint_1.testing"></a><h6>
-<a name="id681904"></a>
+<a name="id720039"></a>
           <a href="ellint_1.html#math_toolkit.special.ellint.ellint_1.testing">Testing</a>
         </h6>
 <p>
@@ -247,7 +247,7 @@
           this implementation.
         </p>
 <a name="math_toolkit.special.ellint.ellint_1.implementation"></a><h6>
-<a name="id681943"></a>
+<a name="id720078"></a>
           <a href="ellint_1.html#math_toolkit.special.ellint.ellint_1.implementation">Implementation</a>
         </h6>
 <p>
@@ -266,8 +266,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_2.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_2.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_2.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         of the Second Kind - Legendre Form</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.ellint.ellint_2.synopsis"></a><h6>
-<a name="id682060"></a>
+<a name="id720194"></a>
           <a href="ellint_2.html#math_toolkit.special.ellint.ellint_2.synopsis">Synopsis</a>
         </h6>
 <p>
@@ -55,7 +55,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.ellint.ellint_2.description"></a><h6>
-<a name="id686888"></a>
+<a name="id720755"></a>
           <a href="ellint_2.html#math_toolkit.special.ellint.ellint_2.description">Description</a>
         </h6>
 <p>
@@ -64,7 +64,7 @@
           = E(&#960;/2, k)</em></span>.
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/ellint_2.png" alt="ellint_2"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/ellint_2.png" align="middle"></span>
         </p>
 <p>
           The return type of these functions is computed using the <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>result
@@ -104,7 +104,7 @@
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">ellint_2</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">k</span><span class="special">,</span> <span class="keyword">const</span> <a href="../../policy.html" title="Policies">Policy</a><span class="special">&amp;);</span>
 </pre>
 <p>
- Returns the complete elliptic integral of the first kind <span class="emphasis"><em>E(k)</em></span>:
+ Returns the complete elliptic integral of the second kind <span class="emphasis"><em>E(k)</em></span>:
         </p>
 <p>
           <span class="inlinemediaobject"><img src="../../../../equations/ellint7.png"></span>
@@ -123,7 +123,7 @@
 <p>
         </p>
 <a name="math_toolkit.special.ellint.ellint_2.accuracy"></a><h6>
-<a name="id687533"></a>
+<a name="id721414"></a>
           <a href="ellint_2.html#math_toolkit.special.ellint.ellint_2.accuracy">Accuracy</a>
         </h6>
 <p>
@@ -134,7 +134,7 @@
           All values are relative errors in units of epsilon.
         </p>
 <div class="table">
-<a name="id687567"></a><p class="title"><b>Table 37. Errors Rates in the Elliptic Integrals of the
+<a name="id721448"></a><p class="title"><b>Table 42. Errors Rates in the Elliptic Integrals of the
         Second Kind</b></p>
 <div class="table-contents"><table class="table" summary="Errors Rates in the Elliptic Integrals of the
         Second Kind">
@@ -237,7 +237,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.special.ellint.ellint_2.testing"></a><h6>
-<a name="id687729"></a>
+<a name="id721611"></a>
           <a href="ellint_2.html#math_toolkit.special.ellint.ellint_2.testing">Testing</a>
         </h6>
 <p>
@@ -247,7 +247,7 @@
           this implementation.
         </p>
 <a name="math_toolkit.special.ellint.ellint_2.implementation"></a><h6>
-<a name="id687769"></a>
+<a name="id721650"></a>
           <a href="ellint_2.html#math_toolkit.special.ellint.ellint_2.implementation">Implementation</a>
         </h6>
 <p>
@@ -266,8 +266,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_3.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_3.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_3.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,20 +7,20 @@
 <link rel="start" href="../../../index.html" title="Math Toolkit">
 <link rel="up" href="../ellint.html" title="Elliptic Integrals">
 <link rel="prev" href="ellint_2.html" title="Elliptic Integrals of the Second Kind - Legendre Form">
-<link rel="next" href="../powers.html" title="Logs, Powers, Roots and Exponentials">
+<link rel="next" href="../zetas.html" title="Zeta Functions">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="ellint_2.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ellint.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../powers.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="ellint_2.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ellint.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../zetas.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
@@ -28,7 +28,7 @@
         of the Third Kind - Legendre Form</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.ellint.ellint_3.synopsis"></a><h6>
-<a name="id687885"></a>
+<a name="id721766"></a>
           <a href="ellint_3.html#math_toolkit.special.ellint.ellint_3.synopsis">Synopsis</a>
         </h6>
 <p>
@@ -55,7 +55,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.ellint.ellint_3.description"></a><h6>
-<a name="id688584"></a>
+<a name="id722465"></a>
           <a href="ellint_3.html#math_toolkit.special.ellint.ellint_3.description">Description</a>
         </h6>
 <p>
@@ -64,7 +64,7 @@
           k) = E(n, &#960;/2, k)</em></span>.
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/ellint_3.png" alt="ellint_3"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/ellint_3.png" align="middle"></span>
         </p>
 <p>
           The return type of these functions is computed using the <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>result
@@ -135,7 +135,7 @@
           [opitonal_policy]
         </p>
 <a name="math_toolkit.special.ellint.ellint_3.accuracy"></a><h6>
-<a name="id689413"></a>
+<a name="id723308"></a>
           <a href="ellint_3.html#math_toolkit.special.ellint.ellint_3.accuracy">Accuracy</a>
         </h6>
 <p>
@@ -146,7 +146,7 @@
           All values are relative errors in units of epsilon.
         </p>
 <div class="table">
-<a name="id689447"></a><p class="title"><b>Table 38. Errors Rates in the Elliptic Integrals of the
+<a name="id723342"></a><p class="title"><b>Table 43. Errors Rates in the Elliptic Integrals of the
         Third Kind</b></p>
 <div class="table-contents"><table class="table" summary="Errors Rates in the Elliptic Integrals of the
         Third Kind">
@@ -249,7 +249,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.special.ellint.ellint_3.testing"></a><h6>
-<a name="id689610"></a>
+<a name="id723505"></a>
           <a href="ellint_3.html#math_toolkit.special.ellint.ellint_3.testing">Testing</a>
         </h6>
 <p>
@@ -259,7 +259,7 @@
           this implementation.
         </p>
 <a name="math_toolkit.special.ellint.ellint_3.implementation"></a><h6>
-<a name="id689648"></a>
+<a name="id723544"></a>
           <a href="ellint_3.html#math_toolkit.special.ellint.ellint_3.implementation">Implementation</a>
         </h6>
 <p>
@@ -320,8 +320,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -329,7 +329,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="ellint_2.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ellint.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../powers.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="ellint_2.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ellint.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../zetas.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_carlson.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_carlson.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_carlson.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Integrals - Carlson Form</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.ellint.ellint_carlson.synopsis"></a><h6>
-<a name="id676395"></a>
+<a name="id714500"></a>
           <a href="ellint_carlson.html#math_toolkit.special.ellint.ellint_carlson.synopsis">Synopsis</a>
         </h6>
 <p>
@@ -100,7 +100,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.ellint.ellint_carlson.description"></a><h6>
-<a name="id678165"></a>
+<a name="id716270"></a>
           <a href="ellint_carlson.html#math_toolkit.special.ellint.ellint_carlson.description">Description</a>
         </h6>
 <p>
@@ -109,7 +109,7 @@
           graph gives an idea of their behavior:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/ellint_c.png" alt="ellint_c"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/ellint_carlson.png" align="middle"></span>
         </p>
 <p>
           The return type of these functions is computed using the <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>result
@@ -236,7 +236,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/ellint18.png"></span>
         </p>
 <a name="math_toolkit.special.ellint.ellint_carlson.testing"></a><h6>
-<a name="id679920"></a>
+<a name="id718039"></a>
           <a href="ellint_carlson.html#math_toolkit.special.ellint.ellint_carlson.testing">Testing</a>
         </h6>
 <p>
@@ -265,7 +265,7 @@
           to verify their correctness: see the above Carlson paper for details.
         </p>
 <a name="math_toolkit.special.ellint.ellint_carlson.accuracy"></a><h6>
-<a name="id679990"></a>
+<a name="id718109"></a>
           <a href="ellint_carlson.html#math_toolkit.special.ellint.ellint_carlson.accuracy">Accuracy</a>
         </h6>
 <p>
@@ -276,7 +276,7 @@
           All values are relative errors in units of epsilon.
         </p>
 <div class="table">
-<a name="id680024"></a><p class="title"><b>Table 35. Errors Rates in the Carlson Elliptic Integrals</b></p>
+<a name="id718144"></a><p class="title"><b>Table 40. Errors Rates in the Carlson Elliptic Integrals</b></p>
 <div class="table-contents"><table class="table" summary="Errors Rates in the Carlson Elliptic Integrals">
 <colgroup>
 <col>
@@ -419,7 +419,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.special.ellint.ellint_carlson.implementation"></a><h6>
-<a name="id680255"></a>
+<a name="id718374"></a>
           <a href="ellint_carlson.html#math_toolkit.special.ellint.ellint_carlson.implementation">Implementation</a>
         </h6>
 <p>
@@ -457,8 +457,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_intro.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_intro.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/ellint/ellint_intro.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -61,14 +61,14 @@
           Elliptic integral</a>.
         </p>
 <a name="math_toolkit.special.ellint.ellint_intro.notation"></a><h5>
-<a name="id675052"></a>
+<a name="id713156"></a>
           <a href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.notation">Notation</a>
         </h5>
 <p>
           All variables are real numbers unless otherwise noted.
         </p>
 <a name="ellint_def"></a><a name="math_toolkit.special.ellint.ellint_intro.definition"></a><h5>
-<a name="id675088"></a>
+<a name="id713193"></a>
           <a href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.definition">Definition</a>
         </h5>
 <p>
@@ -257,7 +257,7 @@
 </td></tr>
 </table></div>
 <a name="ellint_theorem"></a><a name="math_toolkit.special.ellint.ellint_intro.duplication_theorem"></a><h5>
-<a name="id675844"></a>
+<a name="id713949"></a>
           <a href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.duplication_theorem">Duplication
           Theorem</a>
         </h5>
@@ -269,7 +269,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/ellint13.png"></span>
         </p>
 <a name="ellint_formula"></a><a name="math_toolkit.special.ellint.ellint_intro.carlson_s_formulas"></a><h5>
-<a name="id675919"></a>
+<a name="id714024"></a>
           <a href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.carlson_s_formulas">Carlson's
           Formulas</a>
         </h5>
@@ -287,7 +287,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/ellint15.png"></span>
         </p>
 <a name="math_toolkit.special.ellint.ellint_intro.numerical_algorithms"></a><h5>
-<a name="id676013"></a>
+<a name="id714118"></a>
           <a href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.numerical_algorithms">Numerical
           Algorithms</a>
         </h5>
@@ -301,7 +301,7 @@
           integrals with satisfactory precisions.
         </p>
 <a name="ellint_refs"></a><a name="math_toolkit.special.ellint.ellint_intro.references"></a><h5>
-<a name="id676075"></a>
+<a name="id714180"></a>
           <a href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.references">References</a>
         </h5>
 <p>
@@ -408,8 +408,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -41,8 +41,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_binomial.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_binomial.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_binomial.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -65,7 +65,7 @@
           if the result is too large to represent in type T.
         </p>
 <a name="math_toolkit.special.factorials.sf_binomial.accuracy"></a><h5>
-<a name="id637409"></a>
+<a name="id670853"></a>
           <a href="sf_binomial.html#math_toolkit.special.factorials.sf_binomial.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -74,14 +74,14 @@
           function for larger arguments.
         </p>
 <a name="math_toolkit.special.factorials.sf_binomial.testing"></a><h5>
-<a name="id637450"></a>
+<a name="id670894"></a>
           <a href="sf_binomial.html#math_toolkit.special.factorials.sf_binomial.testing">Testing</a>
         </h5>
 <p>
           The spot tests for the binomial coefficients use data generated by functions.wolfram.com.
         </p>
 <a name="math_toolkit.special.factorials.sf_binomial.implementation"></a><h5>
-<a name="id637480"></a>
+<a name="id670923"></a>
           <a href="sf_binomial.html#math_toolkit.special.factorials.sf_binomial.implementation">Implementation</a>
         </h5>
 <p>
@@ -108,8 +108,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_double_factorial.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_double_factorial.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_double_factorial.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -64,7 +64,7 @@
           of i! is possible.
         </p>
 <a name="math_toolkit.special.factorials.sf_double_factorial.accuracy"></a><h5>
-<a name="id635732"></a>
+<a name="id669175"></a>
           <a href="sf_double_factorial.html#math_toolkit.special.factorials.sf_double_factorial.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -72,14 +72,14 @@
           so error rates should be no more than a couple of epsilon higher.
         </p>
 <a name="math_toolkit.special.factorials.sf_double_factorial.testing"></a><h5>
-<a name="id635763"></a>
+<a name="id669206"></a>
           <a href="sf_double_factorial.html#math_toolkit.special.factorials.sf_double_factorial.testing">Testing</a>
         </h5>
 <p>
           The spot tests for the double factorial use data generated by functions.wolfram.com.
         </p>
 <a name="math_toolkit.special.factorials.sf_double_factorial.implementation"></a><h5>
-<a name="id635795"></a>
+<a name="id669238"></a>
           <a href="sf_double_factorial.html#math_toolkit.special.factorials.sf_double_factorial.implementation">Implementation</a>
         </h5>
 <p>
@@ -101,8 +101,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_factorial.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_factorial.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_factorial.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.special.factorials.sf_factorial"></a> Factorial
 </h4></div></div></div>
 <a name="math_toolkit.special.factorials.sf_factorial.synopsis"></a><h5>
-<a name="id634274"></a>
+<a name="id667718"></a>
           <a href="sf_factorial.html#math_toolkit.special.factorials.sf_factorial.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -54,7 +54,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.factorials.sf_factorial.description"></a><h5>
-<a name="id634698"></a>
+<a name="id668141"></a>
           <a href="sf_factorial.html#math_toolkit.special.factorials.sf_factorial.description">Description</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
@@ -112,7 +112,7 @@
           the size of further tables that depend on the factorials.
         </p>
 <a name="math_toolkit.special.factorials.sf_factorial.accuracy"></a><h5>
-<a name="id635212"></a>
+<a name="id668655"></a>
           <a href="sf_factorial.html#math_toolkit.special.factorials.sf_factorial.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -121,7 +121,7 @@
           will be the same as for tgamma.
         </p>
 <a name="math_toolkit.special.factorials.sf_factorial.testing"></a><h5>
-<a name="id635284"></a>
+<a name="id668727"></a>
           <a href="sf_factorial.html#math_toolkit.special.factorials.sf_factorial.testing">Testing</a>
         </h5>
 <p>
@@ -130,7 +130,7 @@
           function handle those cases already.
         </p>
 <a name="math_toolkit.special.factorials.sf_factorial.implementation"></a><h5>
-<a name="id635324"></a>
+<a name="id668767"></a>
           <a href="sf_factorial.html#math_toolkit.special.factorials.sf_factorial.implementation">Implementation</a>
         </h5>
 <p>
@@ -141,8 +141,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_falling_factorial.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_falling_factorial.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_falling_factorial.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -76,7 +76,7 @@
           the type of the result is T.
         </p>
 <a name="math_toolkit.special.factorials.sf_falling_factorial.accuracy"></a><h5>
-<a name="id636894"></a>
+<a name="id670338"></a>
           <a href="sf_falling_factorial.html#math_toolkit.special.factorials.sf_falling_factorial.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -84,14 +84,14 @@
           function.
         </p>
 <a name="math_toolkit.special.factorials.sf_falling_factorial.testing"></a><h5>
-<a name="id636932"></a>
+<a name="id670377"></a>
           <a href="sf_falling_factorial.html#math_toolkit.special.factorials.sf_falling_factorial.testing">Testing</a>
         </h5>
 <p>
           The spot tests for the falling factorials use data generated by functions.wolfram.com.
         </p>
 <a name="math_toolkit.special.factorials.sf_falling_factorial.implementation"></a><h5>
-<a name="id636965"></a>
+<a name="id670409"></a>
           <a href="sf_falling_factorial.html#math_toolkit.special.factorials.sf_falling_factorial.implementation">Implementation</a>
         </h5>
 <p>
@@ -103,8 +103,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_rising_factorial.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_rising_factorial.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/factorials/sf_rising_factorial.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -80,7 +80,7 @@
           the type of the result is T.
         </p>
 <a name="math_toolkit.special.factorials.sf_rising_factorial.accuracy"></a><h5>
-<a name="id636317"></a>
+<a name="id669761"></a>
           <a href="sf_rising_factorial.html#math_toolkit.special.factorials.sf_rising_factorial.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -88,14 +88,14 @@
           function.
         </p>
 <a name="math_toolkit.special.factorials.sf_rising_factorial.testing"></a><h5>
-<a name="id636355"></a>
+<a name="id669799"></a>
           <a href="sf_rising_factorial.html#math_toolkit.special.factorials.sf_rising_factorial.testing">Testing</a>
         </h5>
 <p>
           The spot tests for the rising factorials use data generated by functions.wolfram.com.
         </p>
 <a name="math_toolkit.special.factorials.sf_rising_factorial.implementation"></a><h5>
-<a name="id636387"></a>
+<a name="id669831"></a>
           <a href="sf_rising_factorial.html#math_toolkit.special.factorials.sf_rising_factorial.implementation">Implementation</a>
         </h5>
 <p>
@@ -107,8 +107,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/fpclass.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/fpclass.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/fpclass.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,34 +1,34 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Floating Point Classification: Infinities and NaN's</title>
+<title>Floating-Point Classification: Infinities and NaN's</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Math Toolkit">
 <link rel="up" href="../special.html" title="Special Functions">
-<link rel="prev" href="inv_hyper/atanh.html" title="atanh">
-<link rel="next" href="../toolkit.html" title="Internal Details and Tools (Experimental)">
+<link rel="prev" href="rounding/modf.html" title="Integer and Fractional Part Splitting (modf)">
+<link rel="next" href="next_float.html" title="Floating-Point Representation Distance (ULP), and Finding Adjacent Floating-Point Values">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="inv_hyper/atanh.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../toolkit.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="rounding/modf.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="next_float.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="math_toolkit.special.fpclass"></a><a href="fpclass.html" title="Floating Point Classification: Infinities and NaN's"> Floating Point Classification:
+<a name="math_toolkit.special.fpclass"></a><a href="fpclass.html" title="Floating-Point Classification: Infinities and NaN's"> Floating-Point Classification:
       Infinities and NaN's</a>
 </h3></div></div></div>
 <a name="math_toolkit.special.fpclass.synopsis"></a><h5>
-<a name="id696749"></a>
+<a name="id740162"></a>
         <a href="fpclass.html#math_toolkit.special.fpclass.synopsis">Synopsis</a>
       </h5>
 <pre class="programlisting"><span class="preprocessor">#define</span> <span class="identifier">FP_ZERO</span> <span class="comment">/* implementation specific value */</span>
@@ -41,19 +41,24 @@
 <span class="keyword">int</span> <span class="identifier">fpclassify</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <span class="identifier">isfinite</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">z</span><span class="special">);</span>
-
+<span class="keyword">bool</span> <span class="identifier">isfinite</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">z</span><span class="special">);</span> <span class="comment">// Neither infinity nor NaN.
+</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <span class="identifier">isinf</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">);</span>
-
+<span class="keyword">bool</span> <span class="identifier">isinf</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">);</span> <span class="comment">// Infinity (+ or -).
+</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <span class="identifier">isnan</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">);</span>
-
+<span class="keyword">bool</span> <span class="identifier">isnan</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">);</span> <span class="comment">// NaN.
+</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <span class="identifier">isnormal</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">);</span>
+<span class="keyword">bool</span> <span class="identifier">isnormal</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">);</span> <span class="comment">// isfinite and not denormalised.
+</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">\</span><span class="identifier">math</span><span class="special">\</span><span class="identifier">special_functions</span><span class="special">\</span><span class="identifier">fpclassify</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
+<p>
+ to use these functions.
+ </p>
 <a name="math_toolkit.special.fpclass.description"></a><h5>
-<a name="id697189"></a>
+<a name="id740696"></a>
         <a href="fpclass.html#math_toolkit.special.fpclass.description">Description</a>
       </h5>
 <p>
@@ -83,9 +88,18 @@
 </span><span class="comment">// As above but with namespace qualification.
 </span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">isnan</span><span class="special">)(</span><span class="identifier">z</span><span class="special">);</span>
 <span class="comment">//
-</span><span class="comment">// This will cause a compiler error is isnan is a native macro:
+</span><span class="comment">// This will cause a compiler error if isnan is a native macro:
 </span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">isnan</span><span class="special">(</span><span class="identifier">z</span><span class="special">);</span>
-<span class="comment">// So always use (boost::math::isnan)(z); instead.
+<span class="comment">// So always use instead:
+</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">isnan</span><span class="special">)(</span><span class="identifier">z</span><span class="special">);</span>
+<span class="comment">//
+</span><span class="comment">// You can also add a using statment,
+</span><span class="comment">// globally to a .cpp file, or to a local function in a .hpp file.
+</span><span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">isnan</span><span class="special">;</span>
+<span class="comment">// so you can write the shorter and less cluttered
+</span><span class="special">(</span><span class="identifier">isnan</span><span class="special">)(</span><span class="identifier">z</span><span class="special">)</span>
+<span class="comment">// But, as above, if isnan is a native macro, this causes a compiler error,
+</span><span class="comment">// because the macro always 'gets' the name first, unless enclosed in () brackets.
 </span></pre>
 <p>
         Detailed descriptions for each of these functions follows:
@@ -193,7 +207,7 @@
 <span class="keyword">bool</span> <span class="identifier">isnan</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">);</span>
 </pre>
 <p>
- Returns true only if <span class="emphasis"><em>z</em></span> is a NaN.
+ Returns true only if <span class="emphasis"><em>z</em></span> is a NaN.
       </p>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">isnormal</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">);</span>
@@ -205,8 +219,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -214,7 +228,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="inv_hyper/atanh.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../toolkit.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="rounding/modf.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="next_float.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -36,8 +36,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/acosh.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/acosh.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/acosh.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -65,11 +65,14 @@
           </p>
 <p>
         </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/acosh.png" align="middle"></span>
+ </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/asinh.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/asinh.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/asinh.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -50,6 +50,9 @@
           otherwise.
         </p>
 <p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/asinh.png" align="middle"></span>
+ </p>
+<p>
           </p>
 <p>
             The final Policy argument
@@ -62,8 +65,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/atanh.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/atanh.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/atanh.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,20 +7,20 @@
 <link rel="start" href="../../../index.html" title="Math Toolkit">
 <link rel="up" href="../inv_hyper.html" title="Inverse Hyperbolic Functions">
 <link rel="prev" href="asinh.html" title="asinh">
-<link rel="next" href="../fpclass.html" title="Floating Point Classification: Infinities and NaN's">
+<link rel="next" href="../rounding.html" title="Rounding Truncation and Integer Conversion">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="asinh.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../inv_hyper.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../fpclass.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="asinh.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../inv_hyper.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../rounding.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
@@ -73,11 +73,14 @@
           type calculation rules</em></span></a>: the return type is <code class="computeroutput"><span class="keyword">double</span></code> when T is an integer type, and T
           otherwise.
         </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/atanh.png" align="middle"></span>
+ </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -85,7 +88,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="asinh.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../inv_hyper.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../fpclass.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="asinh.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../inv_hyper.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../rounding.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/inv_hyper_over.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/inv_hyper_over.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/inv_hyper/inv_hyper_over.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -148,8 +148,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Math Toolkit">
 <link rel="up" href="../special.html" title="Special Functions">
-<link rel="prev" href="ellint/ellint_3.html" title="Elliptic Integrals of the Third Kind - Legendre Form">
+<link rel="prev" href="expint/expint_i.html" title="Exponential Integral Ei">
 <link rel="next" href="powers/log1p.html" title="log1p">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -14,13 +14,13 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="ellint/ellint_3.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="powers/log1p.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="expint/expint_i.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="powers/log1p.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
@@ -34,12 +34,14 @@
 <dt><span class="section"> sqrt1pm1</span></dt>
 <dt><span class="section"> powm1</span></dt>
 <dt><span class="section"> hypot</span></dt>
+<dt><span class="section"><a href="powers/ct_pow.html"> Compile Time Power
+ of a Runtime Base</a></span></dt>
 </dl></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -47,7 +49,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="ellint/ellint_3.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="powers/log1p.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="expint/expint_i.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="powers/log1p.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/cbrt.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/cbrt.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/cbrt.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -64,8 +64,14 @@
 <p>
           Implemented using Halley iteration.
         </p>
+<p>
+ The following graph illustrates the behaviour of cbrt:
+ </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/cbrt.png" align="middle"></span>
+ </p>
 <a name="math_toolkit.special.powers.cbrt.accuracy"></a><h5>
-<a name="id691775"></a>
+<a name="id729772"></a>
           <a href="cbrt.html#math_toolkit.special.powers.cbrt.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -73,7 +79,7 @@
           should have approximately 2 epsilon accuracy.
         </p>
 <a name="math_toolkit.special.powers.cbrt.testing"></a><h5>
-<a name="id691817"></a>
+<a name="id729813"></a>
           <a href="cbrt.html#math_toolkit.special.powers.cbrt.testing">Testing</a>
         </h5>
 <p>
@@ -83,8 +89,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/expm1.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/expm1.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/expm1.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -73,8 +73,14 @@
           specializations of this template simply forward to the platform's native
           (POSIX) implementation of this function.
         </p>
+<p>
+ The following graph illustrates the behaviour of expm1:
+ </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/expm1.png" align="middle"></span>
+ </p>
 <a name="math_toolkit.special.powers.expm1.accuracy"></a><h5>
-<a name="id691314"></a>
+<a name="id729271"></a>
           <a href="expm1.html#math_toolkit.special.powers.expm1.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -82,7 +88,7 @@
           should have approximately 1 epsilon accuracy.
         </p>
 <a name="math_toolkit.special.powers.expm1.testing"></a><h5>
-<a name="id691356"></a>
+<a name="id729312"></a>
           <a href="expm1.html#math_toolkit.special.powers.expm1.testing">Testing</a>
         </h5>
 <p>
@@ -92,8 +98,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/hypot.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/hypot.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/hypot.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,20 +7,20 @@
 <link rel="start" href="../../../index.html" title="Math Toolkit">
 <link rel="up" href="../powers.html" title="Logs, Powers, Roots and Exponentials">
 <link rel="prev" href="powm1.html" title="powm1">
-<link rel="next" href="../sinc.html" title="Sinus Cardinal and Hyperbolic Sinus Cardinal Functions">
+<link rel="next" href="ct_pow.html" title="Compile Time Power of a Runtime Base">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="powm1.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../powers.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../sinc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="powm1.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../powers.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="ct_pow.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
@@ -58,7 +58,7 @@
           representable.
         </p>
 <a name="math_toolkit.special.powers.hypot.implementation"></a><h5>
-<a name="id693279"></a>
+<a name="id731354"></a>
           <a href="hypot.html#math_toolkit.special.powers.hypot.implementation">Implementation</a>
         </h5>
 <p>
@@ -78,8 +78,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -87,7 +87,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="powm1.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../powers.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../sinc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="powm1.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../powers.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="ct_pow.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/log1p.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/log1p.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/log1p.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -86,8 +86,14 @@
           specializations of this template simply forward to the platform's native
           (POSIX) implementation of this function.
         </p>
+<p>
+ The following graph illustrates the behaviour of log1p:
+ </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/log1p.png" align="middle"></span>
+ </p>
 <a name="math_toolkit.special.powers.log1p.accuracy"></a><h5>
-<a name="id690758"></a>
+<a name="id728675"></a>
           <a href="log1p.html#math_toolkit.special.powers.log1p.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -95,7 +101,7 @@
           should have approximately 1 epsilon accuracy.
         </p>
 <a name="math_toolkit.special.powers.log1p.testing"></a><h5>
-<a name="id690799"></a>
+<a name="id728716"></a>
           <a href="log1p.html#math_toolkit.special.powers.log1p.testing">Testing</a>
         </h5>
 <p>
@@ -105,8 +111,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/powm1.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/powm1.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/powm1.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -67,15 +67,21 @@
 <p>
           Implemented in terms of <code class="computeroutput"><span class="identifier">expm1</span></code>.
         </p>
+<p>
+ The following graph illustrates the behaviour of powm1:
+ </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/powm1.png" align="middle"></span>
+ </p>
 <a name="math_toolkit.special.powers.powm1.accuracy"></a><h5>
-<a name="id692840"></a>
+<a name="id730914"></a>
           <a href="powm1.html#math_toolkit.special.powers.powm1.accuracy">Accuracy</a>
         </h5>
 <p>
           Should have approximately 2-3 epsilon accuracy.
         </p>
 <a name="math_toolkit.special.powers.powm1.testing"></a><h5>
-<a name="id692869"></a>
+<a name="id730944"></a>
           <a href="powm1.html#math_toolkit.special.powers.powm1.testing">Testing</a>
         </h5>
 <p>
@@ -85,8 +91,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/sqrt1pm1.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/sqrt1pm1.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/powers/sqrt1pm1.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -69,8 +69,14 @@
           Implemented in terms of <code class="computeroutput"><span class="identifier">log1p</span></code>
           and <code class="computeroutput"><span class="identifier">expm1</span></code>.
         </p>
+<p>
+ The following graph illustrates the behaviour of sqrt1pm1:
+ </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/sqrt1pm1.png" align="middle"></span>
+ </p>
 <a name="math_toolkit.special.powers.sqrt1pm1.accuracy"></a><h5>
-<a name="id692311"></a>
+<a name="id730346"></a>
           <a href="sqrt1pm1.html#math_toolkit.special.powers.sqrt1pm1.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -78,7 +84,7 @@
           should have approximately 3 epsilon accuracy.
         </p>
 <a name="math_toolkit.special.powers.sqrt1pm1.testing"></a><h5>
-<a name="id692352"></a>
+<a name="id730387"></a>
           <a href="sqrt1pm1.html#math_toolkit.special.powers.sqrt1pm1.testing">Testing</a>
         </h5>
 <p>
@@ -88,8 +94,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -38,8 +38,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/beta_derivative.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/beta_derivative.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/beta_derivative.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         of the Incomplete Beta Function</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_beta.beta_derivative.synopsis"></a><h5>
-<a name="id651093"></a>
+<a name="id684573"></a>
           <a href="beta_derivative.html#math_toolkit.special.sf_beta.beta_derivative.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -49,7 +49,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_beta.beta_derivative.description"></a><h5>
-<a name="id651552"></a>
+<a name="id685032"></a>
           <a href="beta_derivative.html#math_toolkit.special.sf_beta.beta_derivative.description">Description</a>
         </h5>
 <p>
@@ -76,14 +76,14 @@
 <p>
         </p>
 <a name="math_toolkit.special.sf_beta.beta_derivative.accuracy"></a><h5>
-<a name="id651669"></a>
+<a name="id685149"></a>
           <a href="beta_derivative.html#math_toolkit.special.sf_beta.beta_derivative.accuracy">Accuracy</a>
         </h5>
 <p>
           Almost identical to the incomplete beta function ibeta.
         </p>
 <a name="math_toolkit.special.sf_beta.beta_derivative.implementation"></a><h5>
-<a name="id651706"></a>
+<a name="id685187"></a>
           <a href="beta_derivative.html#math_toolkit.special.sf_beta.beta_derivative.implementation">Implementation</a>
         </h5>
 <p>
@@ -94,8 +94,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/beta_function.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/beta_function.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/beta_function.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.special.sf_beta.beta_function"></a> Beta
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_beta.beta_function.synopsis"></a><h5>
-<a name="id637612"></a>
+<a name="id671056"></a>
           <a href="beta_function.html#math_toolkit.special.sf_beta.beta_function.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -48,7 +48,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_beta.beta_function.description"></a><h5>
-<a name="id638002"></a>
+<a name="id671445"></a>
           <a href="beta_function.html#math_toolkit.special.sf_beta.beta_function.description">Description</a>
         </h5>
 <p>
@@ -58,7 +58,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/beta1.png"></span>
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/beta.png" alt="beta"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/beta.png" align="middle"></span>
         </p>
 <p>
           </p>
@@ -86,7 +86,7 @@
           type calculation rules</em></span></a> when T1 and T2 are different types.
         </p>
 <a name="math_toolkit.special.sf_beta.beta_function.accuracy"></a><h5>
-<a name="id638164"></a>
+<a name="id671622"></a>
           <a href="beta_function.html#math_toolkit.special.sf_beta.beta_function.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -98,7 +98,7 @@
           zero error</a>.
         </p>
 <div class="table">
-<a name="id638211"></a><p class="title"><b>Table 17. Peak Errors In the Beta Function</b></p>
+<a name="id671669"></a><p class="title"><b>Table 22. Peak Errors In the Beta Function</b></p>
 <div class="table-contents"><table class="table" summary="Peak Errors In the Beta Function">
 <colgroup>
 <col>
@@ -244,7 +244,7 @@
           very small.
         </p>
 <a name="math_toolkit.special.sf_beta.beta_function.testing"></a><h5>
-<a name="id638456"></a>
+<a name="id671914"></a>
           <a href="beta_function.html#math_toolkit.special.sf_beta.beta_function.testing">Testing</a>
         </h5>
 <p>
@@ -253,7 +253,7 @@
           at 1000-bit precision.
         </p>
 <a name="math_toolkit.special.sf_beta.beta_function.implementation"></a><h5>
-<a name="id638494"></a>
+<a name="id671952"></a>
           <a href="beta_function.html#math_toolkit.special.sf_beta.beta_function.implementation">Implementation</a>
         </h5>
 <p>
@@ -319,8 +319,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/ibeta_function.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/ibeta_function.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/ibeta_function.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Beta Functions</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_beta.ibeta_function.synopsis"></a><h5>
-<a name="id638817"></a>
+<a name="id672275"></a>
           <a href="ibeta_function.html#math_toolkit.special.sf_beta.ibeta_function.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -67,7 +67,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_beta.ibeta_function.description"></a><h5>
-<a name="id640199"></a>
+<a name="id673657"></a>
           <a href="ibeta_function.html#math_toolkit.special.sf_beta.ibeta_function.description">Description</a>
         </h5>
 <p>
@@ -111,7 +111,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/ibeta3.png"></span>
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/ibeta.png" alt="ibeta"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/ibeta.png" align="middle"></span>
         </p>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T2</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T3</span><span class="special">&gt;</span>
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">ibetac</span><span class="special">(</span><span class="identifier">T1</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">T2</span> <span class="identifier">b</span><span class="special">,</span> <span class="identifier">T3</span> <span class="identifier">x</span><span class="special">);</span>
@@ -153,7 +153,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/ibeta2.png"></span>
         </p>
 <a name="math_toolkit.special.sf_beta.ibeta_function.accuracy"></a><h5>
-<a name="id641739"></a>
+<a name="id675212"></a>
           <a href="ibeta_function.html#math_toolkit.special.sf_beta.ibeta_function.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -172,7 +172,7 @@
           with the wider exponent range of the long double types.
         </p>
 <div class="table">
-<a name="id641797"></a><p class="title"><b>Table 18. Errors In the Function ibeta(a,b,x)</b></p>
+<a name="id675269"></a><p class="title"><b>Table 23. Errors In the Function ibeta(a,b,x)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function ibeta(a,b,x)">
 <colgroup>
 <col>
@@ -359,7 +359,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id642146"></a><p class="title"><b>Table 19. Errors In the Function ibetac(a,b,x)</b></p>
+<a name="id675618"></a><p class="title"><b>Table 24. Errors In the Function ibetac(a,b,x)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function ibetac(a,b,x)">
 <colgroup>
 <col>
@@ -526,7 +526,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id642431"></a><p class="title"><b>Table 20. Errors In the Function beta(a, b, x)</b></p>
+<a name="id675903"></a><p class="title"><b>Table 25. Errors In the Function beta(a, b, x)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function beta(a, b, x)">
 <colgroup>
 <col>
@@ -693,7 +693,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id642711"></a><p class="title"><b>Table 21. Errors In the Function betac(a,b,x)</b></p>
+<a name="id676184"></a><p class="title"><b>Table 26. Errors In the Function betac(a,b,x)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function betac(a,b,x)">
 <colgroup>
 <col>
@@ -860,7 +860,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.special.sf_beta.ibeta_function.testing"></a><h5>
-<a name="id643005"></a>
+<a name="id676478"></a>
           <a href="ibeta_function.html#math_toolkit.special.sf_beta.ibeta_function.testing">Testing</a>
         </h5>
 <p>
@@ -878,7 +878,7 @@
           have test data that is fully independent of the code.
         </p>
 <a name="math_toolkit.special.sf_beta.ibeta_function.implementation"></a><h5>
-<a name="id643068"></a>
+<a name="id676540"></a>
           <a href="ibeta_function.html#math_toolkit.special.sf_beta.ibeta_function.implementation">Implementation</a>
         </h5>
 <p>
@@ -961,8 +961,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/ibeta_inv_function.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/ibeta_inv_function.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_beta/ibeta_inv_function.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -87,7 +87,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_beta.ibeta_inv_function.description"></a><h5>
-<a name="id646214"></a>
+<a name="id679688"></a>
           <a href="ibeta_inv_function.html#math_toolkit.special.sf_beta.ibeta_inv_function.description">Description</a>
         </h5>
 <p>
@@ -323,7 +323,7 @@
 <p>
         </p>
 <a name="math_toolkit.special.sf_beta.ibeta_inv_function.accuracy"></a><h5>
-<a name="id649934"></a>
+<a name="id683406"></a>
           <a href="ibeta_inv_function.html#math_toolkit.special.sf_beta.ibeta_inv_function.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -335,7 +335,7 @@
           or <code class="computeroutput"><span class="number">1</span></code>.
         </p>
 <a name="math_toolkit.special.sf_beta.ibeta_inv_function.testing"></a><h5>
-<a name="id650000"></a>
+<a name="id683472"></a>
           <a href="ibeta_inv_function.html#math_toolkit.special.sf_beta.ibeta_inv_function.testing">Testing</a>
         </h5>
 <p>
@@ -359,7 +359,7 @@
           </li>
 </ul></div>
 <a name="math_toolkit.special.sf_beta.ibeta_inv_function.implementation_of_ibeta_inv_and_ibetac_inv"></a><h5>
-<a name="id650077"></a>
+<a name="id683550"></a>
           <a href="ibeta_inv_function.html#math_toolkit.special.sf_beta.ibeta_inv_function.implementation_of_ibeta_inv_and_ibetac_inv">Implementation
           of ibeta_inv and ibetac_inv</a>
         </h5>
@@ -527,7 +527,7 @@
           rapidly converges on the true value.
         </p>
 <a name="math_toolkit.special.sf_beta.ibeta_inv_function.implementation_of_inverses_on_the_a_and_b_parameters"></a><h5>
-<a name="id650991"></a>
+<a name="id684476"></a>
           <a href="ibeta_inv_function.html#math_toolkit.special.sf_beta.ibeta_inv_function.implementation_of_inverses_on_the_a_and_b_parameters">Implementation
           of inverses on the a and b parameters</a>
         </h5>
@@ -554,8 +554,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -35,8 +35,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf/error_function.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf/error_function.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf/error_function.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Functions</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_erf.error_function.synopsis"></a><h5>
-<a name="id651783"></a>
+<a name="id685264"></a>
           <a href="error_function.html#math_toolkit.special.sf_erf.error_function.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -69,7 +69,7 @@
 <p>
         </p>
 <a name="math_toolkit.special.sf_erf.error_function.description"></a><h5>
-<a name="id652330"></a>
+<a name="id685810"></a>
           <a href="error_function.html#math_toolkit.special.sf_erf.error_function.description">Description</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
@@ -87,7 +87,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/erf1.png"></span>
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/erf1.png" alt="erf1"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/erf.png" align="middle"></span>
         </p>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">erfc</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">z</span><span class="special">);</span>
@@ -103,10 +103,10 @@
           <span class="inlinemediaobject"><img src="../../../../equations/erf2.png"></span>
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/erf2.png" alt="erf2"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/erfc.png" align="middle"></span>
         </p>
 <a name="math_toolkit.special.sf_erf.error_function.accuracy"></a><h5>
-<a name="id652838"></a>
+<a name="id686347"></a>
           <a href="error_function.html#math_toolkit.special.sf_erf.error_function.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -119,7 +119,7 @@
           the one shown will have effectively zero error.
         </p>
 <div class="table">
-<a name="id652899"></a><p class="title"><b>Table 22. Errors In the Function erf(z)</b></p>
+<a name="id686409"></a><p class="title"><b>Table 27. Errors In the Function erf(z)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function erf(z)">
 <colgroup>
 <col>
@@ -325,7 +325,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id653272"></a><p class="title"><b>Table 23. Errors In the Function erfc(z)</b></p>
+<a name="id686782"></a><p class="title"><b>Table 28. Errors In the Function erfc(z)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function erfc(z)">
 <colgroup>
 <col>
@@ -531,7 +531,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.special.sf_erf.error_function.testing"></a><h5>
-<a name="id653655"></a>
+<a name="id687165"></a>
           <a href="error_function.html#math_toolkit.special.sf_erf.error_function.testing">Testing</a>
         </h5>
 <p>
@@ -546,7 +546,7 @@
           check.
         </p>
 <a name="math_toolkit.special.sf_erf.error_function.implementation"></a><h5>
-<a name="id653708"></a>
+<a name="id687218"></a>
           <a href="error_function.html#math_toolkit.special.sf_erf.error_function.implementation">Implementation</a>
         </h5>
 <p>
@@ -572,22 +572,18 @@
 <p>
           For <code class="computeroutput"><span class="identifier">z</span> <span class="special">&lt;=</span>
           <span class="number">0.5</span></code> then a rational approximation
- to erf is used, based on the observation that:
+ to erf is used, based on the observation that erf is an odd function and
+ therefore erf is calculated using:
         </p>
-<pre class="programlisting"><span class="identifier">erf</span><span class="special">(</span><span class="identifier">z</span><span class="special">)/</span><span class="identifier">z</span> <span class="special">~</span> <span class="number">1.12</span><span class="special">....</span>
+<pre class="programlisting"><span class="identifier">erf</span><span class="special">(</span><span class="identifier">z</span><span class="special">)</span> <span class="special">=</span> <span class="identifier">z</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">C</span> <span class="special">+</span> <span class="identifier">R</span><span class="special">(</span><span class="identifier">z</span><span class="special">*</span><span class="identifier">z</span><span class="special">));</span>
 </pre>
 <p>
- Therefore erf is calculated using:
- </p>
-<pre class="programlisting"><span class="identifier">erf</span><span class="special">(</span><span class="identifier">z</span><span class="special">)</span> <span class="special">=</span> <span class="identifier">z</span> <span class="special">*</span> <span class="special">(</span><span class="number">1.125F</span> <span class="special">+</span> <span class="identifier">R</span><span class="special">(</span><span class="identifier">z</span><span class="special">));</span>
-</pre>
-<p>
- where the rational approximation R(z) is optimised for absolute error:
- as long as its absolute error is small enough compared to 1.125, then any
- round-off error incurred during the computation of R(z) will effectively
- disappear from the result. As a result the error for erf and erfc in this
- region is very low: the last bit is incorrect in only a very small number
- of cases.
+ where the rational approximation R(z*z) is optimised for absolute error:
+ as long as its absolute error is small enough compared to the constant
+ C, then any round-off error incurred during the computation of R(z*z) will
+ effectively disappear from the result. As a result the error for erf and
+ erfc in this region is very low: the last bit is incorrect in only a very
+ small number of cases.
         </p>
 <p>
           For <code class="computeroutput"><span class="identifier">z</span> <span class="special">&gt;</span>
@@ -603,23 +599,32 @@
           Therefore for <code class="computeroutput"><span class="identifier">z</span> <span class="special">&gt;</span>
           <span class="number">0.5</span></code> we calculate erfc using:
         </p>
-<pre class="programlisting"><span class="identifier">erfc</span><span class="special">(</span><span class="identifier">z</span><span class="special">)</span> <span class="special">=</span> <span class="identifier">exp</span><span class="special">(-</span><span class="identifier">z</span><span class="special">*</span><span class="identifier">z</span><span class="special">)</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">c</span> <span class="special">+</span> <span class="identifier">R</span><span class="special">(</span><span class="identifier">z</span><span class="special">))</span> <span class="special">/</span> <span class="identifier">z</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">erfc</span><span class="special">(</span><span class="identifier">z</span><span class="special">)</span> <span class="special">=</span> <span class="identifier">exp</span><span class="special">(-</span><span class="identifier">z</span><span class="special">*</span><span class="identifier">z</span><span class="special">)</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">C</span> <span class="special">+</span> <span class="identifier">R</span><span class="special">(</span><span class="identifier">z</span> <span class="special">-</span> <span class="identifier">B</span><span class="special">))</span> <span class="special">/</span> <span class="identifier">z</span><span class="special">;</span>
 </pre>
 <p>
- Again R(z) is optimised for absolute error, and the constant <code class="computeroutput"><span class="identifier">c</span></code> is the average of <code class="computeroutput"><span class="identifier">erfc</span><span class="special">(</span><span class="identifier">z</span><span class="special">)</span>
+ Again R(z - B) is optimised for absolute error, and the constant <code class="computeroutput"><span class="identifier">C</span></code> is the average of <code class="computeroutput"><span class="identifier">erfc</span><span class="special">(</span><span class="identifier">z</span><span class="special">)</span>
           <span class="special">*</span> <span class="identifier">exp</span><span class="special">(</span><span class="identifier">z</span><span class="special">*</span><span class="identifier">z</span><span class="special">)</span> <span class="special">*</span>
           <span class="identifier">z</span></code> taken at the endpoints of the
- range. Once again, as long as the absolute error in R(z) is small compared
- to <code class="computeroutput"><span class="identifier">c</span></code> then <code class="computeroutput"><span class="identifier">c</span> <span class="special">+</span> <span class="identifier">R</span><span class="special">(</span><span class="identifier">z</span><span class="special">)</span></code> will be correctly rounded, and the error
+ range. Once again, as long as the absolute error in R(z - B) is small compared
+ to <code class="computeroutput"><span class="identifier">c</span></code> then <code class="computeroutput"><span class="identifier">c</span> <span class="special">+</span> <span class="identifier">R</span><span class="special">(</span><span class="identifier">z</span>
+ <span class="special">-</span> <span class="identifier">B</span><span class="special">)</span></code> will be correctly rounded, and the error
           in the result will depend only on the accuracy of the exp function. In
           practice, in all but a very small number of cases, the error is confined
- to the last bit of the result.
+ to the last bit of the result. The constant <code class="computeroutput"><span class="identifier">B</span></code>
+ is chosen so that the left hand end of the range of the rational approximation
+ is 0.
         </p>
+<p>
+ For large <code class="computeroutput"><span class="identifier">z</span></code> over a range
+ [a, +&#8734;] the above approximation is modified to:
+ </p>
+<pre class="programlisting"><span class="identifier">erfc</span><span class="special">(</span><span class="identifier">z</span><span class="special">)</span> <span class="special">=</span> <span class="identifier">exp</span><span class="special">(-</span><span class="identifier">z</span><span class="special">*</span><span class="identifier">z</span><span class="special">)</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">C</span> <span class="special">+</span> <span class="identifier">R</span><span class="special">(</span><span class="number">1</span> <span class="special">/</span> <span class="identifier">z</span><span class="special">))</span> <span class="special">/</span> <span class="identifier">z</span><span class="special">;</span>
+</pre>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf/error_inv.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf/error_inv.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_erf/error_inv.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Inverses</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_erf.error_inv.synopsis"></a><h5>
-<a name="id654571"></a>
+<a name="id688239"></a>
           <a href="error_inv.html#math_toolkit.special.sf_erf.error_inv.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -69,7 +69,7 @@
 <p>
         </p>
 <a name="math_toolkit.special.sf_erf.error_inv.description"></a><h5>
-<a name="id655119"></a>
+<a name="id688785"></a>
           <a href="error_inv.html#math_toolkit.special.sf_erf.error_inv.description">Description</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
@@ -85,7 +85,7 @@
 <pre class="programlisting"><span class="identifier">p</span> <span class="special">=</span> <span class="identifier">erf</span><span class="special">(</span><span class="identifier">x</span><span class="special">);</span>
 </pre>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/erf_inv.png" alt="erf_inv"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/erf_inv.png" align="middle"></span>
         </p>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">erfc_inv</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">z</span><span class="special">);</span>
@@ -100,10 +100,10 @@
 <pre class="programlisting"><span class="identifier">p</span> <span class="special">=</span> <span class="identifier">erfc</span><span class="special">(</span><span class="identifier">x</span><span class="special">);</span>
 </pre>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/erfc_inv.png" alt="erfc_inv"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/erfc_inv.png" align="middle"></span>
         </p>
 <a name="math_toolkit.special.sf_erf.error_inv.accuracy"></a><h5>
-<a name="id655634"></a>
+<a name="id689330"></a>
           <a href="error_inv.html#math_toolkit.special.sf_erf.error_inv.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -113,7 +113,7 @@
           error functions</a>.
         </p>
 <a name="math_toolkit.special.sf_erf.error_inv.testing"></a><h5>
-<a name="id655675"></a>
+<a name="id689371"></a>
           <a href="error_inv.html#math_toolkit.special.sf_erf.error_inv.testing">Testing</a>
         </h5>
 <p>
@@ -135,7 +135,7 @@
           </li>
 </ul></div>
 <a name="math_toolkit.special.sf_erf.error_inv.implementation"></a><h5>
-<a name="id655742"></a>
+<a name="id689438"></a>
           <a href="error_inv.html#math_toolkit.special.sf_erf.error_inv.implementation">Implementation</a>
         </h5>
 <p>
@@ -195,8 +195,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -42,8 +42,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/digamma.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/digamma.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/digamma.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.special.sf_gamma.digamma"></a> Digamma
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_gamma.digamma.synopsis"></a><h5>
-<a name="id622764"></a>
+<a name="id656128"></a>
           <a href="digamma.html#math_toolkit.special.sf_gamma.digamma.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -48,7 +48,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_gamma.digamma.description"></a><h5>
-<a name="id623085"></a>
+<a name="id656449"></a>
           <a href="digamma.html#math_toolkit.special.sf_gamma.digamma.description">Description</a>
         </h5>
 <p>
@@ -59,7 +59,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/digamma1.png"></span>
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/digamma.png" alt="digamma"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/digamma.png" align="middle"></span>
         </p>
 <p>
           </p>
@@ -82,7 +82,7 @@
           T otherwise.
         </p>
 <a name="math_toolkit.special.sf_gamma.digamma.accuracy"></a><h5>
-<a name="id623231"></a>
+<a name="id656609"></a>
           <a href="digamma.html#math_toolkit.special.sf_gamma.digamma.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -270,7 +270,7 @@
           absolute error will remain very low.
         </p>
 <a name="math_toolkit.special.sf_gamma.digamma.testing"></a><h5>
-<a name="id623535"></a>
+<a name="id656913"></a>
           <a href="digamma.html#math_toolkit.special.sf_gamma.digamma.testing">Testing</a>
         </h5>
 <p>
@@ -280,7 +280,7 @@
           see below).
         </p>
 <a name="math_toolkit.special.sf_gamma.digamma.implementation"></a><h5>
-<a name="id623577"></a>
+<a name="id656956"></a>
           <a href="digamma.html#math_toolkit.special.sf_gamma.digamma.implementation">Implementation</a>
         </h5>
 <p>
@@ -379,8 +379,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/gamma_derivatives.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/gamma_derivatives.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/gamma_derivatives.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         of the Incomplete Gamma Function</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_gamma.gamma_derivatives.synopsis"></a><h5>
-<a name="id633637"></a>
+<a name="id667081"></a>
           <a href="gamma_derivatives.html#math_toolkit.special.sf_gamma.gamma_derivatives.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -49,7 +49,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_gamma.gamma_derivatives.description"></a><h5>
-<a name="id634028"></a>
+<a name="id667472"></a>
           <a href="gamma_derivatives.html#math_toolkit.special.sf_gamma.gamma_derivatives.description">Description</a>
         </h5>
 <p>
@@ -80,7 +80,7 @@
           otherwise the return type is simply T1.
         </p>
 <a name="math_toolkit.special.sf_gamma.gamma_derivatives.accuracy"></a><h5>
-<a name="id634152"></a>
+<a name="id667596"></a>
           <a href="gamma_derivatives.html#math_toolkit.special.sf_gamma.gamma_derivatives.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -88,7 +88,7 @@
           refer to the documentation for that function for more information.
         </p>
 <a name="math_toolkit.special.sf_gamma.gamma_derivatives.implementation"></a><h5>
-<a name="id634193"></a>
+<a name="id667637"></a>
           <a href="gamma_derivatives.html#math_toolkit.special.sf_gamma.gamma_derivatives.implementation">Implementation</a>
         </h5>
 <p>
@@ -99,8 +99,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/gamma_ratios.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/gamma_ratios.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/gamma_ratios.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -51,7 +51,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_gamma.gamma_ratios.description"></a><h5>
-<a name="id624953"></a>
+<a name="id658331"></a>
           <a href="gamma_ratios.html#math_toolkit.special.sf_gamma.gamma_ratios.description">Description</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T2</span><span class="special">&gt;</span>
@@ -113,8 +113,11 @@
           type calculation rules</em></span></a> when T1 and T2 are different types,
           otherwise the result type is simple T1.
         </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/tgamma_delta_ratio.png" align="middle"></span>
+ </p>
 <a name="math_toolkit.special.sf_gamma.gamma_ratios.accuracy"></a><h5>
-<a name="id625688"></a>
+<a name="id659102"></a>
           <a href="gamma_ratios.html#math_toolkit.special.sf_gamma.gamma_ratios.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -124,7 +127,7 @@
           <a href="../../backgrounders/relative_error.html#zero_error">effectively zero error</a>.
         </p>
 <div class="table">
-<a name="id625722"></a><p class="title"><b>Table 11. Errors In the Function tgamma_delta_ratio(a, delta)</b></p>
+<a name="id659135"></a><p class="title"><b>Table 16. Errors In the Function tgamma_delta_ratio(a, delta)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function tgamma_delta_ratio(a, delta)">
 <colgroup>
 <col>
@@ -227,7 +230,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id625882"></a><p class="title"><b>Table 12. Errors In the Function tgamma_ratio(a,
+<a name="id659295"></a><p class="title"><b>Table 17. Errors In the Function tgamma_ratio(a,
         b)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function tgamma_ratio(a,
         b)">
@@ -326,7 +329,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.special.sf_gamma.gamma_ratios.testing"></a><h5>
-<a name="id626044"></a>
+<a name="id659457"></a>
           <a href="gamma_ratios.html#math_toolkit.special.sf_gamma.gamma_ratios.testing">Testing</a>
         </h5>
 <p>
@@ -335,7 +338,7 @@
           a deliberately naive calculation of &#915;(x)/&#915;(y).
         </p>
 <a name="math_toolkit.special.sf_gamma.gamma_ratios.implementation"></a><h5>
-<a name="id626086"></a>
+<a name="id659498"></a>
           <a href="gamma_ratios.html#math_toolkit.special.sf_gamma.gamma_ratios.implementation">Implementation</a>
         </h5>
 <p>
@@ -352,8 +355,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/igamma.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/igamma.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/igamma.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Functions</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_gamma.igamma.synopsis"></a><h5>
-<a name="id626160"></a>
+<a name="id659571"></a>
           <a href="igamma.html#math_toolkit.special.sf_gamma.igamma.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -67,7 +67,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_gamma.igamma.description"></a><h5>
-<a name="id627266"></a>
+<a name="id660677"></a>
           <a href="igamma.html#math_toolkit.special.sf_gamma.igamma.description">Description</a>
         </h5>
 <p>
@@ -113,7 +113,7 @@
           This function changes rapidly from 0 to 1 around the point z == a:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/gamma_p.png" alt="gamma_p"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/gamma_p.png" align="middle"></span>
         </p>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T2</span><span class="special">&gt;</span>
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">gamma_q</span><span class="special">(</span><span class="identifier">T1</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">T2</span> <span class="identifier">z</span><span class="special">);</span>
@@ -131,7 +131,7 @@
           This function changes rapidly from 1 to 0 around the point z == a:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/gamma_q.png" alt="gamma_q"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/gamma_q.png" align="middle"></span>
         </p>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T2</span><span class="special">&gt;</span>
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">tgamma_lower</span><span class="special">(</span><span class="identifier">T1</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">T2</span> <span class="identifier">z</span><span class="special">);</span>
@@ -160,7 +160,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/igamma1.png"></span>
         </p>
 <a name="math_toolkit.special.sf_gamma.igamma.accuracy"></a><h5>
-<a name="id628561"></a>
+<a name="id662001"></a>
           <a href="igamma.html#math_toolkit.special.sf_gamma.igamma.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -185,7 +185,7 @@
           All values are in units of epsilon.
         </p>
 <div class="table">
-<a name="id628631"></a><p class="title"><b>Table 13. Errors In the Function gamma_p(a,z)</b></p>
+<a name="id662070"></a><p class="title"><b>Table 18. Errors In the Function gamma_p(a,z)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function gamma_p(a,z)">
 <colgroup>
 <col>
@@ -372,7 +372,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id628950"></a><p class="title"><b>Table 14. Errors In the Function gamma_q(a,z)</b></p>
+<a name="id662389"></a><p class="title"><b>Table 19. Errors In the Function gamma_q(a,z)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function gamma_q(a,z)">
 <colgroup>
 <col>
@@ -558,7 +558,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id629288"></a><p class="title"><b>Table 15. Errors In the Function tgamma_lower(a,z)</b></p>
+<a name="id662727"></a><p class="title"><b>Table 20. Errors In the Function tgamma_lower(a,z)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function tgamma_lower(a,z)">
 <colgroup>
 <col>
@@ -693,7 +693,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id629501"></a><p class="title"><b>Table 16. Errors In the Function tgamma(a,z)</b></p>
+<a name="id662940"></a><p class="title"><b>Table 21. Errors In the Function tgamma(a,z)</b></p>
 <div class="table-contents"><table class="table" summary="Errors In the Function tgamma(a,z)">
 <colgroup>
 <col>
@@ -828,7 +828,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="math_toolkit.special.sf_gamma.igamma.testing"></a><h5>
-<a name="id629722"></a>
+<a name="id663162"></a>
           <a href="igamma.html#math_toolkit.special.sf_gamma.igamma.testing">Testing</a>
         </h5>
 <p>
@@ -844,7 +844,7 @@
           fraction (see below) is unstable for small a and z.
         </p>
 <a name="math_toolkit.special.sf_gamma.igamma.implementation"></a><h5>
-<a name="id629779"></a>
+<a name="id663220"></a>
           <a href="igamma.html#math_toolkit.special.sf_gamma.igamma.implementation">Implementation</a>
         </h5>
 <p>
@@ -1013,7 +1013,7 @@
           by Temme (see references below).
         </p>
 <a name="math_toolkit.special.sf_gamma.igamma.references"></a><h5>
-<a name="id630803"></a>
+<a name="id664246"></a>
           <a href="igamma.html#math_toolkit.special.sf_gamma.igamma.references">References</a>
         </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -1039,8 +1039,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/igamma_inv.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/igamma_inv.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/igamma_inv.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Gamma Function Inverses</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_gamma.igamma_inv.synopsis"></a><h5>
-<a name="id630885"></a>
+<a name="id664328"></a>
           <a href="igamma_inv.html#math_toolkit.special.sf_gamma.igamma_inv.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -67,7 +67,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_gamma.igamma_inv.description"></a><h5>
-<a name="id631993"></a>
+<a name="id665437"></a>
           <a href="igamma_inv.html#math_toolkit.special.sf_gamma.igamma_inv.description">Description</a>
         </h5>
 <p>
@@ -173,7 +173,7 @@
           0</em></span>.
         </p>
 <a name="math_toolkit.special.sf_gamma.igamma_inv.accuracy"></a><h5>
-<a name="id633384"></a>
+<a name="id666828"></a>
           <a href="igamma_inv.html#math_toolkit.special.sf_gamma.igamma_inv.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -187,7 +187,7 @@
           functions.
         </p>
 <a name="math_toolkit.special.sf_gamma.igamma_inv.testing"></a><h5>
-<a name="id633438"></a>
+<a name="id666882"></a>
           <a href="igamma_inv.html#math_toolkit.special.sf_gamma.igamma_inv.testing">Testing</a>
         </h5>
 <p>
@@ -210,7 +210,7 @@
           </li>
 </ul></div>
 <a name="math_toolkit.special.sf_gamma.igamma_inv.implementation"></a><h5>
-<a name="id633513"></a>
+<a name="id666957"></a>
           <a href="igamma_inv.html#math_toolkit.special.sf_gamma.igamma_inv.implementation">Implementation</a>
         </h5>
 <p>
@@ -249,8 +249,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/lgamma.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/lgamma.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/lgamma.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.special.sf_gamma.lgamma"></a> Log Gamma
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_gamma.lgamma.synopsis"></a><h5>
-<a name="id620417"></a>
+<a name="id653766"></a>
           <a href="lgamma.html#math_toolkit.special.sf_gamma.lgamma.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -54,7 +54,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_gamma.lgamma.description"></a><h5>
-<a name="id620951"></a>
+<a name="id654301"></a>
           <a href="lgamma.html#math_toolkit.special.sf_gamma.lgamma.description">Description</a>
         </h5>
 <p>
@@ -79,7 +79,7 @@
 <p>
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/lgamma.png" alt="lgamma"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/lgamma.png" align="middle"></span>
         </p>
 <p>
           There are effectively two versions of this function internally: a fully
@@ -98,7 +98,7 @@
           T otherwise.
         </p>
 <a name="math_toolkit.special.sf_gamma.lgamma.accuracy"></a><h5>
-<a name="id621139"></a>
+<a name="id654503"></a>
           <a href="lgamma.html#math_toolkit.special.sf_gamma.lgamma.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -349,7 +349,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.special.sf_gamma.lgamma.testing"></a><h5>
-<a name="id621662"></a>
+<a name="id655026"></a>
           <a href="lgamma.html#math_toolkit.special.sf_gamma.lgamma.testing">Testing</a>
         </h5>
 <p>
@@ -360,7 +360,7 @@
           Random tests in key problem areas are also used.
         </p>
 <a name="math_toolkit.special.sf_gamma.lgamma.implementation"></a><h5>
-<a name="id621698"></a>
+<a name="id655062"></a>
           <a href="lgamma.html#math_toolkit.special.sf_gamma.lgamma.implementation">Implementation</a>
         </h5>
 <p>
@@ -472,8 +472,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/tgamma.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/tgamma.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_gamma/tgamma.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.special.sf_gamma.tgamma"></a> Gamma
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_gamma.tgamma.synopsis"></a><h5>
-<a name="id618014"></a>
+<a name="id651350"></a>
           <a href="tgamma.html#math_toolkit.special.sf_gamma.tgamma.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -54,7 +54,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_gamma.tgamma.description"></a><h5>
-<a name="id618504"></a>
+<a name="id651840"></a>
           <a href="tgamma.html#math_toolkit.special.sf_gamma.tgamma.description">Description</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
@@ -70,7 +70,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/gamm1.png"></span>
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/gamma.png" alt="gamma"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/tgamma.png" align="middle"></span>
         </p>
 <p>
           </p>
@@ -129,7 +129,7 @@
 <p>
         </p>
 <a name="math_toolkit.special.sf_gamma.tgamma.accuracy"></a><h5>
-<a name="id619175"></a>
+<a name="id652527"></a>
           <a href="tgamma.html#math_toolkit.special.sf_gamma.tgamma.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -384,7 +384,7 @@
 </tbody>
 </table></div>
 <a name="math_toolkit.special.sf_gamma.tgamma.testing"></a><h5>
-<a name="id619713"></a>
+<a name="id653062"></a>
           <a href="tgamma.html#math_toolkit.special.sf_gamma.tgamma.testing">Testing</a>
         </h5>
 <p>
@@ -399,7 +399,7 @@
           a lanczos approximation accurate to around 100 decimal digits.
         </p>
 <a name="math_toolkit.special.sf_gamma.tgamma.implementation"></a><h5>
-<a name="id619805"></a>
+<a name="id653155"></a>
           <a href="tgamma.html#math_toolkit.special.sf_gamma.tgamma.implementation">Implementation</a>
         </h5>
 <p>
@@ -464,8 +464,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -37,8 +37,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/hermite.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/hermite.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/hermite.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.special.sf_poly.hermite"></a> Hermite Polynomials
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_poly.hermite.synopsis"></a><h5>
-<a name="id663971"></a>
+<a name="id697710"></a>
           <a href="hermite.html#math_toolkit.special.sf_poly.hermite.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -51,7 +51,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_poly.hermite.description"></a><h5>
-<a name="id664478"></a>
+<a name="id698217"></a>
           <a href="hermite.html#math_toolkit.special.sf_poly.hermite.description">Description</a>
         </h5>
 <p>
@@ -88,7 +88,7 @@
           Polynomials:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/hermite.png" alt="hermite"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/hermite.png" align="middle"></span>
         </p>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T2</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T3</span><span class="special">&gt;</span>
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">hermite_next</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="identifier">n</span><span class="special">,</span> <span class="identifier">T1</span> <span class="identifier">x</span><span class="special">,</span> <span class="identifier">T2</span> <span class="identifier">Hn</span><span class="special">,</span> <span class="identifier">T3</span> <span class="identifier">Hnm1</span><span class="special">);</span>
@@ -136,7 +136,7 @@
 </dl>
 </div>
 <a name="math_toolkit.special.sf_poly.hermite.accuracy"></a><h5>
-<a name="id665476"></a>
+<a name="id699230"></a>
           <a href="hermite.html#math_toolkit.special.sf_poly.hermite.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -146,7 +146,7 @@
           zero error</a>.
         </p>
 <div class="table">
-<a name="id665507"></a><p class="title"><b>Table 29. Peak Errors In the Hermite Polynomial</b></p>
+<a name="id699260"></a><p class="title"><b>Table 34. Peak Errors In the Hermite Polynomial</b></p>
 <div class="table-contents"><table class="table" summary="Peak Errors In the Hermite Polynomial">
 <colgroup>
 <col>
@@ -253,7 +253,7 @@
           is very close to a root.
         </p>
 <a name="math_toolkit.special.sf_poly.hermite.testing"></a><h5>
-<a name="id665683"></a>
+<a name="id699437"></a>
           <a href="hermite.html#math_toolkit.special.sf_poly.hermite.testing">Testing</a>
         </h5>
 <p>
@@ -263,7 +263,7 @@
           precision.
         </p>
 <a name="math_toolkit.special.sf_poly.hermite.implementation"></a><h5>
-<a name="id665722"></a>
+<a name="id699476"></a>
           <a href="hermite.html#math_toolkit.special.sf_poly.hermite.implementation">Implementation</a>
         </h5>
 <p>
@@ -274,8 +274,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/laguerre.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/laguerre.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/laguerre.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Associated) Polynomials</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_poly.laguerre.synopsis"></a><h5>
-<a name="id660565"></a>
+<a name="id694289"></a>
           <a href="laguerre.html#math_toolkit.special.sf_poly.laguerre.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -62,7 +62,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_poly.laguerre.description"></a><h5>
-<a name="id661482"></a>
+<a name="id695206"></a>
           <a href="laguerre.html#math_toolkit.special.sf_poly.laguerre.description">Description</a>
         </h5>
 <p>
@@ -99,7 +99,7 @@
           Polynomials:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/laguerre.png" alt="laguerre"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/laguerre.png" align="middle"></span>
         </p>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">laguerre</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="identifier">n</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="identifier">m</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">x</span><span class="special">);</span>
@@ -210,7 +210,7 @@
 </dl>
 </div>
 <a name="math_toolkit.special.sf_poly.laguerre.accuracy"></a><h5>
-<a name="id663505"></a>
+<a name="id697244"></a>
           <a href="laguerre.html#math_toolkit.special.sf_poly.laguerre.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -220,7 +220,7 @@
           zero error</a>.
         </p>
 <div class="table">
-<a name="id663536"></a><p class="title"><b>Table 27. Peak Errors In the Laguerre Polynomial</b></p>
+<a name="id697275"></a><p class="title"><b>Table 32. Peak Errors In the Laguerre Polynomial</b></p>
 <div class="table-contents"><table class="table" summary="Peak Errors In the Laguerre Polynomial">
 <colgroup>
 <col>
@@ -320,7 +320,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id663702"></a><p class="title"><b>Table 28. Peak Errors In the Associated Laguerre
+<a name="id697440"></a><p class="title"><b>Table 33. Peak Errors In the Associated Laguerre
         Polynomial</b></p>
 <div class="table-contents"><table class="table" summary="Peak Errors In the Associated Laguerre
         Polynomial">
@@ -429,7 +429,7 @@
           is very close to a root.
         </p>
 <a name="math_toolkit.special.sf_poly.laguerre.testing"></a><h5>
-<a name="id663879"></a>
+<a name="id697618"></a>
           <a href="laguerre.html#math_toolkit.special.sf_poly.laguerre.testing">Testing</a>
         </h5>
 <p>
@@ -439,7 +439,7 @@
           precision.
         </p>
 <a name="math_toolkit.special.sf_poly.laguerre.implementation"></a><h5>
-<a name="id663918"></a>
+<a name="id697656"></a>
           <a href="laguerre.html#math_toolkit.special.sf_poly.laguerre.implementation">Implementation</a>
         </h5>
 <p>
@@ -450,8 +450,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/legendre.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/legendre.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/legendre.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Associated) Polynomials</a>
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_poly.legendre.synopsis"></a><h5>
-<a name="id656263"></a>
+<a name="id689958"></a>
           <a href="legendre.html#math_toolkit.special.sf_poly.legendre.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -84,7 +84,7 @@
 <p>
         </p>
 <a name="math_toolkit.special.sf_poly.legendre.description"></a><h5>
-<a name="id657440"></a>
+<a name="id691135"></a>
           <a href="legendre.html#math_toolkit.special.sf_poly.legendre.description">Description</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
@@ -113,7 +113,7 @@
           Polynomials:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/legendre_p1.png" alt="legendre_p1"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/legendre_p.png" align="middle"></span>
         </p>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">legendre_p</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">l</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">m</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">x</span><span class="special">);</span>
@@ -192,7 +192,7 @@
           second kind:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/legendre_q.png" alt="legendre_q"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/legendre_q.png" align="middle"></span>
         </p>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T2</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T3</span><span class="special">&gt;</span>
 <a href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">legendre_next</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="identifier">l</span><span class="special">,</span> <span class="identifier">T1</span> <span class="identifier">x</span><span class="special">,</span> <span class="identifier">T2</span> <span class="identifier">Pl</span><span class="special">,</span> <span class="identifier">T3</span> <span class="identifier">Plm1</span><span class="special">);</span>
@@ -292,7 +292,7 @@
 </dl>
 </div>
 <a name="math_toolkit.special.sf_poly.legendre.accuracy"></a><h5>
-<a name="id659858"></a>
+<a name="id693582"></a>
           <a href="legendre.html#math_toolkit.special.sf_poly.legendre.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -302,7 +302,7 @@
           zero error</a>.
         </p>
 <div class="table">
-<a name="id659889"></a><p class="title"><b>Table 24. Peak Errors In the Legendre P Function</b></p>
+<a name="id693613"></a><p class="title"><b>Table 29. Peak Errors In the Legendre P Function</b></p>
 <div class="table-contents"><table class="table" summary="Peak Errors In the Legendre P Function">
 <colgroup>
 <col>
@@ -431,7 +431,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id660088"></a><p class="title"><b>Table 25. Peak Errors In the Associated Legendre
+<a name="id693811"></a><p class="title"><b>Table 30. Peak Errors In the Associated Legendre
         P Function</b></p>
 <div class="table-contents"><table class="table" summary="Peak Errors In the Associated Legendre
         P Function">
@@ -533,7 +533,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id660246"></a><p class="title"><b>Table 26. Peak Errors In the Legendre Q Function</b></p>
+<a name="id693969"></a><p class="title"><b>Table 31. Peak Errors In the Legendre Q Function</b></p>
 <div class="table-contents"><table class="table" summary="Peak Errors In the Legendre Q Function">
 <colgroup>
 <col>
@@ -675,7 +675,7 @@
           given here.
         </p>
 <a name="math_toolkit.special.sf_poly.legendre.testing"></a><h5>
-<a name="id660471"></a>
+<a name="id694195"></a>
           <a href="legendre.html#math_toolkit.special.sf_poly.legendre.testing">Testing</a>
         </h5>
 <p>
@@ -685,7 +685,7 @@
           precision.
         </p>
 <a name="math_toolkit.special.sf_poly.legendre.implementation"></a><h5>
-<a name="id660510"></a>
+<a name="id694234"></a>
           <a href="legendre.html#math_toolkit.special.sf_poly.legendre.implementation">Implementation</a>
         </h5>
 <p>
@@ -696,8 +696,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/sph_harm.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/sph_harm.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sf_poly/sph_harm.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.special.sf_poly.sph_harm"></a> Spherical Harmonics
 </h4></div></div></div>
 <a name="math_toolkit.special.sf_poly.sph_harm.synopsis"></a><h5>
-<a name="id665776"></a>
+<a name="id699530"></a>
           <a href="sph_harm.html#math_toolkit.special.sf_poly.sph_harm.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -60,7 +60,7 @@
 <span class="special">}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.special.sf_poly.sph_harm.description"></a><h5>
-<a name="id666902"></a>
+<a name="id700655"></a>
           <a href="sph_harm.html#math_toolkit.special.sf_poly.sph_harm.description">Description</a>
         </h5>
 <p>
@@ -155,7 +155,7 @@
           <span class="inlinemediaobject"><img src="../../../../equations/spherical_2.png"></span>
         </p>
 <a name="math_toolkit.special.sf_poly.sph_harm.accuracy"></a><h5>
-<a name="id668175"></a>
+<a name="id701927"></a>
           <a href="sph_harm.html#math_toolkit.special.sf_poly.sph_harm.accuracy">Accuracy</a>
         </h5>
 <p>
@@ -170,7 +170,7 @@
           All values are in units of epsilon.
         </p>
 <div class="table">
-<a name="id668214"></a><p class="title"><b>Table 30. Peak Errors In the Sperical Harmonic Functions</b></p>
+<a name="id701966"></a><p class="title"><b>Table 35. Peak Errors In the Sperical Harmonic Functions</b></p>
 <div class="table-contents"><table class="table" summary="Peak Errors In the Sperical Harmonic Functions">
 <colgroup>
 <col>
@@ -276,7 +276,7 @@
           arbitrarily large when the function is very close to a root.
         </p>
 <a name="math_toolkit.special.sf_poly.sph_harm.testing"></a><h5>
-<a name="id668394"></a>
+<a name="id702146"></a>
           <a href="sph_harm.html#math_toolkit.special.sf_poly.sph_harm.testing">Testing</a>
         </h5>
 <p>
@@ -286,7 +286,7 @@
           precision.
         </p>
 <a name="math_toolkit.special.sf_poly.sph_harm.implementation"></a><h5>
-<a name="id668432"></a>
+<a name="id702185"></a>
           <a href="sph_harm.html#math_toolkit.special.sf_poly.sph_harm.implementation">Implementation</a>
         </h5>
 <p>
@@ -301,8 +301,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Math Toolkit">
 <link rel="up" href="../special.html" title="Special Functions">
-<link rel="prev" href="powers/hypot.html" title="hypot">
+<link rel="prev" href="powers/ct_pow.html" title="Compile Time Power of a Runtime Base">
 <link rel="next" href="sinc/sinc_overview.html" title="Sinus Cardinal and Hyperbolic Sinus Cardinal Functions Overview">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -14,13 +14,13 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="powers/hypot.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sinc/sinc_overview.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="powers/ct_pow.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sinc/sinc_overview.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
@@ -36,8 +36,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -45,7 +45,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="powers/hypot.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sinc/sinc_overview.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="powers/ct_pow.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sinc/sinc_overview.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinc_overview.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinc_overview.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinc_overview.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -30,13 +30,21 @@
 <p>
           The <a href="http://mathworld.wolfram.com/SincFunction.html" target="_top">Sinus Cardinal
           family of functions</a> (indexed by the family of indices <code class="literal">a
- &gt; 0</code>) is defined by <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb20.png"></span>;
+ &gt; 0</code>) is defined by
+ </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb20.png"></span>
+ </p>
+<p>
           it sees heavy use in signal processing tasks.
         </p>
 <p>
           By analogy, the <a href="http://mathworld.wolfram.com/SinhcFunction.htm" target="_top">Hyperbolic
           Sinus Cardinal</a> family of functions (also indexed by the family
- of indices <code class="literal">a &gt; 0</code>) is defined by <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb22.png"></span>.
+ of indices <code class="literal">a &gt; 0</code>) is defined by
+ </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb22.png"></span>
         </p>
 <p>
           These two families of functions are composed of entire functions.
@@ -70,8 +78,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinc_pi.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinc_pi.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinc_pi.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -56,6 +56,9 @@
           series are used at the origin to ensure accuracy.
         </p>
 <p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/sinc_pi.png" align="middle"></span>
+ </p>
+<p>
           </p>
 <p>
             The final Policy argument
@@ -68,8 +71,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinhc_pi.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinhc_pi.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/special/sinc/sinhc_pi.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -69,11 +69,14 @@
           </p>
 <p>
         </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../../graphs/sinhc_pi.png" align="middle"></span>
+ </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -35,8 +35,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/compilers.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/compilers.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/compilers.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -37,7 +37,7 @@
 <p>
         </p>
 <div class="table">
-<a name="id789557"></a><p class="title"><b>Table 47. Supported/Tested Compilers</b></p>
+<a name="id864355"></a><p class="title"><b>Table 55. Supported/Tested Compilers</b></p>
 <div class="table-contents"><table class="table" summary="Supported/Tested Compilers">
 <colgroup>
 <col>
@@ -528,9 +528,10 @@
               </td>
 <td>
               <p>
- Currently our accuracy tests are unable to be run on this platform
- due to compiler errors in our <span class="emphasis"><em>test</em></span> code. The
- IBM compiler group are aware of the problem.
+ All tests pass except for our fpclassify tests which fail due to
+ a bug in <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span></code>, the bug effects
+ the test code, not fpclassify itself. The IBM compiler group are
+ aware of the problem.
               </p>
               </td>
 </tr>
@@ -539,7 +540,7 @@
 </div>
 <p><br class="table-break"> </p>
 <div class="table">
-<a name="id790333"></a><p class="title"><b>Table 48. Unsupported Compilers</b></p>
+<a name="id865148"></a><p class="title"><b>Table 56. Unsupported Compilers</b></p>
 <div class="table-contents"><table class="table" summary="Unsupported Compilers">
 <colgroup>
 <col>
@@ -613,8 +614,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/credits.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/credits.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/credits.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,8 +13,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -48,6 +48,10 @@
         his Google Summer of Code project 2006.
       </p>
 <p>
+ Bruno Lalande submitted the "compile time power of a runtime base"
+ code.
+ </p>
+<p>
         Professor Nico Temme for advice on the inverse incomplete beta function.
       </p>
 <p>
@@ -61,6 +65,16 @@
         several new features en route.
       </p>
 <p>
+ Plots of the functions and distributions were prepared in W3C
+ standard Scalable Vector Graphic (SVG)
+ format using a program created by Jacob Voytko during a <a href="http://code.google.com/soc/2007/" target="_top">Google
+ Summer of Code (2007)</a>. Since browser support for rendering SVG is
+ still not universal (Microsoft Internet Explorer, even IE 8 beta, still lacks
+ native SVG support but can be made to work with <a href="http://www.adobe.com/svg/viewer/install/" target="_top">Adobe's
+ free SVG viewer</a> plugin), so the SVG files were batch converted to
+ JPEG using Inkscape.
+ </p>
+<p>
         We are also indebted to Matthias Schabel for managing the formal Boost-review
         of this library, and to all the reviewers - including Guillaume Melquiond,
         Arnaldur Gylfason, John Phillips, Stephan Tolksdorf and Jeff Garland - for
@@ -69,8 +83,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/history1.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/history1.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/history1.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,12 +27,50 @@
 <a name="math_toolkit.status.history1"></a> History and What's New
 </h3></div></div></div>
 <p>
- <a name="math_toolkit.status.history1.milestone_5__post_review_first_official_release"></a>
+ <a name="math_toolkit.status.history1.boost_1_36_0"></a>
         </p>
 <h5>
-<a name="id789179"></a>
- <a href="history1.html#math_toolkit.status.history1.milestone_5__post_review_first_official_release">Milestone
- 5: Post Review First Official Release</a>
+<a name="id863904"></a>
+ Boost-1.36.0
+ </h5>
+<p>
+ </p>
+<div class="itemizedlist"><ul type="disc">
+<li>
+ Added Noncentral Chi Squared Distribution.
+ </li>
+<li>
+ Added Noncentral Beta Distribution.
+ </li>
+<li>
+ Added Noncentral F Distribution.
+ </li>
+<li>
+ Added Noncentral T Distribution.
+ </li>
+<li>
+ Added Exponential Integral Functions.
+ </li>
+<li>
+ Added Zeta Function.
+ </li>
+<li>
+ Added Rounding and Truncation functions.
+ </li>
+<li>
+ Added Compile time powers of runtime bases.
+ </li>
+<li>
+ Added SSE2 optimizations for Lanczos evaluation.
+ </li>
+</ul></div>
+<p>
+ <a name="math_toolkit.status.history1.boost_1_35_0__post_review_first_official_release"></a>
+ </p>
+<h5>
+<a name="id863977"></a>
+ <a href="history1.html#math_toolkit.status.history1.boost_1_35_0__post_review_first_official_release">Boost-1.35.0:
+ Post Review First Official Release</a>
         </h5>
 <p>
         </p>
@@ -67,7 +105,7 @@
         <a name="math_toolkit.status.history1.milestone_4__second_review_candidate__1st_march_2007_"></a>
         </p>
 <h5>
-<a name="id789282"></a>
+<a name="id864080"></a>
           <a href="history1.html#math_toolkit.status.history1.milestone_4__second_review_candidate__1st_march_2007_">Milestone
           4: Second Review Candidate (1st March 2007)</a>
         </h5>
@@ -86,7 +124,7 @@
         <a name="math_toolkit.status.history1.milestone_3__first_review_candidate__31st_dec_2006_"></a>
         </p>
 <h5>
-<a name="id789323"></a>
+<a name="id864121"></a>
           <a href="history1.html#math_toolkit.status.history1.milestone_3__first_review_candidate__31st_dec_2006_">Milestone
           3: First Review Candidate (31st Dec 2006)</a>
         </h5>
@@ -119,7 +157,7 @@
         <a name="math_toolkit.status.history1.milestone_2__released_september_10th_2006"></a>
         </p>
 <h5>
-<a name="id789389"></a>
+<a name="id864186"></a>
           <a href="history1.html#math_toolkit.status.history1.milestone_2__released_september_10th_2006">Milestone
           2: Released September 10th 2006</a>
         </h5>
@@ -160,7 +198,7 @@
         <a name="math_toolkit.status.history1.milestone_1__released_march_31st_2006"></a>
         </p>
 <h5>
-<a name="id789466"></a>
+<a name="id864264"></a>
           <a href="history1.html#math_toolkit.status.history1.milestone_1__released_march_31st_2006">Milestone
           1: Released March 31st 2006</a>
         </h5>
@@ -195,15 +233,15 @@
 <p>
         </p>
 <p>
- Sandbox and trunk last synchonised at revision: 41065.
+ Sandbox and trunk last synchonised at revision: 47084.
         </p>
 <p>
       </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/issues.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/issues.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/status/issues.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -43,7 +43,7 @@
         with it.
       </p>
 <a name="math_toolkit.status.issues.tgamma"></a><h5>
-<a name="id790516"></a>
+<a name="id865332"></a>
         <a href="issues.html#math_toolkit.status.issues.tgamma">tgamma</a>
       </h5>
 <div class="itemizedlist"><ul type="disc"><li>
@@ -51,7 +51,7 @@
           be optimized any further? (low priority)
         </li></ul></div>
 <a name="math_toolkit.status.issues.incomplete_beta"></a><h5>
-<a name="id790558"></a>
+<a name="id865374"></a>
         <a href="issues.html#math_toolkit.status.issues.incomplete_beta">Incomplete Beta</a>
       </h5>
 <div class="itemizedlist"><ul type="disc"><li>
@@ -59,7 +59,7 @@
           (medium priority).
         </li></ul></div>
 <a name="math_toolkit.status.issues.inverse_gamma"></a><h5>
-<a name="id790591"></a>
+<a name="id865407"></a>
         <a href="issues.html#math_toolkit.status.issues.inverse_gamma">Inverse Gamma</a>
       </h5>
 <div class="itemizedlist"><ul type="disc"><li>
@@ -67,7 +67,7 @@
           is good enough (Medium Priority).
         </li></ul></div>
 <a name="math_toolkit.status.issues.polynomials"></a><h5>
-<a name="id790624"></a>
+<a name="id865440"></a>
         <a href="issues.html#math_toolkit.status.issues.polynomials">Polynomials</a>
       </h5>
 <div class="itemizedlist"><ul type="disc"><li>
@@ -77,7 +77,7 @@
           not (Low Priority).
         </li></ul></div>
 <a name="math_toolkit.status.issues.elliptic_integrals"></a><h5>
-<a name="id790660"></a>
+<a name="id865481"></a>
         <a href="issues.html#math_toolkit.status.issues.elliptic_integrals">Elliptic Integrals</a>
       </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -127,7 +127,7 @@
         </li>
 </ul></div>
 <a name="math_toolkit.status.issues.inverse_hyperbolic_functions"></a><h5>
-<a name="id790811"></a>
+<a name="id865639"></a>
         <a href="issues.html#math_toolkit.status.issues.inverse_hyperbolic_functions">Inverse
         Hyperbolic Functions</a>
       </h5>
@@ -137,7 +137,7 @@
           is probably only an issue for very high precision types (Low Priority).
         </li></ul></div>
 <a name="math_toolkit.status.issues.statistical_distributions"></a><h5>
-<a name="id790856"></a>
+<a name="id865685"></a>
         <a href="issues.html#math_toolkit.status.issues.statistical_distributions">Statistical
         distributions</a>
       </h5>
@@ -145,11 +145,1184 @@
           Student's t Perhaps switch to normal distribution as a better approximation
           for very large degrees of freedom?
         </li></ul></div>
+<a name="math_toolkit.status.issues.feature_requests"></a><h5>
+<a name="id865719"></a>
+ Feature Requests
+ </h5>
+<p>
+ The following table lists distributions that are found in other packages
+ but which are not yet present here, the more frequently the distribution
+ is found, the higher the priority for implementing it:
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Distribution
+ </p>
+ </th>
+<th>
+ <p>
+ R
+ </p>
+ </th>
+<th>
+ <p>
+ Mathematica 6
+ </p>
+ </th>
+<th>
+ <p>
+ NIST
+ </p>
+ </th>
+<th>
+ <p>
+ Regress+
+ </p>
+ </th>
+<th>
+ <p>
+ Matlab
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ Logistic
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Hypergeometric
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Inverse Gausian / Inverse Normal
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Geometric
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Multinomial
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Tukey Lambda
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Half Normal / Folded Normal
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Chi
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Gumbel
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Discrete Uniform
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Log Series
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Nakagami (generalised Chi)
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Log Logistic
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Tukey (Studentized range)
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Wilcoxon rank sum
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Wincoxon signed rank
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Non-central Beta
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Laplace
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Maxwell
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Beta-Binomial
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Beta-negative Binomial
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Zipf
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Birnbaum-Saunders / Fatigue Life
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Double Exponential
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Power Normal
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Power Lognormal
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Cosine
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Double Gamma
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Double Weibul
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Hyperbolic Secant
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Laplace
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Semicircular
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Bradford
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Birr / Fisk
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Reciprocal
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+<td>
+ <p>
+ X
+ </p>
+ </td>
+<td>
+ <p>
+ -
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Math Toolkit">
 <link rel="up" href="../index.html" title="Math Toolkit">
-<link rel="prev" href="special/fpclass.html" title="Floating Point Classification: Infinities and NaN's">
+<link rel="prev" href="special/extern_c/tr1_ref.html" title="TR1 C Functions Quick Reference">
 <link rel="next" href="toolkit/internals_overview.html" title="Overview">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -14,13 +14,13 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="special/fpclass.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="toolkit/internals_overview.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="special/extern_c/tr1_ref.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="toolkit/internals_overview.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
@@ -57,8 +57,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -66,7 +66,7 @@
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="special/fpclass.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="toolkit/internals_overview.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="special/extern_c/tr1_ref.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="toolkit/internals_overview.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -43,8 +43,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/cf.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/cf.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/cf.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Evaluation</a>
 </h4></div></div></div>
 <a name="math_toolkit.toolkit.internals1.cf.synopsis"></a><h5>
-<a name="id699979"></a>
+<a name="id772783"></a>
           <a href="cf.html#math_toolkit.toolkit.internals1.cf.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -59,7 +59,7 @@
 <span class="special">}}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.toolkit.internals1.cf.description"></a><h5>
-<a name="id700700"></a>
+<a name="id773504"></a>
           <a href="cf.html#math_toolkit.toolkit.internals1.cf.description">Description</a>
         </h5>
 <p>
@@ -157,7 +157,7 @@
           a continued fraction for convergence.
         </p>
 <a name="math_toolkit.toolkit.internals1.cf.implementation"></a><h5>
-<a name="id700978"></a>
+<a name="id773780"></a>
           <a href="cf.html#math_toolkit.toolkit.internals1.cf.implementation">Implementation</a>
         </h5>
 <p>
@@ -167,7 +167,7 @@
           Lentz, W.J. 1976, Applied Optics, vol. 15, pp. 668-671.
         </p>
 <a name="math_toolkit.toolkit.internals1.cf.examples"></a><h5>
-<a name="id701012"></a>
+<a name="id773814"></a>
           <a href="cf.html#math_toolkit.toolkit.internals1.cf.examples">Examples</a>
         </h5>
 <p>
@@ -250,8 +250,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/minima.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/minima.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/minima.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Minima</a>
 </h4></div></div></div>
 <a name="math_toolkit.toolkit.internals1.minima.synopsis"></a><h5>
-<a name="id717687"></a>
+<a name="id790489"></a>
           <a href="minima.html#math_toolkit.toolkit.internals1.minima.synopsis">synopsis</a>
         </h5>
 <p>
@@ -45,7 +45,7 @@
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">brent_find_minima</span><span class="special">(</span><span class="identifier">F</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">min</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">max</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">bits</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">uintmax_t</span><span class="special">&amp;</span> <span class="identifier">max_iter</span><span class="special">);</span>
 </pre>
 <a name="math_toolkit.toolkit.internals1.minima.description"></a><h5>
-<a name="id718156"></a>
+<a name="id790958"></a>
           <a href="minima.html#math_toolkit.toolkit.internals1.minima.description">Description</a>
         </h5>
 <p>
@@ -88,7 +88,7 @@
           the abscissa at the minima and the value of f(x) at the minima.
         </p>
 <a name="math_toolkit.toolkit.internals1.minima.implementation"></a><h5>
-<a name="id718296"></a>
+<a name="id791098"></a>
           <a href="minima.html#math_toolkit.toolkit.internals1.minima.implementation">Implementation</a>
         </h5>
 <p>
@@ -111,8 +111,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/rational.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/rational.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/rational.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         and Rational Function Evaluation</a>
 </h4></div></div></div>
 <a name="math_toolkit.toolkit.internals1.rational.synopsis"></a><h5>
-<a name="id701994"></a>
+<a name="id774796"></a>
           <a href="rational.html#math_toolkit.toolkit.internals1.rational.synopsis">synopsis</a>
         </h5>
 <p>
@@ -79,7 +79,7 @@
 <span class="identifier">V</span> <span class="identifier">evaluate_rational</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">num</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">U</span><span class="special">*</span> <span class="identifier">denom</span><span class="special">,</span> <span class="identifier">V</span> <span class="identifier">z</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="identifier">count</span><span class="special">);</span>
 </pre>
 <a name="math_toolkit.toolkit.internals1.rational.description"></a><h5>
-<a name="id704119"></a>
+<a name="id776920"></a>
           <a href="rational.html#math_toolkit.toolkit.internals1.rational.description">Description</a>
         </h5>
 <p>
@@ -193,7 +193,7 @@
           evaluation with compile-time array sizes may offer slightly better performance.
         </p>
 <a name="math_toolkit.toolkit.internals1.rational.implementation"></a><h5>
-<a name="id706582"></a>
+<a name="id779384"></a>
           <a href="rational.html#math_toolkit.toolkit.internals1.rational.implementation">Implementation</a>
         </h5>
 <p>
@@ -222,8 +222,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/roots.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/roots.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/roots.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         With Derivatives</a>
 </h4></div></div></div>
 <a name="math_toolkit.toolkit.internals1.roots.synopsis"></a><h5>
-<a name="id706700"></a>
+<a name="id779502"></a>
           <a href="roots.html#math_toolkit.toolkit.internals1.roots.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -61,7 +61,7 @@
 <span class="special">}}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.toolkit.internals1.roots.description"></a><h5>
-<a name="id707856"></a>
+<a name="id780658"></a>
           <a href="roots.html#math_toolkit.toolkit.internals1.roots.description">Description</a>
         </h5>
 <p>
@@ -176,7 +176,7 @@
 <a name="newton"></a><p>
         </p>
 <a name="math_toolkit.toolkit.internals1.roots.newton_raphson_method"></a><h5>
-<a name="id708177"></a>
+<a name="id780979"></a>
           <a href="roots.html#math_toolkit.toolkit.internals1.roots.newton_raphson_method">Newton
           Raphson Method</a>
         </h5>
@@ -196,7 +196,7 @@
 <a name="halley"></a><p>
         </p>
 <a name="math_toolkit.toolkit.internals1.roots.halley_s_method"></a><h5>
-<a name="id708258"></a>
+<a name="id781060"></a>
           <a href="roots.html#math_toolkit.toolkit.internals1.roots.halley_s_method">Halley's
           Method</a>
         </h5>
@@ -220,7 +220,7 @@
 <a name="schroeder"></a><p>
         </p>
 <a name="math_toolkit.toolkit.internals1.roots.schroeder_s_method"></a><h5>
-<a name="id708345"></a>
+<a name="id781147"></a>
           <a href="roots.html#math_toolkit.toolkit.internals1.roots.schroeder_s_method">Schroeder's
           Method</a>
         </h5>
@@ -244,7 +244,7 @@
           iteration.
         </p>
 <a name="math_toolkit.toolkit.internals1.roots.example"></a><h5>
-<a name="id708425"></a>
+<a name="id781227"></a>
           <a href="roots.html#math_toolkit.toolkit.internals1.roots.example">Example</a>
         </h5>
 <p>
@@ -369,8 +369,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/roots2.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/roots2.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/roots2.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Without Derivatives</a>
 </h4></div></div></div>
 <a name="math_toolkit.toolkit.internals1.roots2.synopsis"></a><h5>
-<a name="id710534"></a>
+<a name="id783335"></a>
           <a href="roots2.html#math_toolkit.toolkit.internals1.roots2.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -141,7 +141,7 @@
 <span class="special">}}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.toolkit.internals1.roots2.description"></a><h5>
-<a name="id713175"></a>
+<a name="id785978"></a>
           <a href="roots2.html#math_toolkit.toolkit.internals1.roots2.description">Description</a>
         </h5>
 <p>
@@ -559,7 +559,7 @@
           as soon as both ends of the interval round to the same nearest integer.
         </p>
 <a name="math_toolkit.toolkit.internals1.roots2.implementation"></a><h5>
-<a name="id717620"></a>
+<a name="id790422"></a>
           <a href="roots2.html#math_toolkit.toolkit.internals1.roots2.implementation">Implementation</a>
         </h5>
 <p>
@@ -577,8 +577,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/series_evaluation.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/series_evaluation.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals1/series_evaluation.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Series Evaluation</a>
 </h4></div></div></div>
 <a name="math_toolkit.toolkit.internals1.series_evaluation.synopsis"></a><h5>
-<a name="id698123"></a>
+<a name="id770927"></a>
           <a href="series_evaluation.html#math_toolkit.toolkit.internals1.series_evaluation.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -61,7 +61,7 @@
 <span class="special">}}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.toolkit.internals1.series_evaluation.description"></a><h5>
-<a name="id699073"></a>
+<a name="id771876"></a>
           <a href="series_evaluation.html#math_toolkit.toolkit.internals1.series_evaluation.description">Description</a>
         </h5>
 <p>
@@ -117,7 +117,7 @@
           summation in this way.
         </p>
 <a name="math_toolkit.toolkit.internals1.series_evaluation.example"></a><h5>
-<a name="id699220"></a>
+<a name="id772024"></a>
           <a href="series_evaluation.html#math_toolkit.toolkit.internals1.series_evaluation.example">Example</a>
         </h5>
 <p>
@@ -175,8 +175,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -38,8 +38,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/error_test.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/error_test.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/error_test.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -28,7 +28,7 @@
         Error and Testing</a>
 </h4></div></div></div>
 <a name="math_toolkit.toolkit.internals2.error_test.synopsis"></a><h5>
-<a name="id722228"></a>
+<a name="id795187"></a>
           <a href="error_test.html#math_toolkit.toolkit.internals2.error_test.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -45,7 +45,7 @@
 <span class="identifier">test_result</span><span class="special">&lt;</span><span class="identifier">see</span><span class="special">-</span><span class="identifier">below</span><span class="special">&gt;</span> <span class="identifier">test</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">F1</span> <span class="identifier">test_func</span><span class="special">,</span> <span class="identifier">F2</span> <span class="identifier">expect_func</span><span class="special">);</span>
 </pre>
 <a name="math_toolkit.toolkit.internals2.error_test.description"></a><h5>
-<a name="id722579"></a>
+<a name="id795539"></a>
           <a href="error_test.html#math_toolkit.toolkit.internals2.error_test.description">Description</a>
         </h5>
 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
@@ -165,7 +165,7 @@
           is mainly a debugging/development aid (and a good place for a breakpoint).
         </p>
 <a name="math_toolkit.toolkit.internals2.error_test.example"></a><h5>
-<a name="id723530"></a>
+<a name="id796490"></a>
           <a href="error_test.html#math_toolkit.toolkit.internals2.error_test.example">Example</a>
         </h5>
 <p>
@@ -220,8 +220,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/minimax.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/minimax.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/minimax.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -176,18 +176,29 @@
 <dt><span class="term">x-offset val</span></dt>
 <dd><p>
               Sets the x-offset to <span class="emphasis"><em>val</em></span>: the approximation will
- be generated for <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">x</span> <span class="special">+</span> <span class="identifier">X</span><span class="special">)</span> <span class="special">+</span> <span class="identifier">Y</span></code> where <span class="emphasis"><em>X</em></span> is
- the x-offset and <span class="emphasis"><em>Y</em></span> is the y-offset. Defaults to
- zero. To avoid rounding errors, take care to specify a value that can
- be exactly represented as a floating point number.
+ be generated for <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">S</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">x</span> <span class="special">+</span> <span class="identifier">X</span><span class="special">))</span> <span class="special">+</span> <span class="identifier">Y</span></code>
+ where <span class="emphasis"><em>X</em></span> is the x-offset, <span class="emphasis"><em>S</em></span>
+ is the x-scale and <span class="emphasis"><em>Y</em></span> is the y-offset. Defaults
+ to zero. To avoid rounding errors, take care to specify a value that
+ can be exactly represented as a floating point number.
+ </p></dd>
+<dt><span class="term">x-scale val</span></dt>
+<dd><p>
+ Sets the x-scale to <span class="emphasis"><em>val</em></span>: the approximation will
+ be generated for <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">S</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">x</span> <span class="special">+</span> <span class="identifier">X</span><span class="special">))</span> <span class="special">+</span> <span class="identifier">Y</span></code>
+ where <span class="emphasis"><em>S</em></span> is the x-scale, <span class="emphasis"><em>X</em></span>
+ is the x-offset and <span class="emphasis"><em>Y</em></span> is the y-offset. Defaults
+ to one. To avoid rounding errors, take care to specify a value that
+ can be exactly represented as a floating point number.
             </p></dd>
 <dt><span class="term">y-offset val</span></dt>
 <dd><p>
               Sets the y-offset to <span class="emphasis"><em>val</em></span>: the approximation will
- be generated for <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">x</span> <span class="special">+</span> <span class="identifier">X</span><span class="special">)</span> <span class="special">+</span> <span class="identifier">Y</span></code> where <span class="emphasis"><em>X</em></span> is
- the x-offset and <span class="emphasis"><em>Y</em></span> is the y-offset. Defaults to
- zero. To avoid rounding errors, take care to specify a value that can
- be exactly represented as a floating point number.
+ be generated for <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">S</span> <span class="special">*</span> <span class="special">(</span><span class="identifier">x</span> <span class="special">+</span> <span class="identifier">X</span><span class="special">))</span> <span class="special">+</span> <span class="identifier">Y</span></code>
+ where <span class="emphasis"><em>X</em></span> is the x-offset, <span class="emphasis"><em>S</em></span>
+ is the x-scale and <span class="emphasis"><em>Y</em></span> is the y-offset. Defaults
+ to zero. To avoid rounding errors, take care to specify a value that
+ can be exactly represented as a floating point number.
             </p></dd>
 <dt><span class="term">y-offset auto</span></dt>
 <dd><p>
@@ -256,8 +267,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/polynomials.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/polynomials.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/polynomials.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -27,7 +27,7 @@
 <a name="math_toolkit.toolkit.internals2.polynomials"></a> Polynomials
 </h4></div></div></div>
 <a name="math_toolkit.toolkit.internals2.polynomials.synopsis"></a><h5>
-<a name="id718385"></a>
+<a name="id791187"></a>
           <a href="polynomials.html#math_toolkit.toolkit.internals2.polynomials.synopsis">Synopsis</a>
         </h5>
 <p>
@@ -103,7 +103,7 @@
 <span class="special">}}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.toolkit.internals2.polynomials.description"></a><h5>
-<a name="id721159"></a>
+<a name="id793961"></a>
           <a href="polynomials.html#math_toolkit.toolkit.internals2.polynomials.description">Description</a>
         </h5>
 <p>
@@ -122,8 +122,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/test_data.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/test_data.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals2/test_data.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,15 +7,15 @@
 <link rel="start" href="../../../index.html" title="Math Toolkit">
 <link rel="up" href="../internals2.html" title="Testing and Development">
 <link rel="prev" href="error_test.html" title="Relative Error and Testing">
-<link rel="next" href="../../using_udt.html" title="Use with User Defined Floating-Point Types">
+<link rel="next" href="../../using_udt.html" title="Use with User-Defined Floating-Point Types">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -46,7 +46,7 @@
           </li>
 </ul></div>
 <a name="math_toolkit.toolkit.internals2.test_data.synopsis"></a><h5>
-<a name="id724635"></a>
+<a name="id797586"></a>
           <a href="test_data.html#math_toolkit.toolkit.internals2.test_data.synopsis">Synopsis</a>
         </h5>
 <pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">tools</span><span class="special">{</span>
@@ -147,7 +147,7 @@
 <span class="special">}}}</span> <span class="comment">// namespaces
 </span></pre>
 <a name="math_toolkit.toolkit.internals2.test_data.description"></a><h5>
-<a name="id727560"></a>
+<a name="id800511"></a>
           <a href="test_data.html#math_toolkit.toolkit.internals2.test_data.description">Description</a>
         </h5>
 <p>
@@ -177,7 +177,7 @@
           </li>
 </ul></div>
 <a name="math_toolkit.toolkit.internals2.test_data.example_1__output_data_for_graph_plotting"></a><h6>
-<a name="id727633"></a>
+<a name="id800584"></a>
           <a href="test_data.html#math_toolkit.toolkit.internals2.test_data.example_1__output_data_for_graph_plotting">Example
           1: Output Data for Graph Plotting</a>
         </h6>
@@ -208,10 +208,10 @@
           Which, when plotted, results in:
         </p>
 <p>
- <span class="inlinemediaobject"><img src="../../../../graphs/lgamma.png" alt="lgamma"></span>
+ <span class="inlinemediaobject"><img src="../../../../graphs/lgamma.png" align="middle"></span>
         </p>
 <a name="math_toolkit.toolkit.internals2.test_data.example_2__creating_test_data"></a><h6>
-<a name="id728176"></a>
+<a name="id801142"></a>
           <a href="test_data.html#math_toolkit.toolkit.internals2.test_data.example_2__creating_test_data">Example
           2: Creating Test Data</a>
         </h6>
@@ -375,7 +375,7 @@
           used by default as it's rather hard on the compiler when the table is large.
         </p>
 <a name="math_toolkit.toolkit.internals2.test_data.example_3__profiling_a_continued_fraction_for_convergence_and_accuracy"></a><h6>
-<a name="id730655"></a>
+<a name="id803630"></a>
           <a href="test_data.html#math_toolkit.toolkit.internals2.test_data.example_3__profiling_a_continued_fraction_for_convergence_and_accuracy">Example
           3: Profiling a Continued Fraction for Convergence and Accuracy</a>
         </h6>
@@ -481,7 +481,7 @@
           of a and z.
         </p>
 <a name="math_toolkit.toolkit.internals2.test_data.reference"></a><h5>
-<a name="id732900"></a>
+<a name="id805870"></a>
           <a href="test_data.html#math_toolkit.toolkit.internals2.test_data.reference">reference</a>
         </h5>
 <a name="test_data_reference"></a><p>
@@ -534,8 +534,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals_overview.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals_overview.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/toolkit/internals_overview.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -43,8 +43,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Use with User Defined Floating-Point Types</title>
+<title>Use with User-Defined Floating-Point Types</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Math Toolkit">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="math_toolkit.using_udt"></a><a href="using_udt.html" title="Use with User Defined Floating-Point Types"> Use with User Defined Floating-Point
+<a name="math_toolkit.using_udt"></a><a href="using_udt.html" title="Use with User-Defined Floating-Point Types"> Use with User-Defined Floating-Point
     Types</a>
 </h2></div></div></div>
 <div class="toc"><dl>
@@ -40,8 +40,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/archetypes.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/archetypes.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/archetypes.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Math Toolkit">
-<link rel="up" href="../using_udt.html" title="Use with User Defined Floating-Point Types">
+<link rel="up" href="../using_udt.html" title="Use with User-Defined Floating-Point Types">
 <link rel="prev" href="dist_concept.html" title="Conceptual Requirements for Distribution Types">
 <link rel="next" href="../policy.html" title="Policies">
 </head>
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -163,8 +163,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/concepts.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/concepts.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/concepts.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Math Toolkit">
-<link rel="up" href="../using_udt.html" title="Use with User Defined Floating-Point Types">
+<link rel="up" href="../using_udt.html" title="Use with User-Defined Floating-Point Types">
 <link rel="prev" href="use_ntl.html" title="Using With NTL - a High-Precision Floating-Point Library">
 <link rel="next" href="dist_concept.html" title="Conceptual Requirements for Distribution Types">
 </head>
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -42,7 +42,7 @@
         behaves just like a built in floating point type.
       </p>
 <a name="math_toolkit.using_udt.concepts.basic_arithmetic_requirements"></a><h5>
-<a name="id733903"></a>
+<a name="id806874"></a>
         <a href="concepts.html#math_toolkit.using_udt.concepts.basic_arithmetic_requirements">Basic
         Arithmetic Requirements</a>
       </h5>
@@ -1034,7 +1034,7 @@
 </td></tr>
 </table></div>
 <a name="math_toolkit.using_udt.concepts.standard_library_support_requirements"></a><h5>
-<a name="id736971"></a>
+<a name="id809942"></a>
         <a href="concepts.html#math_toolkit.using_udt.concepts.standard_library_support_requirements">Standard
         Library Support Requirements</a>
       </h5>
@@ -1253,6 +1253,66 @@
               </p>
               </td>
 </tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">fmod</span><span class="special">(</span><span class="identifier">cr1</span><span class="special">)</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ RealType
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">round</span><span class="special">(</span><span class="identifier">cr1</span><span class="special">)</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ RealType
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">iround</span><span class="special">(</span><span class="identifier">cr1</span><span class="special">)</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ int
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">trunc</span><span class="special">(</span><span class="identifier">cr1</span><span class="special">)</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ RealType
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">itrunc</span><span class="special">(</span><span class="identifier">cr1</span><span class="special">)</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ int
+ </p>
+ </td>
+</tr>
 </tbody>
 </table></div>
 <p>
@@ -1261,9 +1321,17 @@
         following functions: <code class="computeroutput"><span class="identifier">acos</span></code>,
         <code class="computeroutput"><span class="identifier">atan2</span></code>, <code class="computeroutput"><span class="identifier">fmod</span></code>,
         <code class="computeroutput"><span class="identifier">cosh</span></code>, <code class="computeroutput"><span class="identifier">sinh</span></code>,
- <code class="computeroutput"><span class="identifier">tanh</span></code>, <code class="computeroutput"><span class="identifier">modf</span></code>
- and <code class="computeroutput"><span class="identifier">log10</span></code> are not currently
- used, but may be if further special functions are added.
+ <code class="computeroutput"><span class="identifier">tanh</span></code>, <code class="computeroutput"><span class="identifier">log10</span></code>,
+ <code class="computeroutput"><span class="identifier">lround</span></code>, <code class="computeroutput"><span class="identifier">llround</span></code>,
+ ltrunc<code class="computeroutput"><span class="special">,</span> </code>lltrunc<code class="computeroutput"> <span class="keyword">and</span> </code>modf` are not currently used, but may
+ be if further special functions are added.
+ </p>
+<p>
+ Note that the <code class="computeroutput"><span class="identifier">round</span></code>, <code class="computeroutput"><span class="identifier">trunc</span></code> and <code class="computeroutput"><span class="identifier">modf</span></code>
+ functions are not part of the current C++ standard: they are part of the
+ additions added to C99 which will likely be in the next C++ standard. There
+ are Boost versions of these provided as a backup, and the functions are always
+ called unqualified so that argument-dependent-lookup can take place.
       </p>
 <p>
         In addition, for efficient and accurate results, a <a href="../backgrounders/lanczos.html" title="The Lanczos Approximation">Lanczos
@@ -1281,8 +1349,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/dist_concept.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/dist_concept.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/dist_concept.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,7 +5,7 @@
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Math Toolkit">
-<link rel="up" href="../using_udt.html" title="Use with User Defined Floating-Point Types">
+<link rel="up" href="../using_udt.html" title="Use with User-Defined Floating-Point Types">
 <link rel="prev" href="concepts.html" title="Conceptual Requirements for Real Number Types">
 <link rel="next" href="archetypes.html" title="Conceptual Archetypes and Testing">
 </head>
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -381,8 +381,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/use_ntl.html
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/use_ntl.html (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/html/math_toolkit/using_udt/use_ntl.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,8 +5,8 @@
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Math Toolkit">
-<link rel="up" href="../using_udt.html" title="Use with User Defined Floating-Point Types">
-<link rel="prev" href="../using_udt.html" title="Use with User Defined Floating-Point Types">
+<link rel="up" href="../using_udt.html" title="Use with User-Defined Floating-Point Types">
+<link rel="prev" href="../using_udt.html" title="Use with User-Defined Floating-Point Types">
 <link rel="next" href="concepts.html" title="Conceptual Requirements for Real Number Types">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -53,8 +53,8 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2006 -2007 John Maddock, Paul A. Bristow, Hubert Holin
- and Xiaogang Zhang<p>
+<td align="right"><div class="copyright-footer">Copyright © 2006 , 2007, 2008 John Maddock, Paul A. Bristow, Hubert
+ Holin, Xiaogang Zhang and Bruno Lalande<p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/ibeta.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/ibeta.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/ibeta.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -61,7 +61,7 @@
 
 [equation ibeta3]
 
-[$../graphs/ibeta.png]
+[graph ibeta]
 
    template <class T1, class T2, class T3>
    ``__sf_result`` ibetac(T1 a, T2 b, T3 x);

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/igamma.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/igamma.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/igamma.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -64,7 +64,7 @@
 
 This function changes rapidly from 0 to 1 around the point z == a:
 
-[$../graphs/gamma_p.png]
+[graph gamma_p]
 
    template <class T1, class T2>
    ``__sf_result`` gamma_q(T1 a, T2 z);
@@ -78,7 +78,7 @@
 
 This function changes rapidly from 1 to 0 around the point z == a:
 
-[$../graphs/gamma_q.png]
+[graph gamma_q]
 
    template <class T1, class T2>
    ``__sf_result`` tgamma_lower(T1 a, T2 z);

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/implementation.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/implementation.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/implementation.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -207,6 +207,11 @@
 we have permitted argument(s) to be infinity,
 provided infinity is implemented for the realType on that implementation.
 
+Users who require special handling of infinity (or other specific value) can,
+of course, always intercept this before calling a distribution or function
+and return their own choice of value, or other behavior.
+This will often be simpler than trying to handle the aftermath of the error policy.
+
 Overflow, underflow, denorm can be handled using __error_policy.
 
 We have also tried to catch boundary cases where the mathematical specification
@@ -445,6 +450,14 @@
 
 [pre java -jar 'C:\download\open\batik-1.7\batik-rasterizer.jar' -dpi 120 *.svg]
 
+Or using Inkscape and a command such as:
+
+[pre for file in *.svg; do
+ /cygdrive/c/progra~1/Inkscape/inkscape -d 120 -e $(cygpath -a -w $(basename $file .svg).png) $(cygpath -a -w $file);
+done]
+
+Currently Inkscape seems to generate the better looking png's.
+
 The PDF is generated into \pdf\math.pdf
 using a command from a shell or command window with current directory
 \math_toolkit\libs\math\doc\sf_and_dist, typically:

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/inv_hyper.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/inv_hyper.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/inv_hyper.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -96,6 +96,8 @@
 
 [optional_policy]
 
+[graph acosh]
+
 [endsect]
 
 [section:asinh asinh]
@@ -119,6 +121,8 @@
 The return type of this function is computed using the __arg_pomotion_rules:
 the return type is `double` when T is an integer type, and T otherwise.
 
+[graph asinh]
+
 [optional_policy]
 
 [endsect]
@@ -164,6 +168,8 @@
 The return type of this function is computed using the __arg_pomotion_rules:
 the return type is `double` when T is an integer type, and T otherwise.
 
+[graph atanh]
+
 [endsect]
 
 [endsect]

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/issues.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/issues.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/issues.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -80,6 +80,58 @@
 
 * Student's t Perhaps switch to normal distribution as a better approximation for very large degrees of freedom?
 
+[h4 Feature Requests]
+
+The following table lists distributions that are found in other packages
+but which are not yet present here, the more frequently the distribution
+is found, the higher the priority for implementing it:
+
+[table
+[[Distribution][R][Mathematica 6][NIST][Regress+][Matlab]]
+[/4 votes:]
+[[Logistic][X][X][-][X][X]]
+[[Hypergeometric][X][X][-][X][X]]
+
+[/3 votes:]
+[[Inverse Gausian / Inverse Normal][-][X][-][X][X]]
+[[Geometric][X][X][-][-][X]]
+
+[/2 votes:]
+[[Multinomial][X][-][-][-][X]]
+[[Tukey Lambda][X][-][X][-][-]]
+[[Half Normal / Folded Normal][-][X][-][X][-]]
+[[Chi][-][X][-][X][-]]
+[[Gumbel][-][X][-][X][-]]
+[[Discrete Uniform][-][X][-][-][X]]
+[[Log Series][-][X][-][X][-]]
+[[Nakagami (generalised Chi)][-][-][-][X][X]]
+
+[/1 vote:]
+[[Log Logistic][-][-][-][-][X]]
+[[Tukey (Studentized range)][X][-][-][-][-]]
+[[Wilcoxon rank sum][X][-][-][-][-]]
+[[Wincoxon signed rank][X][-][-][-][-]]
+[[Non-central Beta][X][-][-][-][-]]
+[[Laplace][-][X][-][-][-]]
+[[Maxwell][-][X][-][-][-]]
+[[Beta-Binomial][-][X][-][-][-]]
+[[Beta-negative Binomial][-][X][-][-][-]]
+[[Zipf][-][X][-][-][-]]
+[[Birnbaum-Saunders / Fatigue Life][-][-][X][-][-]]
+[[Double Exponential][-][-][X][-][-]]
+[[Power Normal][-][-][X][-][-]]
+[[Power Lognormal][-][-][X][-][-]]
+[[Cosine][-][-][-][X][-]]
+[[Double Gamma][-][-][-][X][-]]
+[[Double Weibul][-][-][-][X][-]]
+[[Hyperbolic Secant][-][-][-][X][-]]
+[[Laplace][-][-][-][X][-]]
+[[Semicircular][-][-][-][X][-]]
+[[Bradford][-][-][-][X][-]]
+[[Birr / Fisk][-][-][-][X][-]]
+[[Reciprocal][-][-][-][X][-]]
+]
+
 [endsect][/section:issues Known Issues, and Todo List]
 
 [/

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/laguerre.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/laguerre.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/laguerre.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -50,7 +50,7 @@
 The following graph illustrates the behaviour of the first few
 Laguerre Polynomials:
 
-[$../graphs/laguerre.png]
+[graph laguerre]
    
    template <class T>
    ``__sf_result`` laguerre(unsigned n, unsigned m, T x);

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/legendre.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/legendre.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/legendre.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -62,7 +62,7 @@
 The following graph illustrates the behaviour of the first few
 Legendre Polynomials:
 
-[$../graphs/legendre_p1.png]
+[graph legendre_p]
    
    template <class T>
    ``__sf_result`` legendre_p(int l, int m, T x);
@@ -119,7 +119,7 @@
 The following graph illustrates the first few Legendre functions of the
 second kind:
 
-[$../graphs/legendre_q.png]
+[graph legendre_q]
    
    template <class T1, class T2, class T3>
    ``__sf_result`` legendre_next(unsigned l, T1 x, T2 Pl, T3 Plm1);

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/lgamma.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/lgamma.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/lgamma.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -33,7 +33,7 @@
 
 [optional_policy]
 
-[$../graphs/lgamma.png]
+[graph lgamma]
 
 There are effectively two versions of this function internally: a fully
 generic version that is slow, but reasonably accurate, and a much more

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/math.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/math.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/math.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 [article Math Toolkit
     [quickbook 1.4]
- [copyright 2006-2007 John Maddock, Paul A. Bristow, Hubert Holin and Xiaogang Zhang]
+ [copyright 2006, 2007, 2008 John Maddock, Paul A. Bristow, Hubert Holin, Xiaogang Zhang and Bruno Lalande]
     [purpose ISBN 0-9504833-2-X 978-0-9504833-2-0, Classification 519.2-dc22]
     [license
         Distributed under the Boost Software License, Version 1.0.
         (See accompanying file LICENSE_1_0.txt or copy at
         [@http://www.boost.org/LICENSE_1_0.txt])
     ]
- [authors [Maddock, John], [Bristow, Paul A.], [Holin, Hubert], [Zhang, Xiaogang]]
+ [authors [Maddock, John], [Bristow, Paul A.], [Holin, Hubert], [Zhang, Xiaogang], [Lalande, Bruno]]
     [category math]
     [purpose mathematics]
     [/last-revision $Date$]
@@ -22,9 +22,19 @@
 </imageobject>
 </inlinemediaobject>''']
 
+[template graph[name] '''<inlinemediaobject>
+<imageobject role="html">
+<imagedata align="center" fileref="../graphs/'''[name]'''.png"></imagedata>
+</imageobject>
+<imageobject role="print">
+<imagedata align="center" fileref="../graphs/'''[name]'''.svg"></imagedata>
+</imageobject>
+</inlinemediaobject>''']
+
 [include html4_symbols.qbk] [/ just for testing]
 [/include latin1_symbols.qbk] [/ just for testing]
-[include common_overviews.qbk][/ overviews that appear in more than one place!]
+[include common_overviews.qbk] [/ overviews that appear in more than one place!]
+[include tr1.qbk] [/tr1 docs also appear in more than one place!]
 [include roadmap.qbk] [/ for history]
 
 [def __effects [*Effects: ]]
@@ -65,6 +75,8 @@
 [def __underflow_error [link underflow_error underflow_error]]
 [def __denorm_error [link denorm_error denorm_error]]
 [def __evaluation_error [link evaluation_error evaluation_error]]
+[def __rounding_error [link rounding_error rounding_error]]
+[def __indeterminate_result_error [link indeterminate_result_error indeterminate_result_error]]
 [def __checked_narrowing_cast [link checked_narrowing_cast checked_narrowing_cast]]
 
 [def __arg_pomotion_rules [link math_toolkit.main_overview.result_type ['result type calculation rules]]]
@@ -162,6 +174,32 @@
 [def __sqrt1pm1 [link math_toolkit.special.powers.sqrt1pm1 sqrt1pm1]]
 [def __powm1 [link math_toolkit.special.powers.powm1 powm1]]
 [def __hypot [link math_toolkit.special.powers.hypot hypot]]
+[def __pow [link math_toolkit.special.powers.ct_pow pow]]
+
+[/zeta]
+[def __zeta [link math_toolkit.special.zetas.zeta zeta]]
+
+[/expint]
+[def __expint_i [link math_toolkit.special.expint.expint_i zeta]]
+[def __expint_n [link math_toolkit.special.expint.expint_n zeta]]
+
+[/rounding]
+[def __round [link math_toolkit.special.rounding.round round]]
+[def __lround [link math_toolkit.special.rounding.round round]]
+[def __llround [link math_toolkit.special.rounding.round round]]
+[def __trunc [link math_toolkit.special.rounding.trunc trunc]]
+[def __modf [link math_toolkit.special.rounding.modf modf]]
+
+[/polynomials]
+[def __laguerre [link math_toolkit.special.sf_poly.laguerre laguerre]]
+[def __legendre [link math_toolkit.special.sf_poly.legendre legendre_p]]
+[def __hermite [link math_toolkit.special.sf_poly.hermite hermite]]
+
+[/Misc]
+[def __expint [link math_toolkit.special.expint.expint_i expint]]
+[def __spherical_harmonic [link math_toolkit.special.sf_poly.sph_harm spherical_harmonic]]
+
+
 
 [/ distribution non-members]
 [def __cdf [link math.dist.cdf Cumulative Distribution Function]]
@@ -187,11 +225,16 @@
 [def __binomial_distrib [link math_toolkit.dist.dist_ref.dists.binomial_dist Binomial Distribution]]
 [def __cauchy_distrib [link math_toolkit.dist.dist_ref.dists.cauchy_dist Cauchy Distribution]]
 [def __chi_squared_distrib [link math_toolkit.dist.dist_ref.dists.chi_squared_dist Chi Squared Distribution]]
+[def __extreme_distrib [link math_toolkit.dist.dist_ref.dists.extreme_dist Extreme Distributions]]
 [def __exp_distrib [link math_toolkit.dist.dist_ref.dists.exp_dist Exponential Distribution]]
 [def __F_distrib [link math_toolkit.dist.dist_ref.dists.f_dist Fisher F Distribution]]
 [def __gamma_distrib [link math_toolkit.dist.dist_ref.dists.gamma_dist Gamma Distribution]]
 [def __lognormal_distrib [link math_toolkit.dist.dist_ref.dists.lognormal_dist Log-normal Distribution]]
 [def __negative_binomial_distrib [link math_toolkit.dist.dist_ref.dists.negative_binomial_dist Negative Binomial Distribution]]
+[def __non_central_chi_squared_distrib [link math_toolkit.dist.dist_ref.dists.nc_chi_squared_dist Noncentral Chi Squared Distribution]]
+[def __non_central_beta_distrib [link math_toolkit.dist.dist_ref.dists.nc_beta_dist Noncentral Beta Distribution]]
+[def __non_central_F_distrib [link math_toolkit.dist.dist_ref.dists.nc_f_dist Noncentral F Distribution]]
+[def __non_central_T_distrib [link math_toolkit.dist.dist_ref.dists.nc_t_dist Noncentral T Distribution]]
 [def __normal_distrib [link math_toolkit.dist.dist_ref.dists.normal_dist Normal Distribution]]
 [def __poisson_distrib [link math_toolkit.dist.dist_ref.dists.poisson_dist Poisson Distribution]]
 [def __students_t_distrib [link math_toolkit.dist.dist_ref.dists.students_t_dist Students t Distribution]]
@@ -266,7 +309,7 @@
 ] [/ template discrete_quantile_warning]
 
 This manual is also available in
-[@http:svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf
+[@http://svn.boost.org/svn/boost/sandbox/pdf/math/release/math.pdf
 printer friendly PDF format].
 
 [section:main_overview Overview]
@@ -292,6 +335,9 @@
 [section:history1 History and What's New]
 [history]
 [endsect]
+[section:tr1 C99 and TR1 C Functions]
+[tr1_overview]
+[endsect]
 [include contact_info.qbk]
 
 [endsect] [/section:main_overview Overview]
@@ -347,10 +393,27 @@
 [include ellint_legendre.qbk]
 [endsect] [/section:ellint Elliptic Integrals]
 
+[section:zetas Zeta Functions]
+[include zeta.qbk]
+[endsect]
+
+[include expint.qbk]
+
 [include powers.qbk]
 [include sinc.qbk]
 [include inv_hyper.qbk]
+[include rounding_func.qbk]
 [include fpclassify.qbk]
+[include float_next.qbk]
+
+[section:extern_c TR1 and C99 external "C" Functions]
+[section:tr1 C99 and TR1 C Functions Overview]
+[tr1_overview]
+[endsect]
+[include c99_ref.qbk]
+[include tr1_ref.qbk]
+[endsect]
+
 [endsect] [/section:special Special Functions]
 
 [section:toolkit Internal Details and Tools (Experimental)]
@@ -375,7 +438,7 @@
 
 [endsect] [/section:toolkit Toolkit]
 
-[section:using_udt Use with User Defined Floating-Point Types]
+[section:using_udt Use with User-Defined Floating-Point Types]
 [include concepts.qbk]
 [endsect] [/section:using_udt Use with User Defined Floating-Point Types]
 
@@ -406,7 +469,7 @@
 [endsect] [/section:status Status and Roadmap]
 
 [/ math.qbk
- Copyright 2006 John Maddock and Paul A. Bristow.
+ Copyright 2008 John Maddock and Paul A. Bristow.
   Distributed under the Boost Software License, Version 1.0.
   (See accompanying file LICENSE_1_0.txt or copy at
   http://www.boost.org/LICENSE_1_0.txt).

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/minimax.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/minimax.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/minimax.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -94,12 +94,20 @@
             try a higher value if an approximation won't converge,
             or a lower value to get speedier convergence.]]
 [[x-offset val][Sets the x-offset to /val/: the approximation will
- be generated for `f(x + X) + Y` where /X/ is the x-offset
+ be generated for `f(S * (x + X)) + Y` where /X/ is the
+ x-offset, /S/ is the x-scale
             and /Y/ is the y-offset. Defaults to zero. To avoid
             rounding errors, take care to specify a value that can
             be exactly represented as a floating point number.]]
+[[x-scale val][Sets the x-scale to /val/: the approximation will
+ be generated for `f(S * (x + X)) + Y` where /S/ is the
+ x-scale, /X/ is the x-offset
+ and /Y/ is the y-offset. Defaults to one. To avoid
+ rounding errors, take care to specify a value that can
+ be exactly represented as a floating point number.]]
 [[y-offset val][Sets the y-offset to /val/: the approximation will
- be generated for `f(x + X) + Y` where /X/ is the x-offset
+ be generated for `f(S * (x + X)) + Y` where /X/
+ is the x-offset, /S/ is the x-scale
             and /Y/ is the y-offset. Defaults to zero. To avoid
             rounding errors, take care to specify a value that can
             be exactly represented as a floating point number.]]

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/policy.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/policy.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/policy.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -45,6 +45,7 @@
        [[Underflow Error][std::underflow_error]]
        [[Denorm Error][std::underflow_error]]
        [[Evaluation Error][boost::math::evaluation_error]]
+ [[Indeterminate Result Error][std::domain_error]]
     ]
 
 [h5 errno_on_error]
@@ -60,11 +61,12 @@
     [[Underflow Error][ERANGE]]
     [[Denorm Error][ERANGE]]
     [[Evaluation Error][EDOM]]
+ [[Indeterminate Result Error][EDOM]]
  ]
 
 [h5 ignore_error]
 
-Will return a one of the values below depending on the error type (`::errno` is NOT changed)::
+Will return one of the values below depending on the error type (`::errno` is NOT changed)::
  [table
     [[Error Type][Returned Value]]
     [[Domain Error][std::numeric_limits<T>::quiet_NaN()]]
@@ -74,6 +76,7 @@
     [[Denorm Error][The denormalised value.]]
     [[Evaluation Error][The best guess as to the result: which
           may be significantly in error.]]
+ [[Indeterminate Result Error][Depends on the function where the error occurred]]
  ]
 
 [h5 user_error]
@@ -83,25 +86,31 @@
 must be provided by the user:
 
    namespace boost{ namespace math{ namespace policies{
-
+
    template <class T>
    T user_domain_error(const char* function, const char* message, const T& val);
-
+
    template <class T>
    T user_pole_error(const char* function, const char* message, const T& val);
-
+
    template <class T>
    T user_overflow_error(const char* function, const char* message, const T& val);
-
+
    template <class T>
    T user_underflow_error(const char* function, const char* message, const T& val);
-
+
    template <class T>
    T user_denorm_error(const char* function, const char* message, const T& val);
-
+
+ template <class T>
+ T user_rounding_error(const char* function, const char* message, const T& val);
+
    template <class T>
    T user_evaluation_error(const char* function, const char* message, const T& val);
-
+
+ template <class T>
+ T user_indeterminate_result_error(const char* function, const char* message, const T& val);
+
    }}} // namespaces
 
 Note that the strings ['function] and ['message] may contain "%1%" format specifiers
@@ -118,7 +127,7 @@
 
 [h4 Kinds of Error Raised]
 
-There are five kinds of error reported by this library,
+There are six kinds of error reported by this library,
 which are summarised in the following table:
 
 [table
@@ -168,6 +177,15 @@
       Defaults to `boost::math::policies::denorm_error<ignore_error>`
 
       When the action is ['throw_on_error] then throws a `std::underflow_error`]]
+[[Rounding Error]
+ [boost::math::policies::rounding_error<['action]>]
+ [Raised When one of the rounding functions __round, __trunc or __modf is
+ called with an argument that has no integer representation, or
+ is too large to be represented in the result type
+
+ Defaults to `boost::math::policies::rounding_error<throw_on_error>`
+
+ When the action is ['throw_on_error] then throws `boost::math::rounding_error`]]
 [[Evaluation Error]
    [boost::math::policies::evaluation_error<['action]>]
       [Raised when the result of the function is well defined and
@@ -179,6 +197,14 @@
       Defaults to `boost::math::policies::evaluation_error<throw_on_error>`
 
       When the action is ['throw_on_error] then throws `boost::math::evaluation_error`]]
+[[Indeterminate Result Error]
+ [boost::math::policies::indeterminate_result_error<['action]>]
+ [Raised when the result of a function is not defined for the values that
+ were passed to it.
+
+ Defaults to `boost::math::policies::indeterminate_result_error<ignore_error>`
+
+ When the action is ['throw_on_error] then throws `std::domain_error`]]
 ]
 
 [h4 Examples]
@@ -497,6 +523,13 @@
 actions for error handing: `throw_on_error`, `errno_on_error`,
 `ignore_error` or `user_error`.
 
+[h5 BOOST_MATH_ROUNDING_ERROR_POLICY]
+
+Defines what happens when a rounding error occurs, if not defined then
+defaults to `throw_on_error`, but can be set to any of the enumerated
+actions for error handing: `throw_on_error`, `errno_on_error`,
+`ignore_error` or `user_error`.
+
 [h5 BOOST_MATH_EVALUATION_ERROR_POLICY]
 
 Defines what happens when an internal evaluation error occurs, if not defined then
@@ -518,6 +551,14 @@
 actions for error handing: `throw_on_error`, `errno_on_error`,
 `ignore_error` or `user_error`.
 
+[h5 BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY]
+
+Defines what happens when the result is indeterminate, but where there
+is none the less a convention for the result. If not defined then
+defaults to `ignore_error`, but can be set to any of the enumerated
+actions for error handing: `throw_on_error`, `errno_on_error`,
+`ignore_error` or `user_error`.
+
 [h5 BOOST_MATH_DIGITS10_POLICY]
 
 Defines how many decimal digits to use in internal computations:
@@ -665,7 +706,9 @@
              class A8 = default_policy,
              class A9 = default_policy,
              class A10 = default_policy,
- class A11 = default_policy>
+ class A11 = default_policy,
+ class A12 = default_policy,
+ class A13 = default_policy>
    struct policy
    {
    public:
@@ -674,7 +717,9 @@
       typedef ``['computed-from-template-arguments]`` overflow_error_type;
       typedef ``['computed-from-template-arguments]`` underflow_error_type;
       typedef ``['computed-from-template-arguments]`` denorm_error_type;
+ typedef ``['computed-from-template-arguments]`` rounding_error_type;
       typedef ``['computed-from-template-arguments]`` evaluation_error_type;
+ typedef ``['computed-from-template-arguments]`` indeterminate_result_error_type;
       typedef ``['computed-from-template-arguments]`` precision_type;
       typedef ``['computed-from-template-arguments]`` promote_float_type;
       typedef ``['computed-from-template-arguments]`` promote_double_type;
@@ -696,7 +741,9 @@
              class A8 = default_policy,
              class A9 = default_policy,
              class A10 = default_policy,
- class A11 = default_policy>
+ class A11 = default_policy,
+ class A12 = default_policy,
+ class A13 = default_policy>
    struct normalise
    {
       typedef ``computed-from-template-arguments`` type;
@@ -735,12 +782,25 @@
 `boost::math::policies::denorm_error<>` with the template argument to
 `denorm_error` one of the `error_policy_type` enumerated values.
 
+ policy<...>::rounding_error_type
+
+Specifies how rounding errors are handled, will be an instance of
+`boost::math::policies::rounding_error<>` with the template argument to
+`rounding_error` one of the `error_policy_type` enumerated values.
+
    policy<...>::evaluation_error_type
    
 Specifies how evaluation errors are handled, will be an instance of
 `boost::math::policies::evaluation_error<>` with the template argument to
 `evaluation_error` one of the `error_policy_type` enumerated values.
 
+ policy<...>::indeterminate_error_type
+
+Specifies how indeterminate result errors are handled, will be an instance of
+`boost::math::policies::indeterminate_result_error<>` with the template argument
+to `indeterminate_result_error` one of the `error_policy_type` enumerated
+values.
+
    policy<...>::precision_type
    
 Specifies the internal precision to use in binary digits (uses zero
@@ -791,7 +851,9 @@
              class A8 = default_policy,
              class A9 = default_policy,
              class A10 = default_policy,
- class A11 = default_policy>
+ class A11 = default_policy,
+ class A12 = default_policy,
+ class A13 = default_policy>
    struct normalise
    {
       typedef ``computed-from-template-arguments`` type;

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/policy_tutorial.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/policy_tutorial.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/policy_tutorial.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -44,7 +44,9 @@
 [[Overflow Error][Throws a `std::overflow_error` exception.]]
 [[Underflow][Ignores the underflow, and returns zero.]]
 [[Denormalised Result][Ignores the fact that the result is denormalised, and returns it.]]
+[[Rounding Error][Throws a `boost::math::rounding_error` exception.]]
 [[Internal Evaluation Error][Throws a `boost::math::evaluation_error` exception.]]
+[[Indeterminate Result Error][Returns a result that depends on the function where the error occurred.]]
 [[Promotion of float to double][Does occur by default - gives full float precision results.]]
 [[Promotion of double to long double][Does occur by default if long double offers
    more precision than double.]]

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/powers.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/powers.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/powers.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -44,6 +44,10 @@
 specializations of this template simply forward to the platform's
 native (POSIX) implementation of this function.
 
+The following graph illustrates the behaviour of log1p:
+
+[graph log1p]
+
 [h4 Accuracy]
 
 For built in floating point types `log1p`
@@ -87,6 +91,10 @@
 Finally when BOOST_HAS_EXPM1 is defined then the `float/double/long double`
 specializations of this template simply forward to the platform's
 native (POSIX) implementation of this function.
+
+The following graph illustrates the behaviour of expm1:
+
+[graph expm1]
    
 [h4 Accuracy]
 
@@ -124,6 +132,10 @@
 [optional_policy]
 
 Implemented using Halley iteration.
+
+The following graph illustrates the behaviour of cbrt:
+
+[graph cbrt]
    
 [h4 Accuracy]
 
@@ -165,6 +177,10 @@
 
 Implemented in terms of `log1p` and `expm1`.
 
+The following graph illustrates the behaviour of sqrt1pm1:
+
+[graph sqrt1pm1]
+
 [h4 Accuracy]
 
 For built in floating-point types `sqrt1pm1`
@@ -205,6 +221,10 @@
 
 Implemented in terms of `expm1`.
 
+The following graph illustrates the behaviour of powm1:
+
+[graph powm1]
+
 [h4 Accuracy]
 
 Should have approximately 2-3 epsilon accuracy.
@@ -248,6 +268,8 @@
 
 [endsect]
 
+[include pow.qbk]
+
 
 [endsect][/section:powers Logs, Powers, Roots and Exponentials]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/references.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/references.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/references.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -31,8 +31,12 @@
 Statistical Distributions (Wiley Series in Probability & Statistics) (Paperback)
 by N.A.J. Hastings, Brian Peacock, Merran Evans, ISBN: 0471371246, Wiley 2000.
 
+[@http://www.worldscibooks.com/mathematics/p191.html EXTREME VALUE DISTRIBUTIONS, Theory and Applications]
+Samuel Kotz & Saralees Nadarajah, ISBN 978-1-86094-224-2 & 1-86094-224-5 Oct 2000,
+Chapter 1.2 discusses the various extreme value distributions.
+
 [@http://bh0.physics.ubc.ca/People/matt/Doc/ThesesOthers/Phd/pugh.pdf pugh.pdf (application/pdf Object)]
-Pugh Msc Thesis on the Lanczzos approximation to the gamma function.
+Pugh Msc Thesis on the Lanczos approximation to the gamma function.
 
 [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2003 N1514, 03-0097, A Proposal to Add Mathematical Special Functions to the C++ Standard Library (version 2), Walter E. Brown]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/roadmap.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/roadmap.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/roadmap.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,18 @@
 [template history[]
-[h4 Milestone 5: Post Review First Official Release]
+
+[h4 Boost-1.36.0]
+
+* Added Noncentral Chi Squared Distribution.
+* Added Noncentral Beta Distribution.
+* Added Noncentral F Distribution.
+* Added Noncentral T Distribution.
+* Added Exponential Integral Functions.
+* Added Zeta Function.
+* Added Rounding and Truncation functions.
+* Added Compile time powers of runtime bases.
+* Added SSE2 optimizations for Lanczos evaluation.
+
+[h4 Boost-1.35.0: Post Review First Official Release]
 
 * Added Policy based framework that allows fine grained control
 over function behaviour.
@@ -59,7 +72,7 @@
 
 SVN Revisions:
 
-Sandbox and trunk last synchonised at revision: 41065.
+Sandbox and trunk last synchonised at revision: 47084.
 
 ]
 [/
@@ -69,3 +82,4 @@
   http://www.boost.org/LICENSE_1_0.txt).
 ]
 
+

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/sinc.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/sinc.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/sinc.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,14 +12,17 @@
 The [@http://mathworld.wolfram.com/SincFunction.html Sinus Cardinal family of functions]
 (indexed by the family of indices [^a > 0])
 is defined by
-[equation special_functions_blurb20];
+
+[equation special_functions_blurb20]
+
 it sees heavy use in signal processing tasks.
 
 By analogy, the
 [@http://mathworld.wolfram.com/SinhcFunction.htm Hyperbolic Sinus Cardinal]
 family of functions
 (also indexed by the family of indices [^a > 0]) is defined by
-[equation special_functions_blurb22].
+
+[equation special_functions_blurb22]
 
 These two families of functions are composed of entire functions.
 
@@ -61,6 +64,8 @@
 quaternions, octonions etc. Taylor series are used at the origin
 to ensure accuracy.
 
+[graph sinc_pi]
+
 [optional_policy]
 
 [endsect]
@@ -98,6 +103,8 @@
 
 [optional_policy]
 
+[graph sinhc_pi]
+
 [endsect]
 
 [endsect]

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/test_data.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/test_data.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/test_data.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -149,7 +149,7 @@
    
 Which, when plotted, results in:
 
-[$../graphs/lgamma.png]
+[graph lgamma]
 
 [h5 Example 2: Creating Test Data]
 

Modified: branches/CMake/release/libs/math/doc/sf_and_dist/tgamma.qbk
==============================================================================
--- branches/CMake/release/libs/math/doc/sf_and_dist/tgamma.qbk (original)
+++ branches/CMake/release/libs/math/doc/sf_and_dist/tgamma.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -34,7 +34,7 @@
 
 [equation gamm1]
 
-[$../graphs/gamma.png]
+[graph tgamma]
 
 [optional_policy]
 

Modified: branches/CMake/release/libs/math/example/policy_eg_8.cpp
==============================================================================
--- branches/CMake/release/libs/math/example/policy_eg_8.cpp (original)
+++ branches/CMake/release/libs/math/example/policy_eg_8.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -39,6 +39,8 @@
    T user_denorm_error(const char* function, const char* message, const T& val);
    template <class T>
    T user_evaluation_error(const char* function, const char* message, const T& val);
+ template <class T>
+ T user_indeterminate_result_error(const char* function, const char* message, const T& val);
 
    }}} // namespaces
 

Modified: branches/CMake/release/libs/math/minimax/f.cpp
==============================================================================
--- branches/CMake/release/libs/math/minimax/f.cpp (original)
+++ branches/CMake/release/libs/math/minimax/f.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,6 +9,8 @@
 #include <boost/math/bindings/rr.hpp>
 #include <boost/math/tools/polynomial.hpp>
 #include <boost/math/special_functions.hpp>
+#include <boost/math/special_functions/zeta.hpp>
+#include <boost/math/special_functions/expint.hpp>
 
 #include <cmath>
 
@@ -19,13 +21,18 @@
    switch(variant)
    {
    case 0:
- return boost::math::erfc(x) * x / exp(-x * x);
+ {
+ boost::math::ntl::RR x_ = sqrt(x == 0 ? 1e-80 : x);
+ return boost::math::erf(x_) / x_;
+ }
    case 1:
- return boost::math::erf(x);
+ {
+ boost::math::ntl::RR x_ = 1 / x;
+ return boost::math::erfc(x_) * x_ / exp(-x_ * x_);
+ }
    case 2:
       {
- boost::math::ntl::RR x_ = x == 0 ? 1e-80 : x;
- return boost::math::erf(x_) / x_;
+ return boost::math::erfc(x) * x / exp(-x * x);
       }
    case 3:
       {
@@ -145,7 +152,8 @@
          //
          static boost::math::tools::eps_tolerance<boost::math::ntl::RR> tol(1000);
          static boost::uintmax_t max_iter = 1000;
- static const boost::math::ntl::RR root = boost::math::tools::bracket_and_solve_root(&boost::math::digamma, boost::math::ntl::RR(1.4), boost::math::ntl::RR(1.5), true, tol, max_iter).first;
+ boost::math::ntl::RR (*pdg)(boost::math::ntl::RR) = &boost::math::digamma;
+ static const boost::math::ntl::RR root = boost::math::tools::bracket_and_solve_root(pdg, boost::math::ntl::RR(1.4), boost::math::ntl::RR(1.5), true, tol, max_iter).first;
 
          boost::math::ntl::RR x2 = x;
          double lim = 1e-65;
@@ -198,14 +206,29 @@
    case 14:
       // K(k)
       {
+ static double P[] =
+ {
+ 1.38629436111989062502E0,
+ 9.65735902811690126535E-2,
+ 3.08851465246711995998E-2,
+ 1.49380448916805252718E-2,
+ 8.79078273952743772254E-3,
+ 6.18901033637687613229E-3,
+ 6.87489687449949877925E-3,
+ 9.85821379021226008714E-3,
+ 7.97404013220415179367E-3,
+ 2.28025724005875567385E-3,
+ 1.37982864606273237150E-4
+ };
+
          // x = 1 - k^2
          boost::math::ntl::RR mp = x;
          if(mp < 1e-20)
             mp = 1e-20;
+ if(mp == 1)
+ mp -= 1e-20;
          boost::math::ntl::RR k = sqrt(1 - mp);
- static const boost::math::ntl::RR l4 = log(boost::math::ntl::RR(4));
- boost::math::ntl::RR p2 = boost::math::constants::pi<boost::math::ntl::RR>() / 2;
- return (boost::math::ellint_1(k) + 1) / (1 + l4 - log(mp));
+ return (boost::math::ellint_1(k) - mp/*boost::math::tools::evaluate_polynomial(P, mp)*/) / -log(mp);
       }
    case 15:
       // E(k)
@@ -225,6 +248,76 @@
          boost::math::ntl::RR z = 1 / (boost::math::ntl::RR(1)/16 - x);
          return boost::math::cyl_bessel_i(0, z) * sqrt(z) / exp(z);
       }
+ case 18:
+ // Zeta over [0, 1]
+ {
+ return boost::math::zeta(1 - x) * x - x;
+ }
+ case 19:
+ // Zeta over [1, n]
+ {
+ return boost::math::zeta(x) - 1 / (x - 1);
+ }
+ case 20:
+ // Zeta over [a, b] : a >> 1
+ {
+ return log(boost::math::zeta(x) - 1);
+ }
+ case 21:
+ // expint[1] over [0,1]:
+ {
+ boost::math::ntl::RR tiny = boost::lexical_cast<boost::math::ntl::RR>("1e-5000");
+ boost::math::ntl::RR z = (x <= tiny) ? tiny : x;
+ return boost::math::expint(1, z) - z + log(z);
+ }
+ case 22:
+ // expint[1] over [1,N],
+ // Note that x varies from [0,1]:
+ {
+ boost::math::ntl::RR z = 1 / x;
+ return boost::math::expint(1, z) * exp(z) * z;
+ }
+ case 23:
+ // expin Ei over [0,R]
+ {
+ static const boost::math::ntl::RR root =
+ boost::lexical_cast<boost::math::ntl::RR>("0.372507410781366634461991866580119133535689497771654051555657435242200120636201854384926049951548942392");
+ boost::math::ntl::RR z = x < (std::numeric_limits<long double>::min)() ? (std::numeric_limits<long double>::min)() : x;
+ return (boost::math::expint(z) - log(z / root)) / (z - root);
+ }
+ case 24:
+ // Expint Ei for large x:
+ {
+ static const boost::math::ntl::RR root =
+ boost::lexical_cast<boost::math::ntl::RR>("0.372507410781366634461991866580119133535689497771654051555657435242200120636201854384926049951548942392");
+ boost::math::ntl::RR z = x < (std::numeric_limits<long double>::min)() ? (std::numeric_limits<long double>::max)() : 1 / x;
+ return (boost::math::expint(z) - z) * z * exp(-z);
+ //return (boost::math::expint(z) - log(z)) * z * exp(-z);
+ }
+ case 25:
+ // Expint Ei for large x:
+ {
+ return (boost::math::expint(x) - x) * x * exp(-x);
+ }
+ case 26:
+ {
+ //
+ // erf_inv in range [0, 0.5]
+ //
+ boost::math::ntl::RR y = x;
+ if(y == 0)
+ y = boost::math::tools::epsilon<boost::math::ntl::RR>() / 64;
+ y = sqrt(y);
+ return boost::math::erf_inv(y) / (y);
+ }
+ case 28:
+ {
+ // log1p over [-0.5,0.5]
+ boost::math::ntl::RR y = x;
+ if(fabs(y) < 1e-100)
+ y = (y == 0) ? 1e-100 : boost::math::sign(y) * 1e-100;
+ return (boost::math::log1p(y) - y + y * y / 2) / (y);
+ }
    }
    return 0;
 }

Modified: branches/CMake/release/libs/math/minimax/main.cpp
==============================================================================
--- branches/CMake/release/libs/math/minimax/main.cpp (original)
+++ branches/CMake/release/libs/math/minimax/main.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,10 +5,15 @@
 
 #define BOOST_UBLAS_TYPE_CHECK_EPSILON (type_traits<real_type>::type_sqrt (boost::math::tools::epsilon <real_type>()))
 #define BOOST_UBLAS_TYPE_CHECK_MIN (type_traits<real_type>::type_sqrt ( boost::math::tools::min_value<real_type>()))
+#define BOOST_UBLAS_NDEBUG
 
 #include <boost/math/bindings/rr.hpp>
+namespace std{
+using boost::math::ntl::pow;
+} // workaround for spirit parser.
 #include <boost/math/tools/remez.hpp>
 #include <boost/math/tools/test.hpp>
+#include <boost/math/special_functions/binomial.hpp>
 #include <boost/spirit/core.hpp>
 #include <boost/spirit/actor.hpp>
 #include <boost/lexical_cast.hpp>
@@ -32,20 +37,20 @@
 bool pin(false);
 int orderN(3);
 int orderD(1);
-int target_precision(53);
-int working_precision(250);
+int target_precision = boost::math::tools::digits<long double>();
+int working_precision = target_precision * 2;
 bool started(false);
 int variant(0);
 int skew(0);
 int brake(50);
-boost::math::ntl::RR x_offset(0), y_offset(0);
+boost::math::ntl::RR x_offset(0), y_offset(0), x_scale(1);
 bool auto_offset_y;
 
 boost::shared_ptr<boost::math::tools::remez_minimax<boost::math::ntl::RR> > p_remez;
 
 boost::math::ntl::RR the_function(const boost::math::ntl::RR& val)
 {
- return f(val + x_offset, variant) + y_offset;
+ return f(x_scale * (val + x_offset), variant) + y_offset;
 }
 
 void step_some(unsigned count)
@@ -60,9 +65,9 @@
          if(auto_offset_y)
          {
             boost::math::ntl::RR fa, fb, fm;
- fa = f(a + x_offset, variant);
- fb = f(b + x_offset, variant);
- fm = f((a+b)/2 + x_offset, variant);
+ fa = f(x_scale * (a + x_offset), variant);
+ fb = f(x_scale * (b + x_offset), variant);
+ fm = f(x_scale * ((a+b)/2 + x_offset), variant);
             y_offset = -(fa + fb + fm) / 3;
             NTL::RR::SetOutputPrecision(5);
             std::cout << "Setting auto-y-offset to " << y_offset << std::endl;
@@ -120,6 +125,8 @@
    {
       boost::math::tools::polynomial<boost::math::ntl::RR> n = p_remez->numerator();
       boost::math::tools::polynomial<boost::math::ntl::RR> d = p_remez->denominator();
+ std::vector<boost::math::ntl::RR> cn = n.chebyshev();
+ std::vector<boost::math::ntl::RR> cd = d.chebyshev();
       int prec = 2 + (target_precision * 3010LL)/10000;
       std::cout << std::scientific << std::setprecision(prec);
       NTL::RR::SetOutputPrecision(prec);
@@ -142,19 +149,34 @@
       std::cout << " }\n";
 
       std::cout << "X offset: " << x_offset << std::endl;
+ std::cout << "X scale: " << x_scale << std::endl;
       std::cout << "Y offset: " << y_offset << std::endl;
 
       std::cout << "P = {";
       for(i = 0; i < n.size(); ++i)
       {
- std::cout << " " << n[i] << std::endl;
+ std::cout << " " << n[i] << "L," << std::endl;
       }
       std::cout << " }\n";
 
       std::cout << "Q = {";
       for(i = 0; i < d.size(); ++i)
       {
- std::cout << " " << d[i] << std::endl;
+ std::cout << " " << d[i] << "L," << std::endl;
+ }
+ std::cout << " }\n";
+
+ std::cout << "CP = {";
+ for(i = 0; i < cn.size(); ++i)
+ {
+ std::cout << " " << cn[i] << "L," << std::endl;
+ }
+ std::cout << " }\n";
+
+ std::cout << "CQ = {";
+ for(i = 0; i < cd.size(); ++i)
+ {
+ std::cout << " " << cd[i] << "L," << std::endl;
       }
       std::cout << " }\n";
 
@@ -200,8 +222,24 @@
       // polynomials:
       //
       boost::math::tools::polynomial<T> n, d;
- n = p_remez->numerator();
- d = p_remez->denominator();
+ boost::math::tools::polynomial<boost::math::ntl::RR> nr, dr;
+ nr = p_remez->numerator();
+ dr = p_remez->denominator();
+ n = nr;
+ d = dr;
+
+ std::vector<boost::math::ntl::RR> cn1, cd1;
+ cn1 = nr.chebyshev();
+ cd1 = dr.chebyshev();
+ std::vector<T> cn, cd;
+ for(unsigned i = 0; i < cn1.size(); ++i)
+ {
+ cn.push_back(boost::math::tools::real_cast<T>(cn1[i]));
+ }
+ for(unsigned i = 0; i < cd1.size(); ++i)
+ {
+ cd.push_back(boost::math::tools::real_cast<T>(cd1[i]));
+ }
       //
       // We'll test at the Chebeshev control points which is where
       // (in theory) the largest deviation should occur. For good
@@ -211,56 +249,69 @@
          zeros(p_remez->zero_points()),
          cheb(p_remez->chebyshev_points());
 
- boost::math::ntl::RR max_error(0);
+ boost::math::ntl::RR max_error(0), cheb_max_error(0);
 
       //
       // Do the tests at the zeros:
       //
       std::cout << "Starting tests at " << name << " precision...\n";
- std::cout << "Absissa Error\n";
- unsigned i;
- for(i = 0; i < zeros.size(); ++i)
+ std::cout << "Absissa Error (Poly) Error (Cheb)\n";
+ for(unsigned i = 0; i < zeros.size(); ++i)
       {
          boost::math::ntl::RR true_result = the_function(zeros[i]);
          T absissa = boost::math::tools::real_cast<T>(zeros[i]);
          boost::math::ntl::RR test_result = n.evaluate(absissa) / d.evaluate(absissa);
- boost::math::ntl::RR err;
+ boost::math::ntl::RR cheb_result = boost::math::tools::evaluate_chebyshev(cn, absissa) / boost::math::tools::evaluate_chebyshev(cd, absissa);
+ boost::math::ntl::RR err, cheb_err;
          if(rel_error)
          {
             err = boost::math::tools::relative_error(test_result, true_result);
+ cheb_err = boost::math::tools::relative_error(cheb_result, true_result);
          }
          else
          {
             err = fabs(test_result - true_result);
+ cheb_err = fabs(cheb_result - true_result);
          }
          if(err > max_error)
             max_error = err;
+ if(cheb_err > cheb_max_error)
+ cheb_max_error = cheb_err;
          std::cout << std::setprecision(6) << std::setw(15) << std::left << absissa
- << boost::math::tools::real_cast<T>(err) << std::endl;
+ << std::setw(15) << std::left << boost::math::tools::real_cast<T>(err) << boost::math::tools::real_cast<T>(cheb_err) << std::endl;
       }
       //
       // Do the tests at the Chebeshev control points:
       //
- for(i = 0; i < cheb.size(); ++i)
+ for(unsigned i = 0; i < cheb.size(); ++i)
       {
          boost::math::ntl::RR true_result = the_function(cheb[i]);
          T absissa = boost::math::tools::real_cast<T>(cheb[i]);
          boost::math::ntl::RR test_result = n.evaluate(absissa) / d.evaluate(absissa);
- boost::math::ntl::RR err;
+ boost::math::ntl::RR cheb_result = boost::math::tools::evaluate_chebyshev(cn, absissa) / boost::math::tools::evaluate_chebyshev(cd, absissa);
+ boost::math::ntl::RR err, cheb_err;
          if(rel_error)
          {
             err = boost::math::tools::relative_error(test_result, true_result);
+ cheb_err = boost::math::tools::relative_error(cheb_result, true_result);
          }
          else
          {
             err = fabs(test_result - true_result);
+ cheb_err = fabs(cheb_result - true_result);
          }
          if(err > max_error)
             max_error = err;
          std::cout << std::setprecision(6) << std::setw(15) << std::left << absissa
- << boost::math::tools::real_cast<T>(err) << std::endl;
+ << std::setw(15) << std::left << boost::math::tools::real_cast<T>(err) <<
+ boost::math::tools::real_cast<T>(cheb_err) << std::endl;
       }
- std::cout << "Max error found: " << std::setprecision(6) << boost::math::tools::real_cast<T>(max_error) << std::endl;
+ std::string msg = "Max Error found at ";
+ msg += name;
+ msg += " precision = ";
+ msg.append(62 - 17 - msg.size(), ' ');
+ std::cout << msg << std::setprecision(6) << "Poly: " << std::setw(20) << std::left
+ << boost::math::tools::real_cast<T>(max_error) << "Cheb: " << boost::math::tools::real_cast<T>(cheb_max_error) << std::endl;
    }
    else
    {
@@ -302,37 +353,67 @@
       // polynomials:
       //
       boost::math::tools::polynomial<T> n, d;
- n = p_remez->numerator();
- d = p_remez->denominator();
+ boost::math::tools::polynomial<boost::math::ntl::RR> nr, dr;
+ nr = p_remez->numerator();
+ dr = p_remez->denominator();
+ n = nr;
+ d = dr;
+
+ std::vector<boost::math::ntl::RR> cn1, cd1;
+ cn1 = nr.chebyshev();
+ cd1 = dr.chebyshev();
+ std::vector<T> cn, cd;
+ for(unsigned i = 0; i < cn1.size(); ++i)
+ {
+ cn.push_back(boost::math::tools::real_cast<T>(cn1[i]));
+ }
+ for(unsigned i = 0; i < cd1.size(); ++i)
+ {
+ cd.push_back(boost::math::tools::real_cast<T>(cd1[i]));
+ }
 
- boost::math::ntl::RR max_error(0);
+ boost::math::ntl::RR max_error(0), max_cheb_error(0);
       boost::math::ntl::RR step = (b - a) / count;
 
       //
       // Do the tests at the zeros:
       //
       std::cout << "Starting tests at " << name << " precision...\n";
- std::cout << "Absissa Error\n";
+ std::cout << "Absissa Error (poly) Error (Cheb)\n";
       for(boost::math::ntl::RR x = a; x <= b; x += step)
       {
          boost::math::ntl::RR true_result = the_function(x);
          T absissa = boost::math::tools::real_cast<T>(x);
          boost::math::ntl::RR test_result = n.evaluate(absissa) / d.evaluate(absissa);
- boost::math::ntl::RR err;
+ boost::math::ntl::RR cheb_result = boost::math::tools::evaluate_chebyshev(cn, absissa) / boost::math::tools::evaluate_chebyshev(cd, absissa);
+ boost::math::ntl::RR err, cheb_err;
          if(rel_error)
          {
             err = boost::math::tools::relative_error(test_result, true_result);
+ cheb_err = boost::math::tools::relative_error(cheb_result, true_result);
          }
          else
          {
             err = fabs(test_result - true_result);
+ cheb_err = fabs(cheb_result - true_result);
          }
          if(err > max_error)
             max_error = err;
+ if(cheb_err > max_cheb_error)
+ max_cheb_error = cheb_err;
          std::cout << std::setprecision(6) << std::setw(15) << std::left << boost::math::tools::real_cast<double>(absissa)
- << (test_result < true_result ? "-" : "") << boost::math::tools::real_cast<double>(err) << std::endl;
+ << (test_result < true_result ? "-" : "") << std::setw(20) << std::left
+ << boost::math::tools::real_cast<double>(err)
+ << boost::math::tools::real_cast<double>(cheb_err) << std::endl;
       }
- std::cout << "Max error found: " << std::setprecision(6) << boost::math::tools::real_cast<T>(max_error) << std::endl;
+ std::string msg = "Max Error found at ";
+ msg += name;
+ msg += " precision = ";
+ msg.append(62 - 17 - msg.size(), ' ');
+ std::cout << msg << "Poly: " << std::setprecision(6)
+ << std::setw(15) << std::left
+ << boost::math::tools::real_cast<T>(max_error)
+ << "Cheb: " << boost::math::tools::real_cast<T>(max_cheb_error) << std::endl;
    }
    else
    {
@@ -419,6 +500,7 @@
 int test_main(int, char* [])
 {
    std::string line;
+ real_parser<long double/*boost::math::ntl::RR*/ > const rr_p;
    while(std::getline(std::cin, line))
    {
       if(parse(line.c_str(), str_p("quit"), space_p).full)
@@ -470,6 +552,8 @@
       ||
             str_p("x-offset") && real_p[assign_a(x_offset)]
       ||
+ str_p("x-scale") && real_p[assign_a(x_scale)]
+ ||
             str_p("y-offset") && str_p("auto")[assign_a(auto_offset_y, true)]
       ||
             str_p("y-offset") && real_p[assign_a(y_offset)][assign_a(auto_offset_y, false)]
@@ -500,20 +584,24 @@
       }
       else
       {
- std::cout << "a = " << a << std::endl;
- std::cout << "b = " << b << std::endl;
+ std::cout << "Variant = " << variant << std::endl;
+ std::cout << "range = [" << a << "," << b << "]" << std::endl;
          std::cout << "Relative Error = " << rel_error << std::endl;
          std::cout << "Pin to Origin = " << pin << std::endl;
- std::cout << "Order (Numerator) = " << orderN << std::endl;
- std::cout << "Order (Denominator) = " << orderD << std::endl;
+ std::cout << "Order (Num/Denom) = " << orderN << "/" << orderD << std::endl;
          std::cout << "Target Precision = " << target_precision << std::endl;
          std::cout << "Working Precision = " << working_precision << std::endl;
- std::cout << "Variant = " << variant << std::endl;
          std::cout << "Skew = " << skew << std::endl;
          std::cout << "Brake = " << brake << std::endl;
          std::cout << "X Offset = " << x_offset << std::endl;
- std::cout << "Y Offset = " << y_offset << std::endl;
- std::cout << "Automatic Y Offset = " << auto_offset_y << std::endl;
+ std::cout << "X scale = " << x_scale << std::endl;
+ std::cout << "Y Offset = ";
+ if(auto_offset_y)
+ std::cout << "Auto (";
+ std::cout << y_offset;
+ if(auto_offset_y)
+ std::cout << ")";
+ std::cout << std::endl;
      }
    }
    return 0;

Modified: branches/CMake/release/libs/math/performance/distributions.cpp
==============================================================================
--- branches/CMake/release/libs/math/performance/distributions.cpp (original)
+++ branches/CMake/release/libs/math/performance/distributions.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,19 +7,7 @@
 
 #include "performance_measure.hpp"
 
-#include <boost/math/distributions/beta.hpp>
-#include <boost/math/distributions/binomial.hpp>
-#include <boost/math/distributions/cauchy.hpp>
-#include <boost/math/distributions/chi_squared.hpp>
-#include <boost/math/distributions/exponential.hpp>
-#include <boost/math/distributions/fisher_f.hpp>
-#include <boost/math/distributions/gamma.hpp>
-#include <boost/math/distributions/lognormal.hpp>
-#include <boost/math/distributions/negative_binomial.hpp>
-#include <boost/math/distributions/normal.hpp>
-#include <boost/math/distributions/poisson.hpp>
-#include <boost/math/distributions/students_t.hpp>
-#include <boost/math/distributions/weibull.hpp>
+#include <boost/math/distributions.hpp>
 
 double probabilities[] = {
    1e-5,
@@ -57,6 +45,20 @@
    100000
 };
 
+int small_int_values[] = {
+ 1,
+ 2,
+ 3,
+ 5,
+ 10,
+ 15,
+ 20,
+ 30,
+ 50,
+ 100,
+ 150
+};
+
 double real_values[] = {
    1e-5,
    1e-4,
@@ -70,6 +72,83 @@
    100000
 };
 
+#define BOOST_MATH_DISTRIBUTION3_TEST(name, param1_table, param2_table, param3_table, random_variable_table, probability_table) \
+ BOOST_MATH_PERFORMANCE_TEST(BOOST_JOIN(dist, name), "dist-" BOOST_STRINGIZE(name) "-cdf")\
+ {\
+ double result = 0;\
+ unsigned a_size = sizeof(param1_table)/sizeof(param1_table[0]);\
+ unsigned b_size = sizeof(param2_table)/sizeof(param2_table[0]);\
+ unsigned c_size = sizeof(param3_table)/sizeof(param3_table[0]);\
+ unsigned d_size = sizeof(random_variable_table)/sizeof(random_variable_table[0]);\
+ \
+ for(unsigned i = 0; i < a_size; ++i)\
+ {\
+ for(unsigned j = 0; j < b_size; ++j)\
+ {\
+ for(unsigned k = 0; k < c_size; ++k)\
+ {\
+ for(unsigned l = 0; l < d_size; ++l)\
+ {\
+ result += cdf(boost::math:: BOOST_JOIN(name, _distribution) <>(param1_table[i], param2_table[j], param3_table[k]), random_variable_table[l]);\
+ }\
+ }\
+ }\
+ }\
+ \
+ consume_result(result);\
+ set_call_count(a_size * b_size * c_size * d_size);\
+ }\
+ BOOST_MATH_PERFORMANCE_TEST(BOOST_JOIN(dist_pdf_, name), "dist-" BOOST_STRINGIZE(name) "-pdf")\
+ {\
+ double result = 0;\
+ unsigned a_size = sizeof(param1_table)/sizeof(param1_table[0]);\
+ unsigned b_size = sizeof(param2_table)/sizeof(param2_table[0]);\
+ unsigned c_size = sizeof(param3_table)/sizeof(param3_table[0]);\
+ unsigned d_size = sizeof(random_variable_table)/sizeof(random_variable_table[0]);\
+ \
+ for(unsigned i = 0; i < a_size; ++i)\
+ {\
+ for(unsigned j = 0; j < b_size; ++j)\
+ {\
+ for(unsigned k = 0; k < c_size; ++k)\
+ {\
+ for(unsigned l = 0; l < d_size; ++l)\
+ {\
+ result += pdf(boost::math:: BOOST_JOIN(name, _distribution) <>(param1_table[i], param2_table[j], param3_table[k]), random_variable_table[l]);\
+ }\
+ }\
+ }\
+ }\
+ \
+ consume_result(result);\
+ set_call_count(a_size * b_size * c_size * d_size);\
+ }\
+ BOOST_MATH_PERFORMANCE_TEST(BOOST_JOIN(dist_quant, name), "dist-" BOOST_STRINGIZE(name) "-quantile")\
+ {\
+ double result = 0;\
+ unsigned a_size = sizeof(param1_table)/sizeof(param1_table[0]);\
+ unsigned b_size = sizeof(param2_table)/sizeof(param2_table[0]);\
+ unsigned c_size = sizeof(param3_table)/sizeof(param3_table[0]);\
+ unsigned d_size = sizeof(probability_table)/sizeof(probability_table[0]);\
+ \
+ for(unsigned i = 0; i < a_size; ++i)\
+ {\
+ for(unsigned j = 0; j < b_size; ++j)\
+ {\
+ for(unsigned k = 0; k < c_size; ++k)\
+ {\
+ for(unsigned l = 0; l < d_size; ++l)\
+ {\
+ result += quantile(boost::math:: BOOST_JOIN(name, _distribution) <>(param1_table[i], param2_table[j], param3_table[k]), probability_table[l]);\
+ }\
+ }\
+ }\
+ }\
+ \
+ consume_result(result);\
+ set_call_count(a_size * b_size * c_size * d_size);\
+ }
+
 #define BOOST_MATH_DISTRIBUTION2_TEST(name, param1_table, param2_table, random_variable_table, probability_table) \
    BOOST_MATH_PERFORMANCE_TEST(BOOST_JOIN(dist, name), "dist-" BOOST_STRINGIZE(name) "-cdf")\
    {\
@@ -201,6 +280,10 @@
 BOOST_MATH_DISTRIBUTION1_TEST(poisson, real_values, int_values, probabilities)
 BOOST_MATH_DISTRIBUTION1_TEST(students_t, int_values, real_values, probabilities)
 BOOST_MATH_DISTRIBUTION2_TEST(weibull, real_values, real_values, real_values, probabilities)
+BOOST_MATH_DISTRIBUTION2_TEST(non_central_chi_squared, int_values, int_values, real_values, probabilities)
+BOOST_MATH_DISTRIBUTION3_TEST(non_central_beta, int_values, int_values, real_values, real_values, probabilities)
+BOOST_MATH_DISTRIBUTION3_TEST(non_central_f, int_values, int_values, real_values, real_values, probabilities)
+BOOST_MATH_DISTRIBUTION2_TEST(non_central_t, int_values, small_int_values, real_values, probabilities)
 
 #ifdef TEST_R
 
@@ -208,7 +291,90 @@
 
 extern "C" {
 #include "Rmath.h"
+/*
+double qnchisq(double, double, double, int, int)
+{
+ return 0;
 }
+*/
+}
+
+#define BOOST_MATH_R_DISTRIBUTION3_TEST(name, param1_table, param2_table, param3_table, random_variable_table, probability_table) \
+ BOOST_MATH_PERFORMANCE_TEST(BOOST_JOIN(dist, name), "dist-" #name "-R-cdf")\
+ {\
+ double result = 0;\
+ unsigned a_size = sizeof(param1_table)/sizeof(param1_table[0]);\
+ unsigned b_size = sizeof(param2_table)/sizeof(param2_table[0]);\
+ unsigned c_size = sizeof(param3_table)/sizeof(param3_table[0]);\
+ unsigned d_size = sizeof(random_variable_table)/sizeof(random_variable_table[0]);\
+ \
+ for(unsigned i = 0; i < a_size; ++i)\
+ {\
+ for(unsigned j = 0; j < b_size; ++j)\
+ {\
+ for(unsigned k = 0; k < c_size; ++k)\
+ {\
+ for(unsigned l = 0; l < d_size; ++l)\
+ {\
+ result += p##name (random_variable_table[l], param1_table[i], param2_table[j], param3_table[k], 1, 0);\
+ }\
+ }\
+ }\
+ }\
+ \
+ consume_result(result);\
+ set_call_count(a_size * b_size * c_size * d_size);\
+ }\
+ BOOST_MATH_PERFORMANCE_TEST(BOOST_JOIN(dist_pdf_, name), "dist-" #name "-R-pdf")\
+ {\
+ double result = 0;\
+ unsigned a_size = sizeof(param1_table)/sizeof(param1_table[0]);\
+ unsigned b_size = sizeof(param2_table)/sizeof(param2_table[0]);\
+ unsigned c_size = sizeof(param3_table)/sizeof(param3_table[0]);\
+ unsigned d_size = sizeof(random_variable_table)/sizeof(random_variable_table[0]);\
+ \
+ for(unsigned i = 0; i < a_size; ++i)\
+ {\
+ for(unsigned j = 0; j < b_size; ++j)\
+ {\
+ for(unsigned k = 0; k < c_size; ++k)\
+ {\
+ for(unsigned l = 0; l < d_size; ++l)\
+ {\
+ result += d##name (random_variable_table[l], param1_table[i], param2_table[j], param3_table[k], 0);\
+ }\
+ }\
+ }\
+ }\
+ \
+ consume_result(result);\
+ set_call_count(a_size * b_size * c_size * d_size);\
+ }\
+ BOOST_MATH_PERFORMANCE_TEST(BOOST_JOIN(dist_quant, name), "dist-" #name "-R-quantile")\
+ {\
+ double result = 0;\
+ unsigned a_size = sizeof(param1_table)/sizeof(param1_table[0]);\
+ unsigned b_size = sizeof(param2_table)/sizeof(param2_table[0]);\
+ unsigned c_size = sizeof(param3_table)/sizeof(param3_table[0]);\
+ unsigned d_size = sizeof(probability_table)/sizeof(probability_table[0]);\
+ \
+ for(unsigned i = 0; i < a_size; ++i)\
+ {\
+ for(unsigned j = 0; j < b_size; ++j)\
+ {\
+ for(unsigned k = 0; k < c_size; ++k)\
+ {\
+ for(unsigned l = 0; l < d_size; ++l)\
+ {\
+ result += q##name (probability_table[l], param1_table[i], param2_table[j], param3_table[k], 1, 0);\
+ }\
+ }\
+ }\
+ }\
+ \
+ consume_result(result);\
+ set_call_count(a_size * b_size * c_size * d_size);\
+ }
 
 #define BOOST_MATH_R_DISTRIBUTION2_TEST(name, param1_table, param2_table, random_variable_table, probability_table) \
    BOOST_MATH_PERFORMANCE_TEST(BOOST_JOIN(dist, name), "dist-" #name "-R-cdf")\
@@ -341,6 +507,10 @@
 BOOST_MATH_R_DISTRIBUTION1_TEST(pois, real_values, int_values, probabilities)
 BOOST_MATH_R_DISTRIBUTION1_TEST(t, int_values, real_values, probabilities)
 BOOST_MATH_R_DISTRIBUTION2_TEST(weibull, real_values, real_values, real_values, probabilities)
+BOOST_MATH_R_DISTRIBUTION2_TEST(nchisq, int_values, int_values, real_values, probabilities)
+BOOST_MATH_R_DISTRIBUTION3_TEST(nf, int_values, int_values, real_values, real_values, probabilities)
+BOOST_MATH_R_DISTRIBUTION3_TEST(nbeta, int_values, int_values, real_values, real_values, probabilities)
+BOOST_MATH_R_DISTRIBUTION2_TEST(nt, int_values, small_int_values, real_values, probabilities)
 
 #endif
 

Modified: branches/CMake/release/libs/math/performance/main.cpp
==============================================================================
--- branches/CMake/release/libs/math/performance/main.cpp (original)
+++ branches/CMake/release/libs/math/performance/main.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,6 +12,7 @@
 #include <string>
 #include <cstring>
 #include <boost/math/tools/config.hpp>
+#include <boost/regex.hpp>
 #include <boost/type_traits/is_same.hpp>
 #include "performance_measure.hpp"
 #include <boost/math/policies/policy.hpp>
@@ -56,6 +57,8 @@
       ++i;
    }
    std::cout << "Or use --all to test everything." << std::endl;
+ std::cout << "You can also specify what to test as a regular expression,\n"
+ " for example --dist.* to test all the distributions." << std::endl;
 }
 
 void run_tests()
@@ -77,14 +80,14 @@
 bool add_named_test(const char* name)
 {
    bool found = false;
+ boost::regex e(name);
    std::set<test_info>::const_iterator a(all_tests().begin()), b(all_tests().end());
    while(a != b)
    {
- if(std::strcmp(name, (*a).name) == 0)
+ if(regex_match((*a).name, e))
       {
          found = true;
          tests.insert(*a);
- break;
       }
       ++a;
    }

Modified: branches/CMake/release/libs/math/performance/performance_measure.hpp
==============================================================================
--- branches/CMake/release/libs/math/performance/performance_measure.hpp (original)
+++ branches/CMake/release/libs/math/performance/performance_measure.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,11 +10,19 @@
 #include <boost/timer.hpp>
 #include <cstring>
 
+#ifdef _WIN32
+#include <windows.h>
+#endif
+
 template <class F>
 double performance_measure(F f)
 {
    unsigned count = 1;
    double time, result;
+#ifdef _WIN32
+ int old_priority = GetThreadPriority(GetCurrentThread());
+ SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL);
+#endif
    //
    // Begin by figuring out how many times to repeat
    // the function call in order to get a measureable time:
@@ -37,7 +45,7 @@
    // result, generally speaking this gives us
    // consistent results:
    //
- for(unsigned i = 0; i < 10u;++i)
+ for(unsigned i = 0; i < 20u;++i)
    {
       boost::timer t;
       for(unsigned i = 0; i < count; ++i)
@@ -47,6 +55,9 @@
          result = time;
       t.restart();
    }
+#ifdef _WIN32
+ SetThreadPriority(GetCurrentThread(), old_priority);
+#endif
    return result / count;
 }
 

Modified: branches/CMake/release/libs/math/test/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/math/test/Jamfile.v2 (original)
+++ branches/CMake/release/libs/math/test/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,10 +13,8 @@
       <toolset>gcc:<cxxflags>-Wno-missing-braces
       <toolset>darwin:<cxxflags>-Wno-missing-braces
       <toolset>acc:<cxxflags>+W2068,2461,2236,4070,4069
- <toolset>intel:<cxxflags>-Qwd264,239
- <toolset>intel:<cxxflags>/nologo
- <toolset>intel-linux:<cxxflags>-wd239
- <toolset>intel:<linkflags>/nologo
+ <toolset>intel:<cxxflags>-nologo
+ <toolset>intel:<linkflags>-nologo
       <toolset>msvc:<warnings>all
       <toolset>msvc:<asynch-exceptions>on
       <toolset>msvc:<cxxflags>/wd4996
@@ -39,11 +37,16 @@
     ;
 
 run hypot_test.cpp ;
+run pow_test.cpp ;
 run log1p_expm1_test.cpp ;
 run powm1_sqrtp1m1_test.cpp ;
 run special_functions_test.cpp ../../test/build//boost_unit_test_framework/<link>static ;
 run test_bernoulli.cpp ;
 run test_constants.cpp ;
+run test_bessel_j.cpp ;
+run test_bessel_y.cpp ;
+run test_bessel_i.cpp ;
+run test_bessel_k.cpp ;
 run test_beta.cpp ;
 run test_beta_dist.cpp ;
 run test_binomial.cpp
@@ -83,6 +86,7 @@
 run test_ellint_3.cpp ;
 run test_erf.cpp ;
 run test_error_handling.cpp ;
+run test_expint.cpp ;
 run test_exponential_dist.cpp ;
 run test_extreme_value.cpp ;
 run test_factorials.cpp ;
@@ -242,6 +246,80 @@
         : # requirements
               <define>TEST_REAL_CONCEPT
         : test_negative_binomial_real_concept ;
+run test_next.cpp ;
+run test_nc_chi_squared.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_FLOAT
+ : test_nc_chi_squared_float ;
+run test_nc_chi_squared.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_DOUBLE
+ : test_nc_chi_squared_double ;
+run test_nc_chi_squared.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_LDOUBLE
+ : test_nc_chi_squared_long_double ;
+run test_nc_chi_squared.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_REAL_CONCEPT
+ : test_nc_chi_squared_real_concept ;
+run test_nc_beta.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_FLOAT
+ : test_nc_beta_float ;
+run test_nc_beta.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_DOUBLE
+ : test_nc_beta_double ;
+run test_nc_beta.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_LDOUBLE
+ : test_nc_beta_long_double ;
+run test_nc_beta.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_REAL_CONCEPT
+ : test_nc_beta_real_concept ;
+run test_nc_f.cpp ;
+run test_nc_t.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_FLOAT
+ : test_nc_t_float ;
+run test_nc_t.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_DOUBLE
+ : test_nc_t_double ;
+run test_nc_t.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_LDOUBLE
+ : test_nc_t_long_double ;
+run test_nc_t.cpp
+ : # command line
+ : # input files
+ : # requirements
+ <define>TEST_REAL_CONCEPT
+ : test_nc_t_real_concept ;
 run test_normal.cpp ;
 run test_pareto.cpp ;
 run test_poisson.cpp
@@ -294,6 +372,7 @@
 
 run test_remez.cpp ;
 run test_roots.cpp ;
+run test_round.cpp ;
 run test_spherical_harmonic.cpp ;
 run test_students_t.cpp ;
 run test_tgamma_ratio.cpp ;
@@ -301,14 +380,27 @@
 run test_triangular.cpp ;
 run test_uniform.cpp ;
 run test_weibull.cpp ;
+run test_zeta.cpp ;
+
 run test_policy.cpp ;
 run test_policy_2.cpp ;
 run test_policy_sf.cpp ;
 
-run test_bessel_j.cpp ;
-run test_bessel_y.cpp ;
-run test_bessel_i.cpp ;
-run test_bessel_k.cpp ;
+run test_tr1.cpp
+ ../build//boost_math_tr1
+ ../build//boost_math_tr1f
+ ../build//boost_math_c99
+ ../build//boost_math_c99f
+ ;
+
+run test_tr1.cpp
+ ../build//boost_math_tr1l
+ ../build//boost_math_c99l
+ : : :
+ <define>TEST_LD=1
+ :
+ test_tr1_long_double
+ ;
 
 compile compile_test/compl_abs_incl_test.cpp ;
 compile compile_test/compl_acos_incl_test.cpp ;
@@ -331,6 +423,10 @@
 compile compile_test/dist_gamma_incl_test.cpp ;
 compile compile_test/dist_lognormal_incl_test.cpp ;
 compile compile_test/dist_neg_binom_incl_test.cpp ;
+compile compile_test/dist_nc_chi_squ_incl_test.cpp ;
+compile compile_test/dist_nc_beta_incl_test.cpp ;
+compile compile_test/dist_nc_f_incl_test.cpp ;
+compile compile_test/dist_nc_t_incl_test.cpp ;
 compile compile_test/dist_normal_incl_test.cpp ;
 compile compile_test/dist_poisson_incl_test.cpp ;
 compile compile_test/dist_students_t_incl_test.cpp ;
@@ -352,6 +448,7 @@
 compile compile_test/sf_ellint_rf_incl_test.cpp ;
 compile compile_test/sf_ellint_rj_incl_test.cpp ;
 compile compile_test/sf_erf_incl_test.cpp ;
+compile compile_test/sf_expint_incl_test.cpp ;
 compile compile_test/sf_expm1_incl_test.cpp ;
 compile compile_test/sf_factorials_incl_test.cpp ;
 compile compile_test/sf_fpclassify_incl_test.cpp ;
@@ -363,13 +460,18 @@
 compile compile_test/sf_legendre_incl_test.cpp ;
 compile compile_test/sf_log1p_incl_test.cpp ;
 compile compile_test/sf_math_fwd_incl_test.cpp ;
+compile compile_test/sf_modf_incl_test.cpp ;
+compile compile_test/sf_next_incl_test.cpp ;
 compile compile_test/sf_powm1_incl_test.cpp ;
+compile compile_test/sf_round_incl_test.cpp ;
 compile compile_test/sf_sign_incl_test.cpp ;
 compile compile_test/sf_sin_pi_incl_test.cpp ;
 compile compile_test/sf_sinc_incl_test.cpp ;
 compile compile_test/sf_sinhc_incl_test.cpp ;
 compile compile_test/sf_sph_harm_incl_test.cpp ;
 compile compile_test/sf_sqrt1pm1_incl_test.cpp ;
+compile compile_test/sf_trunc_incl_test.cpp ;
+compile compile_test/sf_zeta_incl_test.cpp ;
 compile compile_test/std_real_concept_check.cpp ;
 compile compile_test/test_traits.cpp ;
 compile compile_test/tools_config_inc_test.cpp ;
@@ -404,10 +506,3 @@
 
 run complex_test.cpp ;
 
-
-
-
-
-
-
-

Modified: branches/CMake/release/libs/math/test/common_factor_test.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/common_factor_test.cpp (original)
+++ branches/CMake/release/libs/math/test/common_factor_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,7 +8,7 @@
 // See http://www.boost.org for most recent version including documentation.
 
 // Revision History
-// 01 Dec 2006 Various fixes for old compilers (Joaquín M López Muñoz)
+// 01 Dec 2006 Various fixes for old compilers (Joaquin M Lopez Munoz)
 // 10 Nov 2006 Make long long and __int64 mutually exclusive (Daryle Walker)
 // 04 Nov 2006 Use more built-in numeric types, binary-GCD (Daryle Walker)
 // 03 Nov 2006 Use custom numeric types (Daryle Walker)
@@ -113,7 +113,7 @@
 // Various types to test with each GCD/LCM
 typedef ::boost::mpl::list<signed char, short, int, long,
 #ifdef BOOST_HAS_LONG_LONG
- long long,
+ boost::long_long_type,
 #elif defined(BOOST_HAS_MS_INT64)
  __int64,
 #endif
@@ -121,7 +121,7 @@
 typedef ::boost::mpl::list<unsigned char, unsigned short, unsigned,
  unsigned long,
 #ifdef BOOST_HAS_LONG_LONG
- unsigned long long,
+ boost::ulong_long_type,
 #elif defined(BOOST_HAS_MS_INT64)
  unsigned __int64,
 #endif

Modified: branches/CMake/release/libs/math/test/compile_test/distribution_concept_check.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/compile_test/distribution_concept_check.cpp (original)
+++ branches/CMake/release/libs/math/test/compile_test/distribution_concept_check.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -35,6 +35,7 @@
    function_requires<DistributionConcept<triangular_distribution<RealType> > >();
    function_requires<DistributionConcept<uniform_distribution<RealType> > >();
    function_requires<DistributionConcept<negative_binomial_distribution<RealType> > >();
+ function_requires<DistributionConcept<non_central_chi_squared_distribution<RealType> > >();
 }
 
 

Modified: branches/CMake/release/libs/math/test/compile_test/instantiate.hpp
==============================================================================
--- branches/CMake/release/libs/math/test/compile_test/instantiate.hpp (original)
+++ branches/CMake/release/libs/math/test/compile_test/instantiate.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,6 +16,8 @@
 #include <boost/math/special_functions.hpp>
 #include <boost/math/concepts/distributions.hpp>
 
+#ifndef BOOST_MATH_INSTANTIATE_MINIMUM
+
 typedef boost::math::policies::policy<> test_policy;
 
 namespace test{
@@ -29,6 +31,26 @@
 BOOST_MATH_DECLARE_DISTRIBUTIONS(double, test_policy)
 
 }
+#endif
+
+namespace boost{ namespace math{
+//
+// The non central beta doesn't define some properties,
+// define some stub methods here so that we can concept
+// check everything else:
+//
+template <class T, class Policy>
+inline T mean(const non_central_beta_distribution<T, Policy>&){ return 0; }
+template <class T, class Policy>
+inline T variance(const non_central_beta_distribution<T, Policy>&){ return 0; }
+template <class T, class Policy>
+inline T skewness(const non_central_beta_distribution<T, Policy>&){ return 0; }
+template <class T, class Policy>
+inline T kurtosis_excess(const non_central_beta_distribution<T, Policy>&){ return 0; }
+template <class T, class Policy>
+inline T kurtosis(const non_central_beta_distribution<T, Policy>&){ return 0; }
+
+}} // namespaces
 
 template <class RealType>
 void instantiate(RealType)
@@ -56,7 +78,11 @@
    function_requires<DistributionConcept<triangular_distribution<RealType> > >();
    function_requires<DistributionConcept<uniform_distribution<RealType> > >();
    function_requires<DistributionConcept<weibull_distribution<RealType> > >();
-
+ function_requires<DistributionConcept<non_central_chi_squared_distribution<RealType> > >();
+ function_requires<DistributionConcept<non_central_beta_distribution<RealType> > >();
+ function_requires<DistributionConcept<non_central_f_distribution<RealType> > >();
+ function_requires<DistributionConcept<non_central_t_distribution<RealType> > >();
+#ifndef BOOST_MATH_INSTANTIATE_MINIMUM
    function_requires<DistributionConcept<bernoulli_distribution<RealType, test_policy> > >();
    function_requires<DistributionConcept<beta_distribution<RealType, test_policy> > >();
    function_requires<DistributionConcept<binomial_distribution<RealType, test_policy> > >();
@@ -67,6 +93,7 @@
    function_requires<DistributionConcept<fisher_f_distribution<RealType, test_policy> > >();
    function_requires<DistributionConcept<gamma_distribution<RealType, test_policy> > >();
    function_requires<DistributionConcept<lognormal_distribution<RealType, test_policy> > >();
+ function_requires<DistributionConcept<non_central_chi_squared_distribution<RealType, test_policy> > >();
    function_requires<DistributionConcept<negative_binomial_distribution<RealType, test_policy> > >();
    function_requires<DistributionConcept<normal_distribution<RealType, test_policy> > >();
    function_requires<DistributionConcept<rayleigh_distribution<RealType, test_policy> > >();
@@ -76,6 +103,10 @@
    function_requires<DistributionConcept<triangular_distribution<RealType, test_policy> > >();
    function_requires<DistributionConcept<uniform_distribution<RealType, test_policy> > >();
    function_requires<DistributionConcept<weibull_distribution<RealType, test_policy> > >();
+ function_requires<DistributionConcept<non_central_chi_squared_distribution<RealType, test_policy> > >();
+ function_requires<DistributionConcept<non_central_beta_distribution<RealType, test_policy> > >();
+ function_requires<DistributionConcept<non_central_f_distribution<RealType, test_policy> > >();
+ function_requires<DistributionConcept<non_central_t_distribution<RealType, test_policy> > >();
 
    function_requires<DistributionConcept<dist_test::bernoulli > >();
    function_requires<DistributionConcept<dist_test::beta > >();
@@ -96,7 +127,11 @@
    function_requires<DistributionConcept<dist_test::triangular > >();
    function_requires<DistributionConcept<dist_test::uniform > >();
    function_requires<DistributionConcept<dist_test::weibull > >();
-
+ function_requires<DistributionConcept<dist_test::non_central_chi_squared > >();
+ function_requires<DistributionConcept<dist_test::non_central_beta > >();
+ function_requires<DistributionConcept<dist_test::non_central_f > >();
+ function_requires<DistributionConcept<dist_test::non_central_t > >();
+#endif
    int i;
    RealType v1(0.5), v2(0.5), v3(0.5);
    boost::math::tgamma(v1);
@@ -191,6 +226,34 @@
    boost::math::sph_bessel(i, 1);
    boost::math::sph_neumann(i, v2);
    boost::math::sph_neumann(i, i);
+ boost::math::expint(v1);
+ boost::math::expint(i);
+ boost::math::expint(i, v2);
+ boost::math::expint(i, i);
+ boost::math::zeta(v1);
+ boost::math::zeta(i);
+ boost::math::trunc(v1);
+ boost::math::itrunc(v1);
+ boost::math::ltrunc(v1);
+ boost::math::round(v1);
+ boost::math::iround(v1);
+ boost::math::lround(v1);
+ boost::math::modf(v1, &v1);
+ boost::math::modf(v1, &i);
+ long l;
+ boost::math::modf(v1, &l);
+#ifdef BOOST_HAS_LONG_LONG
+ boost::math::lltrunc(v1);
+ boost::math::llround(v1);
+ boost::long_long_type ll;
+ boost::math::modf(v1, &ll);
+#endif
+ boost::math::pow<2>(v1);
+ boost::math::nextafter(v1, v1);
+ boost::math::float_next(v1);
+ boost::math::float_prior(v1);
+ boost::math::float_distance(v1, v1);
+#ifndef BOOST_MATH_INSTANTIATE_MINIMUM
    //
    // All over again, with a policy this time:
    //
@@ -286,6 +349,37 @@
    boost::math::sph_bessel(i, 1, pol);
    boost::math::sph_neumann(i, v2, pol);
    boost::math::sph_neumann(i, i, pol);
+ boost::math::expint(v1, pol);
+ boost::math::expint(i, pol);
+ boost::math::expint(i, v2, pol);
+ boost::math::expint(i, i, pol);
+ boost::math::zeta(v1, pol);
+ boost::math::zeta(i, pol);
+ //
+ // These next functions are intended to be found via ADL:
+ //
+ BOOST_MATH_STD_USING
+ trunc(v1, pol);
+ itrunc(v1, pol);
+ ltrunc(v1, pol);
+ round(v1, pol);
+ iround(v1, pol);
+ lround(v1, pol);
+ modf(v1, &v1, pol);
+ modf(v1, &i, pol);
+ modf(v1, &l, pol);
+#ifdef BOOST_HAS_LONG_LONG
+ using boost::math::lltrunc;
+ using boost::math::llround;
+ lltrunc(v1, pol);
+ llround(v1, pol);
+ modf(v1, &ll, pol);
+#endif
+ boost::math::pow<2>(v1, pol);
+ boost::math::nextafter(v1, v1, pol);
+ boost::math::float_next(v1, pol);
+ boost::math::float_prior(v1, pol);
+ boost::math::float_distance(v1, v1, pol);
    //
    // All over again with the versions in test::
    //
@@ -380,6 +474,32 @@
    test::sph_bessel(i, 1);
    test::sph_neumann(i, v2);
    test::sph_neumann(i, i);
+ test::expint(v1);
+ test::expint(i);
+ test::expint(i, v2);
+ test::expint(i, i);
+ test::zeta(v1);
+ test::zeta(i);
+ test::trunc(v1);
+ test::itrunc(v1);
+ test::ltrunc(v1);
+ test::round(v1);
+ test::iround(v1);
+ test::lround(v1);
+ test::modf(v1, &v1);
+ test::modf(v1, &i);
+ test::modf(v1, &l);
+#ifdef BOOST_HAS_LONG_LONG
+ test::lltrunc(v1);
+ test::llround(v1);
+ test::modf(v1, &ll);
+#endif
+ test::pow<2>(v1);
+ test::nextafter(v1, v1);
+ test::float_next(v1);
+ test::float_prior(v1);
+ test::float_distance(v1, v1);
+#endif
 }
 
 template <class RealType>
@@ -387,7 +507,7 @@
 {
    using namespace boost;
    using namespace boost::math;
-
+#ifndef BOOST_MATH_INSTANTIATE_MINIMUM
    int i = 1;
    long l = 1;
    short s = 1;
@@ -736,7 +856,9 @@
    test::sph_bessel(i, 1);
    test::sph_neumann(i, lr);
    test::sph_neumann(i, i);
+#endif
 }
 
 
 #endif // BOOST_LIBS_MATH_TEST_INSTANTIATE_HPP
+

Modified: branches/CMake/release/libs/math/test/compile_test/test_compile_result.hpp
==============================================================================
--- branches/CMake/release/libs/math/test/compile_test/test_compile_result.hpp (original)
+++ branches/CMake/release/libs/math/test/compile_test/test_compile_result.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -22,6 +22,10 @@
 inline void check_result_imp(double, double){}
 inline void check_result_imp(long double, long double){}
 inline void check_result_imp(int, int){}
+inline void check_result_imp(long, long){}
+#ifdef BOOST_HAS_LONG_LONG
+inline void check_result_imp(boost::long_long_type, boost::long_long_type){}
+#endif
 inline void check_result_imp(bool, bool){}
 
 template <class T1, class T2>

Modified: branches/CMake/release/libs/math/test/functor.hpp
==============================================================================
--- branches/CMake/release/libs/math/test/functor.hpp (original)
+++ branches/CMake/release/libs/math/test/functor.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,6 +3,8 @@
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
+#include <boost/math/special_functions/trunc.hpp>
+
 
 #ifndef BOOST_MATH_TEST_FUNCTOR_HPP
 #define BOOST_MATH_TEST_FUNCTOR_HPP
@@ -121,7 +123,7 @@
    template <class S>
    typename S::value_type operator()(const S& row)
    {
- return f(boost::math::tools::real_cast<int>(row[m_i]), row[m_j]);
+ return f(boost::math::itrunc(row[m_i]), row[m_j]);
    }
 
 private:
@@ -144,8 +146,8 @@
    typename S::value_type operator()(const S& row)
    {
       return f(
- boost::math::tools::real_cast<int>(row[m_i]),
- boost::math::tools::real_cast<int>(row[m_j]),
+ boost::math::itrunc(row[m_i]),
+ boost::math::itrunc(row[m_j]),
          row[m_k]);
    }
 
@@ -169,8 +171,8 @@
    typename S::value_type operator()(const S& row)
    {
       return f(
- boost::math::tools::real_cast<int>(row[m_i]),
- boost::math::tools::real_cast<int>(row[m_j]),
+ boost::math::itrunc(row[m_i]),
+ boost::math::itrunc(row[m_j]),
          row[m_k],
          row[m_l]);
    }

Modified: branches/CMake/release/libs/math/test/handle_test_result.hpp
==============================================================================
--- branches/CMake/release/libs/math/test/handle_test_result.hpp (original)
+++ branches/CMake/release/libs/math/test/handle_test_result.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,6 +12,11 @@
 #include <boost/regex.hpp>
 #include <boost/test/test_tools.hpp>
 
+#if defined(BOOST_INTEL)
+# pragma warning(disable:239)
+# pragma warning(disable:264)
+#endif
+
 //
 // Every client of this header has to define this function,
 // and initialise the table of expected results:

Modified: branches/CMake/release/libs/math/test/test_bernoulli.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_bernoulli.cpp (original)
+++ branches/CMake/release/libs/math/test/test_bernoulli.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,12 +13,12 @@
 // Default domain error policy is
 // #define BOOST_MATH_DOMAIN_ERROR_POLICY throw_on_error
 
-#include <boost/math/distributions/bernoulli.hpp> // for bernoulli_distribution
-using boost::math::bernoulli_distribution;
-
 #include <boost/math/concepts/real_concept.hpp> // for real_concept
 using ::boost::math::concepts::real_concept;
 
+#include <boost/math/distributions/bernoulli.hpp> // for bernoulli_distribution
+using boost::math::bernoulli_distribution;
+
 #include <boost/test/included/test_exec_monitor.hpp> // for test_main
 #include <boost/test/floating_point_comparison.hpp> // for BOOST_CHECK_CLOSE_FRACTION, BOOST_CHECK_EQUAL...
 

Modified: branches/CMake/release/libs/math/test/test_bessel_i.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_bessel_i.cpp (original)
+++ branches/CMake/release/libs/math/test/test_bessel_i.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,6 +8,7 @@
 #include <boost/test/included/test_exec_monitor.hpp>
 #include <boost/test/floating_point_comparison.hpp>
 #include <boost/math/special_functions/bessel.hpp>
+#include <boost/math/special_functions/trunc.hpp>
 #include <boost/type_traits/is_floating_point.hpp>
 #include <boost/array.hpp>
 #include "functor.hpp"
@@ -103,7 +104,7 @@
 {
    return static_cast<T>(
       boost::math::cyl_bessel_i(
- boost::math::tools::real_cast<int>(v), x));
+ boost::math::itrunc(v), x));
 }
 
 template <class T>

Modified: branches/CMake/release/libs/math/test/test_bessel_j.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_bessel_j.cpp (original)
+++ branches/CMake/release/libs/math/test/test_bessel_j.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -334,7 +334,7 @@
 template <class T>
 T cyl_bessel_j_int_wrapper(T v, T x)
 {
- return static_cast<T>(boost::math::cyl_bessel_j(boost::math::tools::real_cast<int>(v), x));
+ return static_cast<T>(boost::math::cyl_bessel_j(boost::math::itrunc(v), x));
 }
 
 

Modified: branches/CMake/release/libs/math/test/test_bessel_k.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_bessel_k.cpp (original)
+++ branches/CMake/release/libs/math/test/test_bessel_k.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -100,7 +100,7 @@
 {
    return static_cast<T>(
       boost::math::cyl_bessel_k(
- boost::math::tools::real_cast<int>(v), x));
+ boost::math::itrunc(v), x));
 }
 
 template <class T>

Modified: branches/CMake/release/libs/math/test/test_bessel_y.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_bessel_y.cpp (original)
+++ branches/CMake/release/libs/math/test/test_bessel_y.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -293,7 +293,7 @@
 template <class T>
 T cyl_neumann_int_wrapper(T v, T x)
 {
- return static_cast<T>(boost::math::cyl_neumann(boost::math::tools::real_cast<int>(v), x));
+ return static_cast<T>(boost::math::cyl_neumann(boost::math::itrunc(v), x));
 }
 
 template <class T>

Modified: branches/CMake/release/libs/math/test/test_beta_dist.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_beta_dist.cpp (original)
+++ branches/CMake/release/libs/math/test/test_beta_dist.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -30,13 +30,13 @@
 # pragma warning(disable: 4127) // conditional expression is constant.
 #endif
 
+#include <boost/math/concepts/real_concept.hpp> // for real_concept
+using ::boost::math::concepts::real_concept;
+
 #include <boost/math/distributions/beta.hpp> // for beta_distribution
 using boost::math::beta_distribution;
 using boost::math::beta;
 
-#include <boost/math/concepts/real_concept.hpp> // for real_concept
-using ::boost::math::concepts::real_concept;
-
 #include <boost/test/included/test_exec_monitor.hpp> // for test_main
 #include <boost/test/floating_point_comparison.hpp> // for BOOST_CHECK_CLOSE_FRACTION
 

Modified: branches/CMake/release/libs/math/test/test_beta_hooks.hpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_beta_hooks.hpp (original)
+++ branches/CMake/release/libs/math/test/test_beta_hooks.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -68,6 +68,47 @@
 #define TEST_OTHER
 #endif
 
+#ifdef TEST_BRATIO
+namespace other{
+extern "C" int bratio_(double*a, double*b, double*x, double*y, double*w, double*w1, int*ierr);
+
+inline float ibeta(float a, float b, float x)
+{
+ double a_ = a;
+ double b_ = b;
+ double x_ = x;
+ double y_ = 1-x_;
+ double w, w1;
+ int ierr = 0;
+ bratio_(&a_, &b_, &x_, &y_, &w, &w1, &ierr);
+ return w;
+}
+inline double ibeta(double a, double b, double x)
+{
+ double a_ = a;
+ double b_ = b;
+ double x_ = x;
+ double y_ = 1-x_;
+ double w, w1;
+ int ierr = 0;
+ bratio_(&a_, &b_, &x_, &y_, &w, &w1, &ierr);
+ return w;
+}
+inline long double ibeta(long double a, long double b, long double x)
+{
+ double a_ = a;
+ double b_ = b;
+ double x_ = x;
+ double y_ = 1-x_;
+ double w, w1;
+ int ierr = 0;
+ bratio_(&a_, &b_, &x_, &y_, &w, &w1, &ierr);
+ return w;
+}
+}
+#define TEST_OTHER
+#endif
+
 #ifdef TEST_OTHER
 namespace other{
    boost::math::concepts::real_concept beta(boost::math::concepts::real_concept, boost::math::concepts::real_concept){ return 0; }

Modified: branches/CMake/release/libs/math/test/test_binomial.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_binomial.cpp (original)
+++ branches/CMake/release/libs/math/test/test_binomial.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -23,12 +23,12 @@
 # pragma warning(disable: 4127) // conditional expression is constant.
 #endif
 
-#include <boost/math/distributions/binomial.hpp> // for binomial_distribution
-using boost::math::binomial_distribution;
-
 #include <boost/math/concepts/real_concept.hpp> // for real_concept
 using ::boost::math::concepts::real_concept;
 
+#include <boost/math/distributions/binomial.hpp> // for binomial_distribution
+using boost::math::binomial_distribution;
+
 #include <boost/test/included/test_exec_monitor.hpp> // for test_main
 #include <boost/test/floating_point_comparison.hpp> // for BOOST_CHECK_CLOSE
 

Modified: branches/CMake/release/libs/math/test/test_binomial_coeff.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_binomial_coeff.cpp (original)
+++ branches/CMake/release/libs/math/test/test_binomial_coeff.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,6 +7,7 @@
 #include <boost/test/included/test_exec_monitor.hpp>
 #include <boost/test/floating_point_comparison.hpp>
 #include <boost/math/special_functions/binomial.hpp>
+#include <boost/math/special_functions/trunc.hpp>
 #include <boost/math/tools/test.hpp>
 #include "functor.hpp"
 #include <boost/array.hpp>
@@ -94,8 +95,8 @@
 T binomial_wrapper(T n, T k)
 {
    return boost::math::binomial_coefficient<T>(
- boost::math::tools::real_cast<unsigned>(n),
- boost::math::tools::real_cast<unsigned>(k));
+ boost::math::itrunc(n),
+ boost::math::itrunc(k));
 }
 
 template <class T>

Modified: branches/CMake/release/libs/math/test/test_classify.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_classify.cpp (original)
+++ branches/CMake/release/libs/math/test/test_classify.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,8 +7,8 @@
 #include <cmath>
 #include <math.h>
 #include <boost/limits.hpp>
-#include <boost/math/special_functions/fpclassify.hpp>
 #include <boost/math/concepts/real_concept.hpp>
+#include <boost/math/special_functions/fpclassify.hpp>
 #include <boost/test/included/test_exec_monitor.hpp>
 
 #ifdef _MSC_VER

Modified: branches/CMake/release/libs/math/test/test_error_handling.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_error_handling.cpp (original)
+++ branches/CMake/release/libs/math/test/test_error_handling.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -53,11 +53,17 @@
    throw user_defined_error();
 }
 
+template <class T>
+T user_indeterminate_result_error(const char* , const char* , const T& )
+{
+ throw user_defined_error();
+}
+
 }}} // namespaces
 
+#include <boost/math/concepts/real_concept.hpp>
 #include <boost/math/policies/policy.hpp>
 #include <boost/math/policies/error_handling.hpp>
-#include <boost/math/concepts/real_concept.hpp>
 #include <boost/test/included/test_exec_monitor.hpp> // for test_main
 //
 // Define some policies:
@@ -69,21 +75,32 @@
    overflow_error<throw_on_error>,
    underflow_error<throw_on_error>,
    denorm_error<throw_on_error>,
- evaluation_error<throw_on_error> > throw_policy;
+ evaluation_error<throw_on_error>,
+ indeterminate_result_error<throw_on_error> > throw_policy;
 policy<
    domain_error<errno_on_error>,
    pole_error<errno_on_error>,
    overflow_error<errno_on_error>,
    underflow_error<errno_on_error>,
    denorm_error<errno_on_error>,
- evaluation_error<errno_on_error> > errno_policy;
+ evaluation_error<errno_on_error>,
+ indeterminate_result_error<errno_on_error> > errno_policy;
+policy<
+ domain_error<ignore_error>,
+ pole_error<ignore_error>,
+ overflow_error<ignore_error>,
+ underflow_error<ignore_error>,
+ denorm_error<ignore_error>,
+ evaluation_error<ignore_error>,
+ indeterminate_result_error<ignore_error> > ignore_policy;
 policy<
    domain_error<user_error>,
    pole_error<user_error>,
    overflow_error<user_error>,
    underflow_error<user_error>,
    denorm_error<user_error>,
- evaluation_error<user_error> > user_policy;
+ evaluation_error<user_error>,
+ indeterminate_result_error<user_error> > user_policy;
 policy<> default_policy;
 
 #define TEST_EXCEPTION(expression, exception)\
@@ -112,6 +129,8 @@
    TEST_EXCEPTION(boost::math::policies::raise_denorm_error<T>(func, 0, T(0), throw_policy), std::underflow_error);
    TEST_EXCEPTION(boost::math::policies::raise_evaluation_error(func, msg1, T(1.25), throw_policy), boost::math::evaluation_error);
    TEST_EXCEPTION(boost::math::policies::raise_evaluation_error(func, 0, T(1.25), throw_policy), boost::math::evaluation_error);
+ TEST_EXCEPTION(boost::math::policies::raise_indeterminate_result_error(func, msg1, T(1.25), T(12.34), throw_policy), std::domain_error);
+ TEST_EXCEPTION(boost::math::policies::raise_indeterminate_result_error(func, 0, T(1.25), T(12.34), throw_policy), std::domain_error);
    //
    // Now try user error handlers: these should all throw user_error():
    // - because by design these are undefined and must be defined by the user ;-)
@@ -121,7 +140,39 @@
    BOOST_CHECK_THROW(boost::math::policies::raise_underflow_error<T>(func, msg2, user_policy), user_defined_error);
    BOOST_CHECK_THROW(boost::math::policies::raise_denorm_error<T>(func, msg2, T(0), user_policy), user_defined_error);
    BOOST_CHECK_THROW(boost::math::policies::raise_evaluation_error(func, msg1, T(0.0), user_policy), user_defined_error);
+ BOOST_CHECK_THROW(boost::math::policies::raise_indeterminate_result_error(func, msg1, T(0.0), T(0.0), user_policy), user_defined_error);
 
+ // Test with ignore_error
+ BOOST_CHECK((boost::math::isnan)(boost::math::policies::raise_domain_error(func, msg1, T(0.0), ignore_policy)) || !std::numeric_limits<T>::has_quiet_NaN);
+ BOOST_CHECK((boost::math::isnan)(boost::math::policies::raise_pole_error(func, msg1, T(0.0), ignore_policy)) || !std::numeric_limits<T>::has_quiet_NaN);
+ BOOST_CHECK_EQUAL(boost::math::policies::raise_overflow_error<T>(func, msg2, ignore_policy), std::numeric_limits<T>::has_infinity ? std::numeric_limits<T>::infinity() : boost::math::tools::max_value<T>());
+ BOOST_CHECK_EQUAL(boost::math::policies::raise_underflow_error<T>(func, msg2, ignore_policy), T(0));
+ BOOST_CHECK_EQUAL(boost::math::policies::raise_denorm_error<T>(func, msg2, T(1.25), ignore_policy), T(1.25));
+ BOOST_CHECK_EQUAL(boost::math::policies::raise_evaluation_error(func, msg1, T(1.25), ignore_policy), T(1.25));
+ BOOST_CHECK_EQUAL(boost::math::policies::raise_indeterminate_result_error(func, 0, T(0.0), T(12.34), ignore_policy), T(12.34));
+
+ // Test with errno_on_error
+ errno = 0;
+ BOOST_CHECK((boost::math::isnan)(boost::math::policies::raise_domain_error(func, msg1, T(0.0), errno_policy)) || !std::numeric_limits<T>::has_quiet_NaN);
+ BOOST_CHECK(errno == EDOM);
+ errno = 0;
+ BOOST_CHECK((boost::math::isnan)(boost::math::policies::raise_pole_error(func, msg1, T(0.0), errno_policy)) || !std::numeric_limits<T>::has_quiet_NaN);
+ BOOST_CHECK(errno == EDOM);
+ errno = 0;
+ BOOST_CHECK_EQUAL(boost::math::policies::raise_overflow_error<T>(func, msg2, errno_policy), std::numeric_limits<T>::has_infinity ? std::numeric_limits<T>::infinity() : boost::math::tools::max_value<T>());
+ BOOST_CHECK_EQUAL(errno, ERANGE);
+ errno = 0;
+ BOOST_CHECK_EQUAL(boost::math::policies::raise_underflow_error<T>(func, msg2, errno_policy), T(0));
+ BOOST_CHECK_EQUAL(errno, ERANGE);
+ errno = 0;
+ BOOST_CHECK_EQUAL(boost::math::policies::raise_denorm_error<T>(func, msg2, T(1.25), errno_policy), T(1.25));
+ BOOST_CHECK_EQUAL(errno, ERANGE);
+ errno = 0;
+ BOOST_CHECK_EQUAL(boost::math::policies::raise_evaluation_error(func, msg1, T(1.25), errno_policy), T(1.25));
+ BOOST_CHECK(errno == EDOM);
+ errno = 0;
+ BOOST_CHECK(boost::math::policies::raise_indeterminate_result_error(func, 0, T(0.0), T(12.34), errno_policy) == T(12.34));
+ BOOST_CHECK_EQUAL(errno, EDOM);
 }
 
 int test_main(int, char* [])
@@ -131,7 +182,7 @@
    test_error(0.0F); // Test float.
    test_error(0.0); // Test double.
    test_error(0.0L); // Test long double.
- test_error(boost::math::concepts::real_concept(0.0L)); // Test concepts.
+ test_error(boost::math::concepts::real_concept(0.0L)); // Test concepts.
    return 0;
 } // int test_main(int, char* [])
 

Modified: branches/CMake/release/libs/math/test/test_find_location.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_find_location.cpp (original)
+++ branches/CMake/release/libs/math/test/test_find_location.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,7 @@
 // Default domain error policy is
 // #define BOOST_MATH_DOMAIN_ERROR_POLICY throw_on_error
 
+#include <boost/math/concepts/real_concept.hpp> // for real_concept
 #include <boost/math/distributions/normal.hpp> // for normal_distribution
   using boost::math::normal; // Default type double.
   using boost::math::normal_distribution; // All floating-point types.
@@ -28,7 +29,6 @@
 
 #include <boost/test/included/test_exec_monitor.hpp> // for test_main
 #include <boost/test/floating_point_comparison.hpp> // for BOOST_CHECK_CLOSE_FRACTION, BOOST_CHECK_EQUAL...
-#include <boost/math/concepts/real_concept.hpp> // for real_concept
 
 #include <iostream>
   using std::cout; using std::endl; using std::fixed;

Modified: branches/CMake/release/libs/math/test/test_find_scale.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_find_scale.cpp (original)
+++ branches/CMake/release/libs/math/test/test_find_scale.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,7 @@
 // Default distribution domain error policy is
 // #define BOOST_MATH_DOMAIN_ERROR_POLICY throw_on_error
 
+#include <boost/math/concepts/real_concept.hpp> // for real_concept
 #include <boost/math/distributions/normal.hpp> // for normal_distribution
   using boost::math::normal; // Default type double.
   using boost::math::normal_distribution; // All floating-point types.
@@ -28,7 +29,6 @@
 
 #include <boost/test/included/test_exec_monitor.hpp> // for test_main
 #include <boost/test/floating_point_comparison.hpp> // for BOOST_CHECK_CLOSE_FRACTION, BOOST_CHECK_EQUAL...
-#include <boost/math/concepts/real_concept.hpp> // for real_concept
 
 #include <iostream>
   using std::cout; using std::endl; using std::fixed;

Modified: branches/CMake/release/libs/math/test/test_gamma_dist.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_gamma_dist.cpp (original)
+++ branches/CMake/release/libs/math/test/test_gamma_dist.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -94,7 +94,7 @@
    // The first tests use values generated by MathCAD,
    // and should be accurate to around double precision.
    //
- RealType tolerance = (std::max)(5e-14f, boost::math::tools::real_cast<float>(std::numeric_limits<RealType>::epsilon() * 20)) * 100;
+ RealType tolerance = (std::max)(RealType(5e-14f), std::numeric_limits<RealType>::epsilon() * 20) * 100;
    cout << "Tolerance for type " << typeid(RealType).name() << " is " << tolerance << " %" << endl;
 
    check_gamma(

Modified: branches/CMake/release/libs/math/test/test_igamma_inv.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_igamma_inv.cpp (original)
+++ branches/CMake/release/libs/math/test/test_igamma_inv.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -355,9 +355,9 @@
 {
    std::cout << "Running spot checks for type " << type_name << std::endl;
    //
- // basic sanity checks, tolerance is 100 epsilon expressed as a percentage:
+ // basic sanity checks, tolerance is 150 epsilon expressed as a percentage:
    //
- T tolerance = boost::math::tools::epsilon<T>() * 10000;
+ T tolerance = boost::math::tools::epsilon<T>() * 15000;
    if(tolerance < 1e-25f)
       tolerance = 1e-25f; // limit of test data?
    BOOST_CHECK_CLOSE(::boost::math::gamma_q_inv(static_cast<T>(1)/100, static_cast<T>(1.0/128)), static_cast<T>(0.35767144525455121503672919307647515332256996883787L), tolerance);

Modified: branches/CMake/release/libs/math/test/test_igamma_inva.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_igamma_inva.cpp (original)
+++ branches/CMake/release/libs/math/test/test_igamma_inva.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -305,3 +305,4 @@
 
 
 
+

Modified: branches/CMake/release/libs/math/test/test_negative_binomial.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_negative_binomial.cpp (original)
+++ branches/CMake/release/libs/math/test/test_negative_binomial.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -26,15 +26,15 @@
 # define TEST_REAL_CONCEPT
 #endif
 
+#include <boost/math/concepts/real_concept.hpp> // for real_concept
+using ::boost::math::concepts::real_concept;
+
 #include <boost/math/distributions/negative_binomial.hpp> // for negative_binomial_distribution
 using boost::math::negative_binomial_distribution;
 
 #include <boost/math/special_functions/gamma.hpp>
   using boost::math::lgamma; // log gamma
 
-#include <boost/math/concepts/real_concept.hpp> // for real_concept
-using ::boost::math::concepts::real_concept;
-
 #include <boost/test/included/test_exec_monitor.hpp> // for test_main
 #include <boost/test/floating_point_comparison.hpp> // for BOOST_CHECK_CLOSE
 

Modified: branches/CMake/release/libs/math/test/test_poisson.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_poisson.cpp (original)
+++ branches/CMake/release/libs/math/test/test_poisson.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -26,9 +26,9 @@
 #include <boost/test/included/test_exec_monitor.hpp> // Boost.Test
 #include <boost/test/floating_point_comparison.hpp>
 
+#include <boost/math/concepts/real_concept.hpp> // for real_concept
 #include <boost/math/distributions/poisson.hpp>
     using boost::math::poisson_distribution;
-#include <boost/math/concepts/real_concept.hpp> // for real_concept
 #include <boost/math/tools/test.hpp> // for real_concept
 
 #include <boost/math/special_functions/gamma.hpp> // for (incomplete) gamma.

Modified: branches/CMake/release/libs/math/test/test_policy.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_policy.cpp (original)
+++ branches/CMake/release/libs/math/test/test_policy.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -35,112 +35,134 @@
 
    BOOST_CHECK((is_same<policy<>::domain_error_type, domain_error<BOOST_MATH_DOMAIN_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<>::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
-
+
    BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::domain_error_type, domain_error<ignore_error> >::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::pole_error_type, pole_error<BOOST_MATH_POLE_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::overflow_error_type, overflow_error<BOOST_MATH_OVERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::underflow_error_type, underflow_error<BOOST_MATH_UNDERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::denorm_error_type, denorm_error<BOOST_MATH_DENORM_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
+ BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::indeterminate_result_error_type, indeterminate_result_error<BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::precision_type, policy<>::precision_type>::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
    BOOST_CHECK((is_same<policy<pole_error<user_error> >::domain_error_type, policy<>::domain_error_type >::value));
    BOOST_CHECK((is_same<policy<pole_error<user_error> >::pole_error_type, pole_error<user_error> >::value));
    BOOST_CHECK((is_same<policy<pole_error<user_error> >::overflow_error_type, overflow_error<BOOST_MATH_OVERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<pole_error<user_error> >::underflow_error_type, underflow_error<BOOST_MATH_UNDERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<pole_error<user_error> >::denorm_error_type, denorm_error<BOOST_MATH_DENORM_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<pole_error<user_error> >::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
+ BOOST_CHECK((is_same<policy<pole_error<user_error> >::indeterminate_result_error_type, indeterminate_result_error<BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<pole_error<user_error> >::precision_type, policy<>::precision_type>::value));
    BOOST_CHECK((is_same<policy<pole_error<user_error> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<pole_error<user_error> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<pole_error<user_error> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
    BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::domain_error_type, policy<>::domain_error_type >::value));
    BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::pole_error_type, policy<>::pole_error_type >::value));
    BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::overflow_error_type, overflow_error<errno_on_error> >::value));
    BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::underflow_error_type, underflow_error<BOOST_MATH_UNDERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::denorm_error_type, denorm_error<BOOST_MATH_DENORM_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
+ BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::indeterminate_result_error_type, indeterminate_result_error<BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::precision_type, policy<>::precision_type>::value));
    BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<overflow_error<errno_on_error> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
    BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::domain_error_type, policy<>::domain_error_type >::value));
    BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::pole_error_type, policy<>::pole_error_type >::value));
    BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::overflow_error_type, policy<>::overflow_error_type >::value));
    BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::underflow_error_type, underflow_error<errno_on_error> >::value));
    BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::denorm_error_type, denorm_error<BOOST_MATH_DENORM_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
+ BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::indeterminate_result_error_type, indeterminate_result_error<BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::precision_type, policy<>::precision_type>::value));
    BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<underflow_error<errno_on_error> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
    BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::domain_error_type, policy<>::domain_error_type >::value));
    BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::pole_error_type, policy<>::pole_error_type >::value));
    BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::overflow_error_type, policy<>::overflow_error_type >::value));
    BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::underflow_error_type, policy<>::underflow_error_type >::value));
    BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::denorm_error_type, denorm_error<errno_on_error> >::value));
    BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
+ BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::indeterminate_result_error_type, indeterminate_result_error<BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::precision_type, policy<>::precision_type>::value));
    BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<denorm_error<errno_on_error> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
    BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::domain_error_type, policy<>::domain_error_type >::value));
    BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::pole_error_type, policy<>::pole_error_type >::value));
    BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::overflow_error_type, policy<>::overflow_error_type >::value));
    BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::underflow_error_type, policy<>::underflow_error_type >::value));
    BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::denorm_error_type, policy<>::denorm_error_type >::value));
    BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::evaluation_error_type, evaluation_error<errno_on_error> >::value));
+ BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::indeterminate_result_error_type, policy<>::indeterminate_result_error_type >::value));
    BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::precision_type, policy<>::precision_type>::value));
    BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<evaluation_error<errno_on_error> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::domain_error_type, policy<>::domain_error_type >::value));
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::pole_error_type, policy<>::pole_error_type >::value));
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::overflow_error_type, policy<>::overflow_error_type >::value));
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::underflow_error_type, policy<>::underflow_error_type >::value));
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::denorm_error_type, policy<>::denorm_error_type >::value));
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::evaluation_error_type, policy<>::evaluation_error_type >::value));
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::indeterminate_result_error_type, indeterminate_result_error<ignore_error> >::value));
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::precision_type, policy<>::precision_type>::value));
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::promote_float_type, policy<>::promote_float_type>::value));
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::promote_double_type, policy<>::promote_double_type>::value));
+ BOOST_CHECK((is_same<policy<indeterminate_result_error<ignore_error> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
+
    BOOST_CHECK((is_same<policy<digits2<20> >::domain_error_type, policy<>::domain_error_type >::value));
    BOOST_CHECK((is_same<policy<digits2<20> >::pole_error_type, policy<>::pole_error_type >::value));
    BOOST_CHECK((is_same<policy<digits2<20> >::overflow_error_type, policy<>::overflow_error_type >::value));
    BOOST_CHECK((is_same<policy<digits2<20> >::underflow_error_type, policy<>::underflow_error_type >::value));
    BOOST_CHECK((is_same<policy<digits2<20> >::denorm_error_type, policy<>::denorm_error_type >::value));
    BOOST_CHECK((is_same<policy<digits2<20> >::evaluation_error_type, policy<>::evaluation_error_type >::value));
+ BOOST_CHECK((is_same<policy<digits2<20> >::indeterminate_result_error_type, policy<>::indeterminate_result_error_type >::value));
    BOOST_CHECK((is_same<policy<digits2<20> >::precision_type, digits2<20> >::value));
    BOOST_CHECK((is_same<policy<digits2<20> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<digits2<20> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<digits2<20> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
    BOOST_CHECK((is_same<policy<promote_float<false> >::domain_error_type, policy<>::domain_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_float<false> >::pole_error_type, policy<>::pole_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_float<false> >::overflow_error_type, policy<>::overflow_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_float<false> >::underflow_error_type, policy<>::underflow_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_float<false> >::denorm_error_type, policy<>::denorm_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_float<false> >::evaluation_error_type, policy<>::evaluation_error_type >::value));
+ BOOST_CHECK((is_same<policy<promote_float<false> >::indeterminate_result_error_type, policy<>::indeterminate_result_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_float<false> >::precision_type, policy<>::precision_type >::value));
    BOOST_CHECK((is_same<policy<promote_float<false> >::promote_float_type, promote_float<false> >::value));
    BOOST_CHECK((is_same<policy<promote_float<false> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<promote_float<false> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
    BOOST_CHECK((is_same<policy<promote_double<false> >::domain_error_type, policy<>::domain_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_double<false> >::pole_error_type, policy<>::pole_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_double<false> >::overflow_error_type, policy<>::overflow_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_double<false> >::underflow_error_type, policy<>::underflow_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_double<false> >::denorm_error_type, policy<>::denorm_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_double<false> >::evaluation_error_type, policy<>::evaluation_error_type >::value));
+ BOOST_CHECK((is_same<policy<promote_double<false> >::indeterminate_result_error_type, policy<>::indeterminate_result_error_type >::value));
    BOOST_CHECK((is_same<policy<promote_double<false> >::precision_type, policy<>::precision_type >::value));
    BOOST_CHECK((is_same<policy<promote_double<false> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<promote_double<false> >::promote_double_type, promote_double<false> >::value));
    BOOST_CHECK((is_same<policy<promote_double<false> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
    BOOST_CHECK((is_same<policy<discrete_quantile<integer_round_up> >::domain_error_type, policy<>::domain_error_type >::value));
    BOOST_CHECK((is_same<policy<discrete_quantile<integer_round_up> >::pole_error_type, policy<>::pole_error_type >::value));
    BOOST_CHECK((is_same<policy<discrete_quantile<integer_round_up> >::overflow_error_type, policy<>::overflow_error_type >::value));
    BOOST_CHECK((is_same<policy<discrete_quantile<integer_round_up> >::underflow_error_type, policy<>::underflow_error_type >::value));
    BOOST_CHECK((is_same<policy<discrete_quantile<integer_round_up> >::denorm_error_type, policy<>::denorm_error_type >::value));
    BOOST_CHECK((is_same<policy<discrete_quantile<integer_round_up> >::evaluation_error_type, policy<>::evaluation_error_type >::value));
+ BOOST_CHECK((is_same<policy<discrete_quantile<integer_round_up> >::indeterminate_result_error_type, policy<>::indeterminate_result_error_type >::value));
    BOOST_CHECK((is_same<policy<discrete_quantile<integer_round_up> >::precision_type, policy<>::precision_type >::value));
    BOOST_CHECK((is_same<policy<discrete_quantile<integer_round_up> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<discrete_quantile<integer_round_up> >::promote_double_type, policy<>::promote_double_type>::value));

Modified: branches/CMake/release/libs/math/test/test_policy_2.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_policy_2.cpp (original)
+++ branches/CMake/release/libs/math/test/test_policy_2.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -33,50 +33,55 @@
    BOOST_CHECK((is_same<policy<domain_error<ignore_error>, overflow_error<ignore_error> >::underflow_error_type, underflow_error<BOOST_MATH_UNDERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error>, overflow_error<ignore_error> >::denorm_error_type, denorm_error<BOOST_MATH_DENORM_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error>, overflow_error<ignore_error> >::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
+ BOOST_CHECK((is_same<policy<domain_error<ignore_error>, overflow_error<ignore_error> >::indeterminate_result_error_type, indeterminate_result_error<BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error>, overflow_error<ignore_error> >::precision_type, policy<>::precision_type>::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error>, overflow_error<ignore_error> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error>, overflow_error<ignore_error> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<domain_error<ignore_error>, overflow_error<ignore_error> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
    BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::domain_error_type, domain_error<ignore_error> >::value));
    BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::pole_error_type, pole_error<BOOST_MATH_POLE_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::overflow_error_type, overflow_error<BOOST_MATH_OVERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::underflow_error_type, underflow_error<BOOST_MATH_UNDERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::denorm_error_type, denorm_error<throw_on_error> >::value));
    BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
+ BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::indeterminate_result_error_type, indeterminate_result_error<BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::precision_type, policy<>::precision_type>::value));
    BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::promote_float_type, policy<>::promote_float_type>::value));
    BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<denorm_error<throw_on_error>, domain_error<ignore_error> >::discrete_quantile_type, policy<>::discrete_quantile_type>::value));
-
+
    BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::domain_error_type, domain_error<ignore_error> >::value));
    BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::pole_error_type, pole_error<BOOST_MATH_POLE_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::overflow_error_type, overflow_error<BOOST_MATH_OVERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::underflow_error_type, underflow_error<BOOST_MATH_UNDERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::denorm_error_type, denorm_error<throw_on_error> >::value));
    BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
+ BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::indeterminate_result_error_type, indeterminate_result_error<BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::precision_type, digits2<20> >::value));
    BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::promote_float_type, promote_float<false> >::value));
    BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::discrete_quantile_type, discrete_quantile<integer_round_down> >::value));
-
+
    BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::domain_error_type, domain_error<ignore_error> >::value));
    BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::pole_error_type, pole_error<BOOST_MATH_POLE_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::overflow_error_type, overflow_error<BOOST_MATH_OVERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::underflow_error_type, underflow_error<BOOST_MATH_UNDERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::denorm_error_type, denorm_error<throw_on_error> >::value));
    BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
+ BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::indeterminate_result_error_type, indeterminate_result_error<BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::precision_type, digits2<20> >::value));
    BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::promote_float_type, promote_float<false> >::value));
    BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::promote_double_type, policy<>::promote_double_type>::value));
    BOOST_CHECK((is_same<normalise<policy<digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> > >::type::discrete_quantile_type, discrete_quantile<integer_round_down> >::value));
-
+
    BOOST_CHECK((is_same<normalise<policy<>, digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::type::domain_error_type, domain_error<ignore_error> >::value));
    BOOST_CHECK((is_same<normalise<policy<>, digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::type::pole_error_type, pole_error<BOOST_MATH_POLE_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<normalise<policy<>, digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::type::overflow_error_type, overflow_error<BOOST_MATH_OVERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<normalise<policy<>, digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::type::underflow_error_type, underflow_error<BOOST_MATH_UNDERFLOW_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<normalise<policy<>, digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::type::denorm_error_type, denorm_error<throw_on_error> >::value));
    BOOST_CHECK((is_same<normalise<policy<>, digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::type::evaluation_error_type, evaluation_error<BOOST_MATH_EVALUATION_ERROR_POLICY> >::value));
+ BOOST_CHECK((is_same<normalise<policy<>, digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::type::indeterminate_result_error_type, indeterminate_result_error<BOOST_MATH_INDETERMINATE_RESULT_ERROR_POLICY> >::value));
    BOOST_CHECK((is_same<normalise<policy<>, digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::type::precision_type, digits2<20> >::value));
    BOOST_CHECK((is_same<normalise<policy<>, digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::type::promote_float_type, promote_float<false> >::value));
    BOOST_CHECK((is_same<normalise<policy<>, digits2<20>, promote_float<false>, discrete_quantile<integer_round_down>, denorm_error<throw_on_error>, domain_error<ignore_error> >::type::promote_double_type, policy<>::promote_double_type>::value));
@@ -88,6 +93,7 @@
    BOOST_CHECK(check_same(make_policy(promote_float<false>()), normalise<policy<promote_float<false> > >::type()));
    BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>()), normalise<policy<domain_error<ignore_error> > >::type()));
    BOOST_CHECK(check_same(make_policy(pole_error<ignore_error>()), normalise<policy<pole_error<ignore_error> > >::type()));
+ BOOST_CHECK(check_same(make_policy(indeterminate_result_error<ignore_error>()), normalise<policy<indeterminate_result_error<ignore_error> > >::type()));
 
    BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>()), policy<domain_error<ignore_error> >()));
    BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>()), policy<domain_error<ignore_error>, pole_error<ignore_error> >()));
@@ -95,12 +101,13 @@
    BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error> >()));
    BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error> >()));
    BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error> >()));
- BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), digits2<10>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, digits2<10> >()));
- BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), digits10<5>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, digits2<19> >()));
- BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), digits2<10>(), promote_float<false>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, digits2<10>, promote_float<false> >()));
+ BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), indeterminate_result_error<throw_on_error>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, indeterminate_result_error<throw_on_error> >()));
+ BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), indeterminate_result_error<throw_on_error>(), digits2<10>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, indeterminate_result_error<throw_on_error>, digits2<10> >()));
+ BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), indeterminate_result_error<throw_on_error>(), digits10<5>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, indeterminate_result_error<throw_on_error>, digits2<19> >()));
+ BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), indeterminate_result_error<throw_on_error>(), digits2<10>(), promote_float<false>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, indeterminate_result_error<throw_on_error>, digits2<10>, promote_float<false> >()));
 #ifndef BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS
- BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), digits2<10>(), promote_float<false>(), promote_double<false>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, digits2<10>, promote_float<false>, promote_double<false> >()));
- BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), digits2<10>(), promote_float<false>(), promote_double<false>(), discrete_quantile<integer_round_down>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, digits2<10>, promote_float<false>, promote_double<false>, discrete_quantile<integer_round_down> >()));
+ BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), indeterminate_result_error<throw_on_error>(), digits2<10>(), promote_float<false>(), promote_double<false>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, indeterminate_result_error<throw_on_error>, digits2<10>, promote_float<false>, promote_double<false> >()));
+ BOOST_CHECK(check_same(make_policy(domain_error<ignore_error>(), pole_error<ignore_error>(), overflow_error<ignore_error>(), underflow_error<throw_on_error>(), denorm_error<throw_on_error>(), evaluation_error<ignore_error>(), indeterminate_result_error<throw_on_error>(), digits2<10>(), promote_float<false>(), promote_double<false>(), discrete_quantile<integer_round_down>()), policy<domain_error<ignore_error>, pole_error<ignore_error>, overflow_error<ignore_error>, underflow_error<throw_on_error>, denorm_error<throw_on_error>, evaluation_error<ignore_error>, indeterminate_result_error<throw_on_error>, digits2<10>, promote_float<false>, promote_double<false>, discrete_quantile<integer_round_down> >()));
 #endif
    return 0;
 } // int test_main(int, char* [])

Modified: branches/CMake/release/libs/math/test/test_rational_instances/test_rational_double4.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_rational_instances/test_rational_double4.cpp (original)
+++ branches/CMake/release/libs/math/test/test_rational_instances/test_rational_double4.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,5 +6,5 @@
 #include "test_rational.hpp"
 
 #ifdef BOOST_HAS_LONG_LONG
-template void do_test_spots<double, unsigned long long>(double, unsigned long long);
+template void do_test_spots<double, boost::ulong_long_type>(double, boost::ulong_long_type);
 #endif

Modified: branches/CMake/release/libs/math/test/test_rational_instances/test_rational_float4.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_rational_instances/test_rational_float4.cpp (original)
+++ branches/CMake/release/libs/math/test/test_rational_instances/test_rational_float4.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,5 +7,5 @@
 #include "test_rational.hpp"
 
 #ifdef BOOST_HAS_LONG_LONG
-template void do_test_spots<float, unsigned long long>(float, unsigned long long);
+template void do_test_spots<float, boost::ulong_long_type>(float, boost::ulong_long_type);
 #endif

Modified: branches/CMake/release/libs/math/test/test_rational_instances/test_rational_ldouble4.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_rational_instances/test_rational_ldouble4.cpp (original)
+++ branches/CMake/release/libs/math/test/test_rational_instances/test_rational_ldouble4.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,5 +7,5 @@
 #include "test_rational.hpp"
 
 #ifdef BOOST_HAS_LONG_LONG
-template void do_test_spots<long double, unsigned long long>(long double, unsigned long long);
+template void do_test_spots<long double, boost::ulong_long_type>(long double, boost::ulong_long_type);
 #endif

Modified: branches/CMake/release/libs/math/test/test_rational_instances/test_rational_real_concept4.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_rational_instances/test_rational_real_concept4.cpp (original)
+++ branches/CMake/release/libs/math/test/test_rational_instances/test_rational_real_concept4.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,6 +11,6 @@
 #include <boost/math/concepts/real_concept.hpp>
 
 #ifdef BOOST_HAS_LONG_LONG
-template void do_test_spots<boost::math::concepts::real_concept, unsigned long long>(boost::math::concepts::real_concept, unsigned long long);
+template void do_test_spots<boost::math::concepts::real_concept, boost::ulong_long_type>(boost::math::concepts::real_concept, boost::ulong_long_type);
 #endif
 #endif

Modified: branches/CMake/release/libs/math/test/test_rationals.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_rationals.cpp (original)
+++ branches/CMake/release/libs/math/test/test_rationals.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,7 +20,7 @@
    do_test_spots(t, int(0));
    do_test_spots(t, unsigned(0));
 #ifdef BOOST_HAS_LONG_LONG
- do_test_spots(t, (unsigned long long)(0));
+ do_test_spots(t, (boost::ulong_long_type)(0));
 #endif
    do_test_spots(t, float(0));
    do_test_spots(t, T(0));

Modified: branches/CMake/release/libs/math/test/test_students_t.cpp
==============================================================================
--- branches/CMake/release/libs/math/test/test_students_t.cpp (original)
+++ branches/CMake/release/libs/math/test/test_students_t.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -17,9 +17,9 @@
 #include <boost/test/included/test_exec_monitor.hpp> // Boost.Test
 #include <boost/test/floating_point_comparison.hpp>
 
+#include <boost/math/concepts/real_concept.hpp> // for real_concept
 #include <boost/math/distributions/students_t.hpp>
     using boost::math::students_t_distribution;
-#include <boost/math/concepts/real_concept.hpp> // for real_concept
 #include <boost/math/tools/test.hpp> // for real_concept
 
 #include <iostream>

Modified: branches/CMake/release/libs/math/vc71_fix/instantiate_all.cpp
==============================================================================
--- branches/CMake/release/libs/math/vc71_fix/instantiate_all.cpp (original)
+++ branches/CMake/release/libs/math/vc71_fix/instantiate_all.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,8 +14,10 @@
 // as that would lead to recursive project dependencies...
 //
 
-#include "../test/compile_test/instantiate.hpp"
+#define BOOST_MATH_ASSERT_UNDEFINED_POLICY false
+#define BOOST_MATH_INSTANTIATE_MINIMUM
 #include <boost/math/concepts/real_concept.hpp>
+#include "../test/compile_test/instantiate.hpp"
 
 void some_proc()
 {

Modified: branches/CMake/release/libs/multi_index/doc/compiler_specifics.html
==============================================================================
--- branches/CMake/release/libs/multi_index/doc/compiler_specifics.html (original)
+++ branches/CMake/release/libs/multi_index/doc/compiler_specifics.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -38,7 +38,7 @@
 <ul>
   <li>Borland C++ Builder 6.4 and later</li>
   <li>Comeau C/C++ 4.3.10.1 for Windows (VC++ 9.0 backend)</li>
- <li>Compaq C++ 6.5-042 for Tru64 UNIX and later</li>
+ <li>Compaq C++ 6.5-042 and later for Tru64 UNIX</li>
   <li>
     <a href="#gcc_32">GNU GCC 3.2 and later</a>
     <ul>
@@ -46,7 +46,7 @@
       <li>Darwin GCC 4.0</li>
     </ul>
   </li>
- <li>HP aC++ A.06.12 for HP-UX IA64 and later</li>
+ <li>HP aC++ A.06.12 and later for HP-UX IA64</li>
   <li>HP aC++ A.03.80 for HP-UX PA-RISC</li>
   <li>IBM VisualAge C++ V6.0 for AIX</li>
   <li>IBM VisualAge C++ V9.0 for AIX</li>
@@ -71,7 +71,7 @@
   <li>Microsoft Visual C++ 7.1</li>
   <li>Microsoft Visual C++ 8.0 and later</li>
   <li>Microsoft Visual C++ 8.0 x64 cross-compiler and later</li>
- <li>Sun Studio 10 for Solaris and later</li>
+ <li>Sun Studio 10 and later for Solaris</li>
   <li>Portability techniques
     <ul>
       <li>Use of member_offset</li>
@@ -107,7 +107,7 @@
 the Comeau compiler 4.3.10.1 has been used.
 </p>
 
-<h2><a name="compaq_65">Compaq C++ 6.5-042 for Tru64 UNIX and later</a></h2>
+<h2><a name="compaq_65">Compaq C++ 6.5-042 and later for Tru64 UNIX</a></h2>
 
 <p>
 No problems have been detected with this compiler. Last tested for version 7.1-006.
@@ -161,7 +161,7 @@
 upgrade.
 </p>
 
-<h2><a name="acc_612_ia64">HP aC++ A.06.12 for HP-UX IA64 and later</a></h2>
+<h2><a name="acc_612_ia64">HP aC++ A.06.12 and later for HP-UX IA64</a></h2>
 
 <p>
 No problems have been detected with this compiler.
@@ -658,7 +658,7 @@
 Last tested for compiler version 9.0.
 </p>
 
-<h2><a name="sun_10">Sun Studio 10 for Solaris and later</a></h2>
+<h2><a name="sun_10">Sun Studio 10 and later for Solaris</a></h2>
 
 <p>
 No problems have been detected with this platform. The exact compiler versions
@@ -1093,7 +1093,7 @@
 
 <br>
 
-<p>Revised July 4th 2008</p>
+<p>Revised July 8th 2008</p>
 
 <p>&copy; Copyright 2003-2008 Joaqu&iacute;n M L&oacute;pez Mu&ntilde;oz.
 Distributed under the Boost Software

Modified: branches/CMake/release/libs/parameter/doc/html/index.html
==============================================================================
--- branches/CMake/release/libs/parameter/doc/html/index.html (original)
+++ branches/CMake/release/libs/parameter/doc/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.5: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.6: http://docutils.sourceforge.net/" />
 <title>The Boost Parameter Library</title>
 <link rel="stylesheet" href="rst.css" type="text/css" />
 </head>
@@ -11,7 +11,7 @@
 <div class="document" id="the-boost-parameter-library">
 <h1 class="title">The Boost Parameter Library</h1>
 
-<p><a class="reference" href="../../../../index.htm"><img alt="Boost" src="../../../../boost.png" /></a></p>
+<p><a class="reference external" href="../../../../index.htm"><img alt="Boost" src="../../../../boost.png" /></a></p>
 <hr class="docutils" />
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
@@ -78,100 +78,65 @@
 <tbody valign="top">
 <tr class="field"><th class="field-name">Authors:</th><td class="field-body">David Abrahams, Daniel Wallin</td>
 </tr>
-<tr class="field"><th class="field-name">Contact:</th><td class="field-body"><a class="reference" href="mailto:dave&#64;boost-consulting.com">dave&#64;boost-consulting.com</a>, <a class="reference" href="mailto:dalwan01&#64;student.umu.se">dalwan01&#64;student.umu.se</a></td>
+<tr class="field"><th class="field-name">Contact:</th><td class="field-body"><a class="reference external" href="mailto:dave&#64;boost-consulting.com">dave&#64;boost-consulting.com</a>, <a class="reference external" href="mailto:dalwan01&#64;student.umu.se">dalwan01&#64;student.umu.se</a></td>
 </tr>
-<tr class="field"><th class="field-name">Organization:</th><td class="field-body"><a class="reference" href="http://www.boost-consulting.com">Boost Consulting</a></td>
+<tr class="field"><th class="field-name">Organization:</th><td class="field-body"><a class="reference external" href="http://www.boost-consulting.com">Boost Consulting</a></td>
 </tr>
 <tr class="field"><th class="field-name">Date:</th><td class="field-body">$Date: 2005/07/18 20:34:31 $</td>
 </tr>
 <tr class="field"><th class="field-name">Copyright:</th><td class="field-body">Copyright David Abrahams, Daniel Wallin 2005.
 Distributed under the Boost Software License,
 Version 1.0. (See accompanying file LICENSE_1_0.txt
-or copy at <a class="reference" href="http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt>)</td>
+or copy at <a class="reference external" href="
http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt>)</td>
 </tr>
 </tbody>
 </table>
 <hr class="docutils" />
-<div class="contents topic">
-<p class="topic-title first"><a id="table-of-contents" name="table-of-contents"><strong>Table of Contents</strong></a></p>
+<p>[Note: this tutorial does not cover all details of the library. Please see also the <a class="reference external" href="reference.html">reference documentation</a>]</p>
+<div class="contents topic" id="table-of-contents">
+<p class="topic-title first"><strong>Table of Contents</strong></p>
 <ul class="auto-toc simple">
-<li><a class="reference" href="#motivation" id="id21" name="id21">1&nbsp;&nbsp;&nbsp;Motivation</a><ul class="auto-toc">
-<li><a class="reference" href="#named-function-parameters" id="id22" name="id22">1.1&nbsp;&nbsp;&nbsp;Named Function Parameters</a></li>
-<li><a class="reference" href="#deduced-function-parameters" id="id23" name="id23">1.2&nbsp;&nbsp;&nbsp;Deduced Function Parameters</a></li>
-<li><a class="reference" href="#class-template-parameter-support" id="id24" name="id24">1.3&nbsp;&nbsp;&nbsp;Class Template Parameter Support</a></li>
+<li><a class="reference internal" href="#motivation" id="id22">1&nbsp;&nbsp;&nbsp;Motivation</a><ul class="auto-toc">
+<li><a class="reference internal" href="#named-function-parameters" id="id23">1.1&nbsp;&nbsp;&nbsp;Named Function Parameters</a></li>
+<li><a class="reference internal" href="#deduced-function-parameters" id="id24">1.2&nbsp;&nbsp;&nbsp;Deduced Function Parameters</a></li>
+<li><a class="reference internal" href="#class-template-parameter-support" id="id25">1.3&nbsp;&nbsp;&nbsp;Class Template Parameter Support</a></li>
 </ul>
 </li>
-<li><a class="reference" href="#tutorial" id="id25" name="id25">2&nbsp;&nbsp;&nbsp;Tutorial</a><ul class="auto-toc">
-<li><a class="reference" href="#parameter-enabled-functions" id="id26" name="id26">2.1&nbsp;&nbsp;&nbsp;Parameter-Enabled Functions</a><ul class="auto-toc">
-<li><a class="reference" href="#headers-and-namespaces" id="id27" name="id27">2.1.1&nbsp;&nbsp;&nbsp;Headers And Namespaces</a></li>
-<li><a class="reference" href="#the-abstract-interface-to-dfs" id="id28" name="id28">2.1.2&nbsp;&nbsp;&nbsp;The Abstract Interface to <tt class="docutils literal"><span class="pre">depth_first_search</span></tt></a></li>
-<li><a class="reference" href="#defining-the-keywords" id="id29" name="id29">2.1.3&nbsp;&nbsp;&nbsp;Defining the Keywords</a></li>
-<li><a class="reference" href="#writing-the-function" id="id30" name="id30">2.1.4&nbsp;&nbsp;&nbsp;Writing the Function</a></li>
-<li><a class="reference" href="#function-signatures" id="id31" name="id31">2.1.5&nbsp;&nbsp;&nbsp;Function Signatures</a><ul class="auto-toc">
-<li><a class="reference" href="#required-parameters" id="id32" name="id32">2.1.5.1&nbsp;&nbsp;&nbsp;Required Parameters</a></li>
-<li><a class="reference" href="#optional-parameters" id="id33" name="id33">2.1.5.2&nbsp;&nbsp;&nbsp;Optional Parameters</a></li>
-<li><a class="reference" href="#handling-out-parameters" id="id34" name="id34">2.1.5.3&nbsp;&nbsp;&nbsp;Handling “Out” Parameters</a></li>
-<li><a class="reference" href="#positional-arguments" id="id35" name="id35">2.1.5.4&nbsp;&nbsp;&nbsp;Positional Arguments</a></li>
-<li><a class="reference" href="#default-expression-evaluation" id="id36" name="id36">2.1.5.5&nbsp;&nbsp;&nbsp;Default Expression Evaluation</a></li>
-<li><a class="reference" href="#signature-matching-and-overloading" id="id37" name="id37">2.1.5.6&nbsp;&nbsp;&nbsp;Signature Matching and Overloading</a><ul class="auto-toc">
-<li><a class="reference" href="#adding-type-requirements" id="id38" name="id38">2.1.5.6.1&nbsp;&nbsp;&nbsp;Adding Type Requirements</a></li>
-<li><a class="reference" href="#predicate-requirements" id="id39" name="id39">2.1.5.6.2&nbsp;&nbsp;&nbsp;Predicate Requirements</a></li>
+<li><a class="reference internal" href="#tutorial" id="id26">2&nbsp;&nbsp;&nbsp;Tutorial</a><ul class="auto-toc">
+<li><a class="reference internal" href="#parameter-enabled-functions" id="id27">2.1&nbsp;&nbsp;&nbsp;Parameter-Enabled Functions</a></li>
+<li><a class="reference internal" href="#parameter-enabled-member-functions" id="id28">2.2&nbsp;&nbsp;&nbsp;Parameter-Enabled Member Functions</a></li>
+<li><a class="reference internal" href="#parameter-enabled-constructors" id="id29">2.3&nbsp;&nbsp;&nbsp;Parameter-Enabled Constructors</a></li>
+<li><a class="reference internal" href="#parameter-enabled-class-templates" id="id30">2.4&nbsp;&nbsp;&nbsp;Parameter-Enabled Class Templates</a></li>
 </ul>
 </li>
-<li><a class="reference" href="#deduced-parameters" id="id40" name="id40">2.1.5.7&nbsp;&nbsp;&nbsp;Deduced Parameters</a></li>
+<li><a class="reference internal" href="#advanced-topics" id="id31">3&nbsp;&nbsp;&nbsp;Advanced Topics</a><ul class="auto-toc">
+<li><a class="reference internal" href="#fine-grained-name-control" id="id32">3.1&nbsp;&nbsp;&nbsp;Fine-Grained Name Control</a></li>
+<li><a class="reference internal" href="#more-argumentpacks" id="id33">3.2&nbsp;&nbsp;&nbsp;More <span class="concept">ArgumentPack</span>s</a></li>
 </ul>
 </li>
+<li><a class="reference internal" href="#best-practices" id="id34">4&nbsp;&nbsp;&nbsp;Best Practices</a><ul class="auto-toc">
+<li><a class="reference internal" href="#keyword-naming" id="id35">4.1&nbsp;&nbsp;&nbsp;Keyword Naming</a></li>
+<li><a class="reference internal" href="#namespaces" id="id36">4.2&nbsp;&nbsp;&nbsp;Namespaces</a></li>
+<li><a class="reference internal" href="#documentation" id="id37">4.3&nbsp;&nbsp;&nbsp;Documentation</a></li>
 </ul>
 </li>
-<li><a class="reference" href="#parameter-enabled-member-functions" id="id41" name="id41">2.2&nbsp;&nbsp;&nbsp;Parameter-Enabled Member Functions</a></li>
-<li><a class="reference" href="#parameter-enabled-constructors" id="id42" name="id42">2.3&nbsp;&nbsp;&nbsp;Parameter-Enabled Constructors</a></li>
-<li><a class="reference" href="#parameter-enabled-class-templates" id="id43" name="id43">2.4&nbsp;&nbsp;&nbsp;Parameter-Enabled Class Templates</a><ul class="auto-toc">
-<li><a class="reference" href="#named-template-parameters" id="id44" name="id44">2.4.1&nbsp;&nbsp;&nbsp;Named Template Parameters</a><ul class="auto-toc">
-<li><a class="reference" href="#template-keywords" id="id45" name="id45">2.4.1.1&nbsp;&nbsp;&nbsp;Template Keywords</a></li>
-<li><a class="reference" href="#class-template-skeleton" id="id46" name="id46">2.4.1.2&nbsp;&nbsp;&nbsp;Class Template Skeleton</a></li>
-<li><a class="reference" href="#class-template-signatures" id="id47" name="id47">2.4.1.3&nbsp;&nbsp;&nbsp;Class Template Signatures</a></li>
-<li><a class="reference" href="#argument-packs-and-parameter-extraction" id="id48" name="id48">2.4.1.4&nbsp;&nbsp;&nbsp;Argument Packs and Parameter Extraction</a></li>
+<li><a class="reference internal" href="#portability-considerations" id="id38">5&nbsp;&nbsp;&nbsp;Portability Considerations</a><ul class="auto-toc">
+<li><a class="reference internal" href="#no-sfinae-support" id="id39">5.1&nbsp;&nbsp;&nbsp;No SFINAE Support</a></li>
+<li><a class="reference internal" href="#no-support-for-result-of" id="id40">5.2&nbsp;&nbsp;&nbsp;No Support for <tt class="docutils literal"><span class="pre">result_of</span></tt></a></li>
+<li><a class="reference internal" href="#compiler-can-t-see-references-in-unnamed-namespace" id="id41">5.3&nbsp;&nbsp;&nbsp;Compiler Can't See References In Unnamed Namespace</a></li>
 </ul>
 </li>
-<li><a class="reference" href="#exercising-the-code-so-far" id="id49" name="id49">2.4.2&nbsp;&nbsp;&nbsp;Exercising the Code So Far</a></li>
-<li><a class="reference" href="#deduced-template-parameters" id="id50" name="id50">2.4.3&nbsp;&nbsp;&nbsp;Deduced Template Parameters</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li><a class="reference" href="#advanced-topics" id="id51" name="id51">3&nbsp;&nbsp;&nbsp;Advanced Topics</a><ul class="auto-toc">
-<li><a class="reference" href="#fine-grained-name-control" id="id52" name="id52">3.1&nbsp;&nbsp;&nbsp;Fine-Grained Name Control</a></li>
-<li><a class="reference" href="#more-argumentpacks" id="id53" name="id53">3.2&nbsp;&nbsp;&nbsp;More <span class="concept">ArgumentPack</span>s</a><ul class="auto-toc">
-<li><a class="reference" href="#building-argumentpacks" id="id54" name="id54">3.2.1&nbsp;&nbsp;&nbsp;Building <span class="concept">ArgumentPack</span>s</a></li>
-<li><a class="reference" href="#extracting-parameter-types" id="id55" name="id55">3.2.2&nbsp;&nbsp;&nbsp;Extracting Parameter Types</a></li>
-<li><a class="reference" href="#lazy-default-computation" id="id56" name="id56">3.2.3&nbsp;&nbsp;&nbsp;Lazy Default Computation</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li><a class="reference" href="#best-practices" id="id57" name="id57">4&nbsp;&nbsp;&nbsp;Best Practices</a><ul class="auto-toc">
-<li><a class="reference" href="#keyword-naming" id="id58" name="id58">4.1&nbsp;&nbsp;&nbsp;Keyword Naming</a></li>
-<li><a class="reference" href="#namespaces" id="id59" name="id59">4.2&nbsp;&nbsp;&nbsp;Namespaces</a></li>
-<li><a class="reference" href="#documentation" id="id60" name="id60">4.3&nbsp;&nbsp;&nbsp;Documentation</a></li>
-</ul>
-</li>
-<li><a class="reference" href="#portability-considerations" id="id61" name="id61">5&nbsp;&nbsp;&nbsp;Portability Considerations</a><ul class="auto-toc">
-<li><a class="reference" href="#no-sfinae-support" id="id62" name="id62">5.1&nbsp;&nbsp;&nbsp;No SFINAE Support</a></li>
-<li><a class="reference" href="#no-support-for-result-of" id="id63" name="id63">5.2&nbsp;&nbsp;&nbsp;No Support for <tt class="docutils literal"><span class="pre">result_of</span></tt></a></li>
-<li><a class="reference" href="#compiler-can-t-see-references-in-unnamed-namespace" id="id64" name="id64">5.3&nbsp;&nbsp;&nbsp;Compiler Can't See References In Unnamed Namespace</a></li>
-</ul>
-</li>
-<li><a class="reference" href="#python-binding" id="id65" name="id65">6&nbsp;&nbsp;&nbsp;Python Binding</a></li>
-<li><a class="reference" href="#reference" id="id66" name="id66">7&nbsp;&nbsp;&nbsp;Reference</a></li>
-<li><a class="reference" href="#glossary" id="id67" name="id67">8&nbsp;&nbsp;&nbsp;Glossary</a></li>
-<li><a class="reference" href="#acknowledgements" id="id68" name="id68">9&nbsp;&nbsp;&nbsp;Acknowledgements</a></li>
+<li><a class="reference internal" href="#python-binding" id="id42">6&nbsp;&nbsp;&nbsp;Python Binding</a></li>
+<li><a class="reference internal" href="#reference" id="id43">7&nbsp;&nbsp;&nbsp;Reference</a></li>
+<li><a class="reference internal" href="#glossary" id="id44">8&nbsp;&nbsp;&nbsp;Glossary</a></li>
+<li><a class="reference internal" href="#acknowledgements" id="id45">9&nbsp;&nbsp;&nbsp;Acknowledgements</a></li>
 </ul>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id21" id="motivation" name="motivation">1&nbsp;&nbsp;&nbsp;Motivation</a></h1>
-<p>In C++, <a class="reference" href="#arguments">arguments</a> are normally given meaning by their positions
-with respect to a <a class="reference" href="#parameter">parameter</a> list: the first argument passed maps
+<div class="section" id="motivation">
+<h1><a class="toc-backref" href="#id22">1&nbsp;&nbsp;&nbsp;Motivation</a></h1>
+<p>In C++, <a class="reference internal" href="#arguments">arguments</a> are normally given meaning by their positions
+with respect to a <a class="reference internal" href="#parameter">parameter</a> list: the first argument passed maps
 onto the first parameter in a function's definition, and so on.
 That protocol is fine when there is at most one parameter with a
 default value, but when there are even a few useful defaults, the
@@ -218,8 +183,8 @@
 </li>
 </ul>
 <!-- @ignore(3) -->
-<div class="section">
-<h2><a class="toc-backref" href="#id22" id="named-function-parameters" name="named-function-parameters">1.1&nbsp;&nbsp;&nbsp;Named Function Parameters</a></h2>
+<div class="section" id="named-function-parameters">
+<h2><a class="toc-backref" href="#id23">1.1&nbsp;&nbsp;&nbsp;Named Function Parameters</a></h2>
 <div class="compound">
 <p class="compound-first">This library addresses the problems outlined above by associating
 each parameter name with a keyword object. Now users can identify
@@ -230,8 +195,8 @@
 </div>
 <!-- @ignore() -->
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id23" id="deduced-function-parameters" name="deduced-function-parameters">1.2&nbsp;&nbsp;&nbsp;Deduced Function Parameters</a></h2>
+<div class="section" id="deduced-function-parameters">
+<h2><a class="toc-backref" href="#id24">1.2&nbsp;&nbsp;&nbsp;Deduced Function Parameters</a></h2>
 <div class="compound">
 <p class="compound-first">A <strong>deduced parameter</strong> can be passed in any position <em>without</em>
 supplying an explicit parameter name. It's not uncommon for a
@@ -251,8 +216,8 @@
 </div>
 <!-- @ignore() -->
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id24" id="class-template-parameter-support" name="class-template-parameter-support">1.3&nbsp;&nbsp;&nbsp;Class Template Parameter Support</a></h2>
+<div class="section" id="class-template-parameter-support">
+<h2><a class="toc-backref" href="#id25">1.3&nbsp;&nbsp;&nbsp;Class Template Parameter Support</a></h2>
 <div class="compound">
 <p class="compound-first">The reasoning we've given for named and deduced parameter
 interfaces applies equally well to class templates as it does to
@@ -277,16 +242,16 @@
 <!-- @ignore(2) -->
 </div>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id25" id="tutorial" name="tutorial">2&nbsp;&nbsp;&nbsp;Tutorial</a></h1>
+<div class="section" id="tutorial">
+<h1><a class="toc-backref" href="#id26">2&nbsp;&nbsp;&nbsp;Tutorial</a></h1>
 <p>This tutorial shows all the basics—how to build both named- and deduced-parameter
 interfaces to function templates and class templates—and several
 more advanced idioms as well.</p>
-<div class="section">
-<h2><a class="toc-backref" href="#id26" id="parameter-enabled-functions" name="parameter-enabled-functions">2.1&nbsp;&nbsp;&nbsp;Parameter-Enabled Functions</a></h2>
+<div class="section" id="parameter-enabled-functions">
+<h2><a class="toc-backref" href="#id27">2.1&nbsp;&nbsp;&nbsp;Parameter-Enabled Functions</a></h2>
 <p>In this section we'll show how the Parameter library can be used to
-build an expressive interface to the <a class="reference" href="../../../graph/index.html">Boost Graph library</a>'s
-<a class="reference" href="../../../graph/doc/depth_first_search.html"><tt class="docutils literal"><span class="pre">depth_first_search</span></tt></a> algorithm.<a class="footnote-reference" href="#old-interface" id="id2" name="id2"><sup>1</sup></a></p>
+build an expressive interface to the <a class="reference external" href="../../../graph/index.html">Boost Graph library</a>'s
+<a class="reference external" href="../../../graph/doc/depth_first_search.html"><tt class="docutils literal"><span class="pre">depth_first_search</span></tt></a> algorithm.<a class="footnote-reference" href="#old-interface" id="id3"><sup>1</sup></a></p>
 <!-- Revisit this
 
 After laying some groundwork
@@ -297,8 +262,8 @@
 streamline the implementation of named parameter interfaces,
 improve their participation in overload resolution, and optimize
 their runtime efficiency. -->
-<div class="section">
-<h3><a class="toc-backref" href="#id27" id="headers-and-namespaces" name="headers-and-namespaces">2.1.1&nbsp;&nbsp;&nbsp;Headers And Namespaces</a></h3>
+<div class="section" id="headers-and-namespaces">
+<h3>2.1.1&nbsp;&nbsp;&nbsp;Headers And Namespaces</h3>
 <p>Most components of the Parameter library are declared in a
 header named for the component. For example,</p>
 <pre class="literal-block">
@@ -323,8 +288,8 @@
 <p>has been declared: we'll write <tt class="docutils literal"><span class="pre">parameter::xxx</span></tt> instead of
 <tt class="docutils literal"><span class="pre">boost::parameter::xxx</span></tt>.</p>
 </div>
-<div class="section">
-<h3><a class="toc-backref" href="#id28" id="the-abstract-interface-to-dfs" name="the-abstract-interface-to-dfs">2.1.2&nbsp;&nbsp;&nbsp;The Abstract Interface to <tt class="docutils literal"><span class="pre">depth_first_search</span></tt></a></h3>
+<div class="section" id="the-abstract-interface-to-dfs">
+<h3>2.1.2&nbsp;&nbsp;&nbsp;The Abstract Interface to <tt class="docutils literal"><span class="pre">depth_first_search</span></tt></h3>
 <p>The Graph library's <tt class="docutils literal"><span class="pre">depth_first_search</span></tt> algorithm is a generic function accepting
 from one to four arguments by reference. If all arguments were
 required, its signature might be as follows:</p>
@@ -343,7 +308,7 @@
 <p>However, most of the parameters have a useful default value, as
 shown in the table below.</p>
 <table border="1" class="docutils" id="default-expressions">
-<span id="parameter-table"></span><caption><a id="default-expressions" name="default-expressions"><span id="parameter-table"></span><tt class="docutils literal"><span class="pre">depth_first_search</span></tt> Parameters</a></caption>
+<span id="parameter-table"></span><caption><tt class="docutils literal"><span class="pre">depth_first_search</span></tt> Parameters</caption>
 <colgroup>
 <col width="17%" />
 <col width="11%" />
@@ -360,13 +325,13 @@
 <tbody valign="top">
 <tr><td><tt class="docutils literal"><span class="pre">graph</span></tt></td>
 <td>in</td>
-<td>Model of <a class="reference" href="../../../graph/doc/IncidenceGraph.html"><span class="concept">Incidence Graph</span></a> and
-<a class="reference" href="../../../graph/doc/VertexListGraph.html"><span class="concept">Vertex List Graph</span></a></td>
+<td>Model of <a class="reference external" href="../../../graph/doc/IncidenceGraph.html"><span class="concept">Incidence Graph</span></a> and
+<a class="reference external" href="../../../graph/doc/VertexListGraph.html"><span class="concept">Vertex List Graph</span></a></td>
 <td>none - this argument is required.</td>
 </tr>
 <tr><td><tt class="docutils literal"><span class="pre">visitor</span></tt></td>
 <td>in</td>
-<td>Model of <a class="reference" href="../../../graph/doc/DFSVisitor.html"><span class="concept">DFS Visitor</span></a></td>
+<td>Model of <a class="reference external" href="../../../graph/doc/DFSVisitor.html"><span class="concept">DFS Visitor</span></a></td>
 <td><tt class="docutils literal"><span class="pre">boost::dfs_visitor&lt;&gt;()</span></tt></td>
 </tr>
 <tr><td><tt class="docutils literal"><span class="pre">root_vertex</span></tt></td>
@@ -377,7 +342,7 @@
 </tr>
 <tr><td><tt class="docutils literal"><span class="pre">index_map</span></tt></td>
 <td>in</td>
-<td>Model of <a class="reference" href="../../../property_map/ReadablePropertyMap.html"><span class="concept">Readable Property Map</span></a>
+<td>Model of <a class="reference external" href="../../../property_map/ReadablePropertyMap.html"><span class="concept">Readable Property Map</span></a>
 with key type := <tt class="docutils literal"><span class="pre">graph</span></tt>'s
 vertex descriptor and value type
 an integer type.</td>
@@ -385,7 +350,7 @@
 </tr>
 <tr><td><tt class="docutils literal"><span class="pre">color_map</span></tt></td>
 <td>in/out</td>
-<td>Model of <a class="reference" href="../../../property_map/ReadWritePropertyMap.html"><span class="concept">Read/Write Property Map</span></a>
+<td>Model of <a class="reference external" href="../../../property_map/ReadWritePropertyMap.html"><span class="concept">Read/Write Property Map</span></a>
 with key type := <tt class="docutils literal"><span class="pre">graph</span></tt>'s
 vertex descriptor type.</td>
 <td>an <tt class="docutils literal"><span class="pre">iterator_property_map</span></tt>
@@ -400,8 +365,8 @@
 columns above. For the purposes of this exercise, you don't need
 to understand them in detail.</p>
 </div>
-<div class="section">
-<h3><a class="toc-backref" href="#id29" id="defining-the-keywords" name="defining-the-keywords">2.1.3&nbsp;&nbsp;&nbsp;Defining the Keywords</a></h3>
+<div class="section" id="defining-the-keywords">
+<h3>2.1.3&nbsp;&nbsp;&nbsp;Defining the Keywords</h3>
 <p>The point of this exercise is to make it possible to call
 <tt class="docutils literal"><span class="pre">depth_first_search</span></tt> with named arguments, leaving out any
 arguments for which the default is appropriate:</p>
@@ -457,12 +422,12 @@
 <p>It defines a <em>keyword tag type</em> named <tt class="docutils literal"><span class="pre">tag::graph</span></tt> and a <em>keyword
 object</em> reference named <tt class="docutils literal"><span class="pre">_graph</span></tt>.</p>
 <p>This “fancy dance” involving an unnamed namespace and references
-is all done to avoid violating the One Definition Rule (ODR)<a class="footnote-reference" href="#odr" id="id4" name="id4"><sup>2</sup></a> when the named parameter interface is used by function
+is all done to avoid violating the One Definition Rule (ODR)<a class="footnote-reference" href="#odr" id="id5"><sup>2</sup></a> when the named parameter interface is used by function
 templates that are instantiated in multiple translation
-units (MSVC6.x users see <a class="reference" href="#compiler-can-t-see-references-in-unnamed-namespace">this note</a>).</p>
+units (MSVC6.x users see <a class="reference internal" href="#compiler-can-t-see-references-in-unnamed-namespace">this note</a>).</p>
 </div>
-<div class="section">
-<h3><a class="toc-backref" href="#id30" id="writing-the-function" name="writing-the-function">2.1.4&nbsp;&nbsp;&nbsp;Writing the Function</a></h3>
+<div class="section" id="writing-the-function">
+<h3>2.1.4&nbsp;&nbsp;&nbsp;Writing the Function</h3>
 <p>Now that we have our keywords defined, the function template
 definition follows a simple pattern using the
 <tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUNCTION</span></tt> macro:</p>
@@ -523,16 +488,16 @@
 <li>The function signature.</li>
 </ol>
 </div>
-<div class="section">
-<h3><a class="toc-backref" href="#id31" id="function-signatures" name="function-signatures">2.1.5&nbsp;&nbsp;&nbsp;Function Signatures</a></h3>
+<div class="section" id="function-signatures">
+<h3>2.1.5&nbsp;&nbsp;&nbsp;Function Signatures</h3>
 <p>Function signatures are described as one or two adjacent
-parenthesized terms (a <a class="reference" href="../../../preprocessor/index.html">Boost.Preprocessor</a> <a class="reference" href="
http://boost-consulting.com/mplbook/preprocessor.html#sequences">sequence</a>) describing
+parenthesized terms (a <a class="reference external" href="../../../preprocessor/index.html">Boost.Preprocessor</a> <a class="reference external" href="http://boost-consulting.com/mplbook/preprocessor.html#sequences">sequence</a>) describing
 the function's parameters in the order in which they'd be expected
 if passed positionally. Any required parameters must come first,
 but the <tt class="docutils literal"><span class="pre">(required</span> <span class="pre">…</span> <span class="pre">)</span></tt> clause can be omitted when all the
 parameters are optional.</p>
-<div class="section">
-<h4><a class="toc-backref" href="#id32" id="required-parameters" name="required-parameters">2.1.5.1&nbsp;&nbsp;&nbsp;Required Parameters</a></h4>
+<div class="section" id="required-parameters">
+<h4>2.1.5.1&nbsp;&nbsp;&nbsp;Required Parameters</h4>
 <div class="compound">
 <p class="compound-first">Required parameters are given first—nested in a <tt class="docutils literal"><span class="pre">(required</span> <span class="pre">…</span> <span class="pre">)</span></tt>
 clause—as a series of two-element tuples describing each parameter
@@ -559,16 +524,15 @@
 <!-- @example.append(') {}') -->
 <!-- @test('compile') -->
 </div>
-<div class="section">
-<h4><a class="toc-backref" href="#id33" id="optional-parameters" name="optional-parameters">2.1.5.2&nbsp;&nbsp;&nbsp;Optional Parameters</a></h4>
+<div class="section" id="optional-parameters">
+<h4>2.1.5.2&nbsp;&nbsp;&nbsp;Optional Parameters</h4>
 <div class="compound">
 <p class="compound-first">Optional parameters—nested in an <tt class="docutils literal"><span class="pre">(optional</span> <span class="pre">…</span> <span class="pre">)</span></tt> clause—are given
 as a series of adjacent <em>three</em>-element tuples describing the
 parameter name, any requirements on the argument type, <em>and</em> and an
 expression representing the parameter's default value:</p>
 <pre class="compound-last literal-block">
-(optional
- <strong>(visitor, *, boost::dfs_visitor&lt;&gt;())
+(optional <strong> (visitor, *, boost::dfs_visitor&lt;&gt;())
     (root_vertex, *, *vertices(graph).first)
     (index_map, *, get(boost::vertex_index,graph))
     (in_out(color_map), *,
@@ -600,8 +564,8 @@
 <!-- @example.append(') {}') -->
 <!-- @test('compile') -->
 </div>
-<div class="section">
-<h4><a class="toc-backref" href="#id34" id="handling-out-parameters" name="handling-out-parameters">2.1.5.3&nbsp;&nbsp;&nbsp;Handling “Out” Parameters</a></h4>
+<div class="section" id="handling-out-parameters">
+<h4>2.1.5.3&nbsp;&nbsp;&nbsp;Handling “Out” Parameters</h4>
 <div class="compound">
 <p class="compound-first">Within the function body, a parameter name such as <tt class="docutils literal"><span class="pre">visitor</span></tt> is
 a <em>C++ reference</em>, bound either to an actual argument passed by
@@ -613,9 +577,9 @@
 its name in <tt class="docutils literal"><span class="pre">in_out(…)</span></tt>:</p>
 <pre class="compound-last literal-block">
 (optional
- (visitor, *, boost::dfs_visitor&lt;&gt;())
- (root_vertex, *, *vertices(graph).first)
- (index_map, *, get(boost::vertex_index,graph))
+ (visitor, *, boost::dfs_visitor&lt;&gt;())
+ (root_vertex, *, *vertices(graph).first)
+ (index_map, *, get(boost::vertex_index,graph))
     (<strong>in_out(color_map)</strong>, *,
       default_color_map(num_vertices(graph), index_map) )
 )
@@ -650,8 +614,8 @@
 difference between <tt class="docutils literal"><span class="pre">out</span></tt> and <tt class="docutils literal"><span class="pre">in_out</span></tt>; the library provides
 both so you can make your interfaces more self-documenting.</p>
 </div>
-<div class="section">
-<h4><a class="toc-backref" href="#id35" id="positional-arguments" name="positional-arguments">2.1.5.4&nbsp;&nbsp;&nbsp;Positional Arguments</a></h4>
+<div class="section" id="positional-arguments">
+<h4>2.1.5.4&nbsp;&nbsp;&nbsp;Positional Arguments</h4>
 <p>When arguments are passed positionally (without the use of
 keywords), they will be mapped onto parameters in the order the
 parameters are given in the signature, so for example in this
@@ -663,8 +627,8 @@
 <p><tt class="docutils literal"><span class="pre">x</span></tt> will always be interpreted as a graph and <tt class="docutils literal"><span class="pre">y</span></tt> will always
 be interpreted as a visitor.</p>
 </div>
-<div class="section">
-<h4><a class="toc-backref" href="#id36" id="default-expression-evaluation" name="default-expression-evaluation">2.1.5.5&nbsp;&nbsp;&nbsp;Default Expression Evaluation</a></h4>
+<div class="section" id="default-expression-evaluation">
+<h4>2.1.5.5&nbsp;&nbsp;&nbsp;Default Expression Evaluation</h4>
 <div class="compound">
 <p class="compound-first">Note that in our example, the value of the graph parameter is
 used in the default expressions for <tt class="docutils literal"><span class="pre">root_vertex</span></tt>,
@@ -737,8 +701,8 @@
 ''') -->
 <!-- @test('compile') -->
 </div>
-<div class="section">
-<h4><a class="toc-backref" href="#id37" id="signature-matching-and-overloading" name="signature-matching-and-overloading">2.1.5.6&nbsp;&nbsp;&nbsp;Signature Matching and Overloading</a></h4>
+<div class="section" id="signature-matching-and-overloading">
+<h4>2.1.5.6&nbsp;&nbsp;&nbsp;Signature Matching and Overloading</h4>
 <p>In fact, the function signature is so general that any call to
 <tt class="docutils literal"><span class="pre">depth_first_search</span></tt> with fewer than five arguments will match
 our function, provided we pass <em>something</em> for the required
@@ -760,13 +724,13 @@
 to names generated by <tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUNCTION</span></tt> such as
 <tt class="docutils literal"><span class="pre">graphs::detail::depth_first_search_with_named_params</span></tt> (or
 worse—think of the kinds of errors you get from your STL
-implementation when you make a mistake).<a class="footnote-reference" href="#conceptcpp" id="id6" name="id6"><sup>4</sup></a></li>
+implementation when you make a mistake).<a class="footnote-reference" href="#conceptcpp" id="id7"><sup>4</sup></a></li>
 <li>The problems with exposing such permissive function template
 signatures have been the subject of much discussion, especially
-in the presence of <a class="reference" href="http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/lwg-defects.html#225">unqualified calls</a>. If all we want is to
+in the presence of <a class="reference external" href="http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/lwg-defects.html#225">unqualified calls</a>. If all we want is to
 avoid unintentional argument-dependent lookup (ADL), we can
 isolate <tt class="docutils literal"><span class="pre">depth_first_search</span></tt> in a namespace containing no
-types<a class="footnote-reference" href="#using" id="id7" name="id7"><sup>6</sup></a>, but suppose we <em>want</em> it to found via ADL?</li>
+types<a class="footnote-reference" href="#using" id="id8"><sup>6</sup></a>, but suppose we <em>want</em> it to found via ADL?</li>
 </ol>
 <p>It's usually a good idea to prevent functions from being considered
 for overload resolution when the passed argument types aren't
@@ -775,7 +739,7 @@
 depth first search that doesn't take a graph to operate on.
 Suppose, instead, that we found a different depth first search
 algorithm that could work on graphs that don't model
-<a class="reference" href="../../../graph/doc/IncidenceGraph.html"><span class="concept">Incidence Graph</span></a>? If we just added a simple overload,
+<a class="reference external" href="../../../graph/doc/IncidenceGraph.html"><span class="concept">Incidence Graph</span></a>? If we just added a simple overload,
 it would be ambiguous:</p>
 <pre class="literal-block">
 // new overload
@@ -791,11 +755,11 @@
 depth_first_search(boost::adjacency_list&lt;&gt;(), 2, &quot;hello&quot;);
 </pre>
 <!-- @ignore() -->
-<div class="section">
-<h5><a class="toc-backref" href="#id38" id="adding-type-requirements" name="adding-type-requirements">2.1.5.6.1&nbsp;&nbsp;&nbsp;Adding Type Requirements</a></h5>
+<div class="section" id="adding-type-requirements">
+<h5>2.1.5.6.1&nbsp;&nbsp;&nbsp;Adding Type Requirements</h5>
 <p>We really don't want the compiler to consider the original version
 of <tt class="docutils literal"><span class="pre">depth_first_search</span></tt> because the <tt class="docutils literal"><span class="pre">root_vertex</span></tt> argument,
-<tt class="docutils literal"><span class="pre">&quot;hello&quot;</span></tt>, doesn't meet the <a class="reference" href="#parameter-table">requirement</a> that it match the
+<tt class="docutils literal"><span class="pre">&quot;hello&quot;</span></tt>, doesn't meet the <a class="reference internal" href="#parameter-table">requirement</a> that it match the
 <tt class="docutils literal"><span class="pre">graph</span></tt> parameter's vertex descriptor type. Instead, this call
 should just invoke our new overload. To take the original
 <tt class="docutils literal"><span class="pre">depth_first_search</span></tt> overload out of contention, we need to tell
@@ -818,11 +782,11 @@
 general, to access the type of any parameter <em>foo</em>, write <em>foo</em><tt class="docutils literal"><span class="pre">_type</span></tt>.</p>
 </div>
 </div>
-<div class="section">
-<h5><a class="toc-backref" href="#id39" id="predicate-requirements" name="predicate-requirements">2.1.5.6.2&nbsp;&nbsp;&nbsp;Predicate Requirements</a></h5>
+<div class="section" id="predicate-requirements">
+<h5>2.1.5.6.2&nbsp;&nbsp;&nbsp;Predicate Requirements</h5>
 <p>The requirements on other arguments are a bit more interesting than
 those on <tt class="docutils literal"><span class="pre">root_vertex</span></tt>; they can't be described in terms of simple
-type matching. Instead, they must be described in terms of <a class="reference" href="../../../mpl/doc/refmanual/metafunction.html">MPL
+type matching. Instead, they must be described in terms of <a class="reference external" href="../../../mpl/doc/refmanual/metafunction.html">MPL
 Metafunctions</a>. There's no space to give a complete description
 of metafunctions or of graph library details here, but we'll show
 you the complete signature with maximal checking, just to give you
@@ -918,14 +882,14 @@
 is usally worth the effort to do so: your code will be more
 self-documenting and will often provide a better user experience.
 You'll also have an easier transition to an upcoming C++ standard
-with <a class="reference" href="http://www.generic-programming.org/software/ConceptGCC/">language support for concepts</a>.</p>
+with <a class="reference external" href="http://www.generic-programming.org/software/ConceptGCC/">language support for concepts</a>.</p>
 </div>
 </div>
-<div class="section">
-<h4><a class="toc-backref" href="#id40" id="deduced-parameters" name="deduced-parameters">2.1.5.7&nbsp;&nbsp;&nbsp;Deduced Parameters</a></h4>
+<div class="section" id="deduced-parameters">
+<h4>2.1.5.7&nbsp;&nbsp;&nbsp;Deduced Parameters</h4>
 <p>To illustrate deduced parameter support we'll have to leave behind
 our example from the Graph library. Instead, consider the example
-of the <a class="reference" href="../../../python/doc/v2/def.html"><tt class="docutils literal"><span class="pre">def</span></tt></a> function from <a class="reference" href="../../../python/doc/index.html">Boost.Python</a>. Its signature is
+of the <a class="reference external" href="../../../python/doc/v2/def.html"><tt class="docutils literal"><span class="pre">def</span></tt></a> function from <a class="reference external" href="../../../python/doc/index.html">Boost.Python</a>. Its signature is
 roughly as follows:</p>
 <pre class="literal-block">
 template &lt;
@@ -967,14 +931,14 @@
         (docstring, (char const*), &quot;&quot;)
 
         (keywords
- , *(is_keyword_expression&lt;mpl::_&gt;) // see<a class="footnote-reference" href="#is-keyword-expression" id="id12" name="id12"><sup>5</sup></a>
+ , *(is_keyword_expression&lt;mpl::_&gt;) // see<a class="footnote-reference" href="#is-keyword-expression" id="id13"><sup>5</sup></a>
            , no_keywords())
 
         (policies
            , *(mpl::not_&lt;
                  mpl::or_&lt;
                      boost::is_convertible&lt;mpl::_, char const*&gt;
- , is_keyword_expression&lt;mpl::_&gt; // see<a class="footnote-reference" href="#is-keyword-expression" id="id13" name="id13"><sup>5</sup></a>
+ , is_keyword_expression&lt;mpl::_&gt; // see<a class="footnote-reference" href="#is-keyword-expression" id="id14"><sup>5</sup></a>
                  &gt;
              &gt;)
            , default_call_policies()
@@ -1023,9 +987,9 @@
 ''') -->
 <div class="admonition-syntax-note admonition">
 <p class="first admonition-title">Syntax Note</p>
-<p class="last">A <tt class="docutils literal"><span class="pre">(deduced&nbsp;…)</span></tt> clause always contains a&nbsp;``(required&nbsp;…)``
-and/or an&nbsp;``(optional&nbsp;…)`` subclause, and must follow any
-<tt class="docutils literal"><span class="pre">(required&nbsp;…)</span></tt> or&nbsp;``(optional&nbsp;…)`` clauses indicating
+<p class="last">A <tt class="docutils literal"><span class="pre">(deduced</span> <span class="pre">…)</span></tt> clause always contains a <tt class="docutils literal"><span class="pre">(required</span> <span class="pre">…)</span></tt>
+and/or an <tt class="docutils literal"><span class="pre">(optional</span> <span class="pre">…)</span></tt> subclause, and must follow any
+<tt class="docutils literal"><span class="pre">(required</span> <span class="pre">…)</span></tt> or <tt class="docutils literal"><span class="pre">(optional</span> <span class="pre">…)</span></tt> clauses indicating
 nondeduced parameters at the outer level.</p>
 </div>
 <p>With the declaration above, the following two calls are equivalent:</p>
@@ -1049,8 +1013,8 @@
 </div>
 </div>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id41" id="parameter-enabled-member-functions" name="parameter-enabled-member-functions">2.2&nbsp;&nbsp;&nbsp;Parameter-Enabled Member Functions</a></h2>
+<div class="section" id="parameter-enabled-member-functions">
+<h2><a class="toc-backref" href="#id28">2.2&nbsp;&nbsp;&nbsp;Parameter-Enabled Member Functions</a></h2>
 <p>The <tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MEMBER_FUNCTION</span></tt> and
 <tt class="docutils literal"><span class="pre">BOOST_PARAMETER_CONST_MEMBER_FUNCTION</span></tt> macros accept exactly the
 same arguments as <tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUNCTION</span></tt>, but are designed to
@@ -1094,18 +1058,18 @@
 BOOST_PARAMETER_NAME(arg2)''') -->
 <!-- @test('compile') -->
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id42" id="parameter-enabled-constructors" name="parameter-enabled-constructors">2.3&nbsp;&nbsp;&nbsp;Parameter-Enabled Constructors</a></h2>
+<div class="section" id="parameter-enabled-constructors">
+<h2><a class="toc-backref" href="#id29">2.3&nbsp;&nbsp;&nbsp;Parameter-Enabled Constructors</a></h2>
 <p>The lack of a “delegating constructor”
 feature in C++
-(<a class="reference" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1986.pdf">http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1986.pdf>)
+(<a class="reference external" href="
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1986.pdf">http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1986.pdf>)
 limits somewhat the quality of interface this library can provide
 for defining parameter-enabled constructors. The usual workaround
 for a lack of constructor delegation applies: one must factor the
 common logic into a base class.</p>
 <p>Let's build a parameter-enabled constructor that simply prints its
 arguments. The first step is to write a base class whose
-constructor accepts a single argument known as an <a class="reference" href="reference.html#argumentpack"><span class="concept">ArgumentPack</span></a>:
+constructor accepts a single argument known as an <a class="reference external" href="reference.html#argumentpack"><span class="concept">ArgumentPack</span></a>:
 a bundle of references to the actual arguments, tagged with their
 keywords. The values of the actual arguments are extracted from
 the <span class="concept">ArgumentPack</span> by <em>indexing</em> it with keyword objects:</p>
@@ -1152,12 +1116,12 @@
 </pre>
 <!-- @example.wrap('int main() {', '}') -->
 <!-- @test('run', howmany='all') -->
-<p>For more on <span class="concept">ArgumentPack</span> manipulation, see the <a class="reference" href="#advanced-topics">Advanced Topics</a>
+<p>For more on <span class="concept">ArgumentPack</span> manipulation, see the <a class="reference internal" href="#advanced-topics">Advanced Topics</a>
 section.</p>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id43" id="parameter-enabled-class-templates" name="parameter-enabled-class-templates">2.4&nbsp;&nbsp;&nbsp;Parameter-Enabled Class Templates</a></h2>
-<p>In this section we'll use Boost.Parameter to build <a class="reference" href="../../../python/doc/index.html">Boost.Python</a>'s <a class="reference" href="
http://www.boost.org/libs/python/doc/v2/class.html#class_-spec">class_</a> template, whose “signature” is:</p>
+<div class="section" id="parameter-enabled-class-templates">
+<h2><a class="toc-backref" href="#id30">2.4&nbsp;&nbsp;&nbsp;Parameter-Enabled Class Templates</a></h2>
+<p>In this section we'll use Boost.Parameter to build <a class="reference external" href="../../../python/doc/index.html">Boost.Python</a>'s <a class="reference external" href="http://www.boost.org/libs/python/doc/v2/class.html#class_-spec">class_</a> template, whose “signature” is:</p>
 <pre class="literal-block">
 template class&lt;
     ValueType, BaseList = bases&lt;&gt;
@@ -1167,8 +1131,8 @@
 </pre>
 <!-- @ignore() -->
 <p>Only the first argument, <tt class="docutils literal"><span class="pre">ValueType</span></tt>, is required.</p>
-<div class="section">
-<h3><a class="toc-backref" href="#id44" id="named-template-parameters" name="named-template-parameters">2.4.1&nbsp;&nbsp;&nbsp;Named Template Parameters</a></h3>
+<div class="section" id="named-template-parameters">
+<h3>2.4.1&nbsp;&nbsp;&nbsp;Named Template Parameters</h3>
 <p>First, we'll build an interface that allows users to pass arguments
 positionally or by name:</p>
 <pre class="literal-block">
@@ -1184,8 +1148,8 @@
 &gt; …;
 </pre>
 <!-- @ignore() -->
-<div class="section">
-<h4><a class="toc-backref" href="#id45" id="template-keywords" name="template-keywords">2.4.1.1&nbsp;&nbsp;&nbsp;Template Keywords</a></h4>
+<div class="section" id="template-keywords">
+<h4>2.4.1.1&nbsp;&nbsp;&nbsp;Template Keywords</h4>
 <p>The first step is to define keywords for each template parameter:</p>
 <pre class="literal-block">
 namespace boost { namespace python {
@@ -1217,8 +1181,8 @@
 <p>It defines a keyword tag type named <tt class="docutils literal"><span class="pre">tag::class_type</span></tt> and a
 <em>parameter passing template</em> named <tt class="docutils literal"><span class="pre">class_type</span></tt>.</p>
 </div>
-<div class="section">
-<h4><a class="toc-backref" href="#id46" id="class-template-skeleton" name="class-template-skeleton">2.4.1.2&nbsp;&nbsp;&nbsp;Class Template Skeleton</a></h4>
+<div class="section" id="class-template-skeleton">
+<h4>2.4.1.2&nbsp;&nbsp;&nbsp;Class Template Skeleton</h4>
 <p>The next step is to define the skeleton of our class template,
 which has three optional parameters. Because the user may pass
 arguments in any order, we don't know the actual identities of
@@ -1246,11 +1210,11 @@
 <!-- @example.replace_emphasis('') -->
 <!-- @test('compile') -->
 </div>
-<div class="section">
-<h4><a class="toc-backref" href="#id47" id="class-template-signatures" name="class-template-signatures">2.4.1.3&nbsp;&nbsp;&nbsp;Class Template Signatures</a></h4>
-<p>Next, we need to build a type, known as a <a class="reference" href="reference.html#parameterspec"><span class="concept">ParameterSpec</span></a>,
+<div class="section" id="class-template-signatures">
+<h4>2.4.1.3&nbsp;&nbsp;&nbsp;Class Template Signatures</h4>
+<p>Next, we need to build a type, known as a <a class="reference external" href="reference.html#parameterspec"><span class="concept">ParameterSpec</span></a>,
 describing the “signature” of <tt class="docutils literal"><span class="pre">boost::python::class_</span></tt>. A
-<a class="reference" href="reference.html#parameterspec"><span class="concept">ParameterSpec</span></a> enumerates the required and optional parameters in
+<a class="reference external" href="reference.html#parameterspec"><span class="concept">ParameterSpec</span></a> enumerates the required and optional parameters in
 their positional order, along with any type requirements (note that
 it does <em>not</em> specify defaults -- those will be dealt with
 separately):</p>
@@ -1289,10 +1253,10 @@
 
 }}''') -->
 </div>
-<div class="section">
-<h4><a class="toc-backref" href="#id48" id="argument-packs-and-parameter-extraction" name="argument-packs-and-parameter-extraction"><span id="binding-intro"></span>2.4.1.4&nbsp;&nbsp;&nbsp;Argument Packs and Parameter Extraction</a></h4>
+<div class="section" id="argument-packs-and-parameter-extraction">
+<span id="binding-intro"></span><h4>2.4.1.4&nbsp;&nbsp;&nbsp;Argument Packs and Parameter Extraction</h4>
 <p>Next, within the body of <tt class="docutils literal"><span class="pre">class_</span></tt> , we use the <span class="concept">ParameterSpec</span>'s nested <tt class="docutils literal"><span class="pre">::bind&lt;</span> <span class="pre">…</span> <span class="pre">&gt;</span></tt> template to bundle the actual arguments
-into an <a class="reference" href="reference.html#argumentpack"><span class="concept">ArgumentPack</span></a> type, and then use the library's <tt class="docutils literal"><span class="pre">binding&lt;</span>
+into an <a class="reference external" href="reference.html#argumentpack"><span class="concept">ArgumentPack</span></a> type, and then use the library's <tt class="docutils literal"><span class="pre">binding&lt;</span>
 <span class="pre">…</span> <span class="pre">&gt;</span></tt> metafunction to extract “logical parameters”. Note that
 defaults are specified by supplying an optional third argument to
 <tt class="docutils literal"><span class="pre">binding&lt;</span> <span class="pre">…</span> <span class="pre">&gt;</span></tt>:</p>
@@ -1330,8 +1294,8 @@
 </pre>
 </div>
 </div>
-<div class="section">
-<h3><a class="toc-backref" href="#id49" id="exercising-the-code-so-far" name="exercising-the-code-so-far">2.4.2&nbsp;&nbsp;&nbsp;Exercising the Code So Far</a></h3>
+<div class="section" id="exercising-the-code-so-far">
+<h3>2.4.2&nbsp;&nbsp;&nbsp;Exercising the Code So Far</h3>
 <div class="compound">
 <p class="compound-first">Revisiting our original examples,</p>
 <pre class="compound-middle literal-block">
@@ -1371,12 +1335,12 @@
 </div>
 <!-- @test('compile', howmany='all') -->
 </div>
-<div class="section">
-<h3><a class="toc-backref" href="#id50" id="deduced-template-parameters" name="deduced-template-parameters">2.4.3&nbsp;&nbsp;&nbsp;Deduced Template Parameters</a></h3>
+<div class="section" id="deduced-template-parameters">
+<h3>2.4.3&nbsp;&nbsp;&nbsp;Deduced Template Parameters</h3>
 <p>To apply a deduced parameter interface here, we need only make the
 type requirements a bit tighter so the <tt class="docutils literal"><span class="pre">held_type</span></tt> and
 <tt class="docutils literal"><span class="pre">copyable</span></tt> parameters can be crisply distinguished from the
-others. <a class="reference" href="../../../python/doc/index.html">Boost.Python</a> does this by requiring that <tt class="docutils literal"><span class="pre">base_list</span></tt> be
+others. <a class="reference external" href="../../../python/doc/index.html">Boost.Python</a> does this by requiring that <tt class="docutils literal"><span class="pre">base_list</span></tt> be
 a specialization of its <tt class="docutils literal"><span class="pre">bases&lt;</span> <span class="pre">…</span> <span class="pre">&gt;</span></tt> template (as opposed to
 being any old MPL sequence) and by requiring that <tt class="docutils literal"><span class="pre">copyable</span></tt>, if
 explicitly supplied, be <tt class="docutils literal"><span class="pre">boost::noncopyable</span></tt>. One easy way of
@@ -1498,12 +1462,12 @@
 </div>
 </div>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id51" id="advanced-topics" name="advanced-topics">3&nbsp;&nbsp;&nbsp;Advanced Topics</a></h1>
+<div class="section" id="advanced-topics">
+<h1><a class="toc-backref" href="#id31">3&nbsp;&nbsp;&nbsp;Advanced Topics</a></h1>
 <p>At this point, you should have a good grasp of the basics. In this
 section we'll cover some more esoteric uses of the library.</p>
-<div class="section">
-<h2><a class="toc-backref" href="#id52" id="fine-grained-name-control" name="fine-grained-name-control">3.1&nbsp;&nbsp;&nbsp;Fine-Grained Name Control</a></h2>
+<div class="section" id="fine-grained-name-control">
+<h2><a class="toc-backref" href="#id32">3.1&nbsp;&nbsp;&nbsp;Fine-Grained Name Control</a></h2>
 <p>If you don't like the leading-underscore naming convention used
 to refer to keyword objects, or you need the name <tt class="docutils literal"><span class="pre">tag</span></tt> for
 something other than the keyword type namespace, there's another
@@ -1531,17 +1495,17 @@
 {}''') -->
 <!-- @test('run') -->
 <p>Before you use this more verbose form, however, please read the
-section on <a class="reference" href="#keyword-naming">best practices for keyword object naming</a>.</p>
+section on <a class="reference internal" href="#keyword-naming">best practices for keyword object naming</a>.</p>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id53" id="more-argumentpacks" name="more-argumentpacks">3.2&nbsp;&nbsp;&nbsp;More <span class="concept">ArgumentPack</span>s</a></h2>
+<div class="section" id="more-argumentpacks">
+<h2><a class="toc-backref" href="#id33">3.2&nbsp;&nbsp;&nbsp;More <span class="concept">ArgumentPack</span>s</a></h2>
 <p>We've already seen <span class="concept">ArgumentPack</span>s when we looked at
-<a class="reference" href="#parameter-enabled-constructors">parameter-enabled constructors</a> and <a class="reference" href="#binding-intro">class templates</a>. As you
+<a class="reference internal" href="#parameter-enabled-constructors">parameter-enabled constructors</a> and <a class="reference internal" href="#binding-intro">class templates</a>. As you
 might have guessed, <span class="concept">ArgumentPack</span>s actually lie at the heart of
 everything this library does; in this section we'll examine ways to
 build and manipulate them more effectively.</p>
-<div class="section">
-<h3><a class="toc-backref" href="#id54" id="building-argumentpacks" name="building-argumentpacks">3.2.1&nbsp;&nbsp;&nbsp;Building <span class="concept">ArgumentPack</span>s</a></h3>
+<div class="section" id="building-argumentpacks">
+<h3>3.2.1&nbsp;&nbsp;&nbsp;Building <span class="concept">ArgumentPack</span>s</h3>
 <p>The simplest <span class="concept">ArgumentPack</span> is the result of assigning into a
 keyword object:</p>
 <pre class="literal-block">
@@ -1575,7 +1539,7 @@
 int y = print_name_and_index((_index = 3, _name = &quot;jones&quot;));
 </pre>
 <p>To build an <span class="concept">ArgumentPack</span> with positional arguments, we can use a
-<a class="reference" href="reference.html#parameterspec"><span class="concept">ParameterSpec</span></a>. As introduced described in the section on <a class="reference" href="#class-template-signatures">Class
+<a class="reference external" href="reference.html#parameterspec"><span class="concept">ParameterSpec</span></a>. As introduced described in the section on <a class="reference internal" href="#class-template-signatures">Class
 Template Signatures</a>, a <span class="concept">ParameterSpec</span> describes the positional
 order of parameters and any associated type requirements. Just as
 we can build an <span class="concept">ArgumentPack</span> <em>type</em> with its nested <tt class="docutils literal"><span class="pre">::bind&lt;</span> <span class="pre">…</span>
@@ -1606,11 +1570,11 @@
 int main()
 {}''') -->
 <!-- @test('run', howmany='all') -->
-<p>Note that because of the <a class="reference" href="http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1385.htm">forwarding problem</a>, <tt class="docutils literal"><span class="pre">parameter::parameters::operator()</span></tt>
+<p>Note that because of the <a class="reference external" href="http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1385.htm">forwarding problem</a>, <tt class="docutils literal"><span class="pre">parameter::parameters::operator()</span></tt>
 can't accept non-const rvalues.</p>
 </div>
-<div class="section">
-<h3><a class="toc-backref" href="#id55" id="extracting-parameter-types" name="extracting-parameter-types">3.2.2&nbsp;&nbsp;&nbsp;Extracting Parameter Types</a></h3>
+<div class="section" id="extracting-parameter-types">
+<h3>3.2.2&nbsp;&nbsp;&nbsp;Extracting Parameter Types</h3>
 <p>If we want to know the types of the arguments passed to
 <tt class="docutils literal"><span class="pre">print_name_and_index</span></tt>, we have a couple of options. The
 simplest and least error-prone approach is to forward them to a
@@ -1650,7 +1614,7 @@
 layer of function call. For example, suppose we wanted to return
 twice the value of the <tt class="docutils literal"><span class="pre">index</span></tt> parameter? In that
 case we can use the <tt class="docutils literal"><span class="pre">binding&lt;</span> <span class="pre">…</span> <span class="pre">&gt;</span></tt> metafunction introduced
-<a class="reference" href="#binding-intro">earlier</a>:</p>
+<a class="reference internal" href="#binding-intro">earlier</a>:</p>
 <pre class="literal-block">
 BOOST_PARAMETER_NAME(index)
 
@@ -1675,7 +1639,7 @@
 <p>Note that the <tt class="docutils literal"><span class="pre">remove_reference&lt;</span> <span class="pre">…</span> <span class="pre">&gt;</span></tt> dance is necessary because
 <tt class="docutils literal"><span class="pre">binding&lt;</span> <span class="pre">…</span> <span class="pre">&gt;</span></tt> will return a reference type when the argument
 is bound in the argument pack. If we don't strip the reference we
-end up returning a reference to the temporary created in the <tt class="docutils literal"><span class="pre">2*…</span></tt>
+end up returning a reference to the temporary created in the <tt class="docutils literal"><span class="pre">2</span> <span class="pre">*</span> <span class="pre">…</span></tt>
 expression. A convenient shortcut would be to use the <tt class="docutils literal"><span class="pre">value_type&lt;</span> <span class="pre">…</span> <span class="pre">&gt;</span></tt>
 metafunction:</p>
 <pre class="literal-block">
@@ -1689,6 +1653,7 @@
 <!-- @example.wrap('namespace with_value_type {', '''
 int six = twice_index(_index = 3);
 }''') -->
+<!-- TODO: binding<> returns a reference. We should use value_type<> here. -->
 <!-- @example.append('''
 int main()
 {
@@ -1697,8 +1662,8 @@
 }''') -->
 <!-- @test('run', howmany='all') -->
 </div>
-<div class="section">
-<h3><a class="toc-backref" href="#id56" id="lazy-default-computation" name="lazy-default-computation">3.2.3&nbsp;&nbsp;&nbsp;Lazy Default Computation</a></h3>
+<div class="section" id="lazy-default-computation">
+<h3>3.2.3&nbsp;&nbsp;&nbsp;Lazy Default Computation</h3>
 <p>When a default value is expensive to compute, it would be
 preferable to avoid it until we're sure it's absolutely necessary.
 <tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUNCTION</span></tt> takes care of that problem for us, but
@@ -1796,13 +1761,13 @@
 </div>
 </div>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id57" id="best-practices" name="best-practices">4&nbsp;&nbsp;&nbsp;Best Practices</a></h1>
+<div class="section" id="best-practices">
+<h1><a class="toc-backref" href="#id34">4&nbsp;&nbsp;&nbsp;Best Practices</a></h1>
 <p>By now you should have a fairly good idea of how to use the
 Parameter library. This section points out a few more-marginal
 issues that will help you use the library more effectively.</p>
-<div class="section">
-<h2><a class="toc-backref" href="#id58" id="keyword-naming" name="keyword-naming">4.1&nbsp;&nbsp;&nbsp;Keyword Naming</a></h2>
+<div class="section" id="keyword-naming">
+<h2><a class="toc-backref" href="#id35">4.1&nbsp;&nbsp;&nbsp;Keyword Naming</a></h2>
 <p><tt class="docutils literal"><span class="pre">BOOST_PARAMETER_NAME</span></tt> prepends a leading underscore to the names
 of all our keyword objects in order to avoid the following
 usually-silent bug:</p>
@@ -1854,8 +1819,8 @@
 compiler—might become irretrievably ambiguous with those in our
 unnamed namespace.</p>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id59" id="namespaces" name="namespaces">4.2&nbsp;&nbsp;&nbsp;Namespaces</a></h2>
+<div class="section" id="namespaces">
+<h2><a class="toc-backref" href="#id36">4.2&nbsp;&nbsp;&nbsp;Namespaces</a></h2>
 <p>In our examples we've always declared keyword objects in (an
 unnamed namespace within) the same namespace as the
 Boost.Parameter-enabled functions using those keywords:</p>
@@ -1958,8 +1923,8 @@
 <!-- @example.append('int main() {}') -->
 <!-- @test('run', howmany='all') -->
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id60" id="documentation" name="documentation">4.3&nbsp;&nbsp;&nbsp;Documentation</a></h2>
+<div class="section" id="documentation">
+<h2><a class="toc-backref" href="#id37">4.3&nbsp;&nbsp;&nbsp;Documentation</a></h2>
 <p>The interface idioms enabled by Boost.Parameter are completely new
 (to C++), and as such are not served by pre-existing documentation
 conventions.</p>
@@ -1972,22 +1937,22 @@
 </div>
 </div>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id61" id="portability-considerations" name="portability-considerations">5&nbsp;&nbsp;&nbsp;Portability Considerations</a></h1>
-<p>Use the <a class="reference" href="http://www.boost.org/regression/release/user/parameter.html">regression test results</a> for the latest Boost release of
+<div class="section" id="portability-considerations">
+<h1><a class="toc-backref" href="#id38">5&nbsp;&nbsp;&nbsp;Portability Considerations</a></h1>
+<p>Use the <a class="reference external" href="http://www.boost.org/regression/release/user/parameter.html">regression test results</a> for the latest Boost release of
 the Parameter library to see how it fares on your favorite
 compiler. Additionally, you may need to be aware of the following
 issues and workarounds for particular compilers.</p>
-<div class="section">
-<h2><a class="toc-backref" href="#id62" id="no-sfinae-support" name="no-sfinae-support">5.1&nbsp;&nbsp;&nbsp;No SFINAE Support</a></h2>
+<div class="section" id="no-sfinae-support">
+<h2><a class="toc-backref" href="#id39">5.1&nbsp;&nbsp;&nbsp;No SFINAE Support</a></h2>
 <p>Some older compilers don't support SFINAE. If your compiler meets
 that criterion, then Boost headers will <tt class="docutils literal"><span class="pre">#define</span></tt> the preprocessor
 symbol <tt class="docutils literal"><span class="pre">BOOST_NO_SFINAE</span></tt>, and parameter-enabled functions won't be
 removed from the overload set based on their signatures.</p>
 </div>
-<div class="section">
-<h2><a id="no-support-for-result-of" name="no-support-for-result-of">5.2&nbsp;&nbsp;&nbsp;No Support for <a class="reference" href="../../../utility/utility.htm#result_of"><tt class="docutils literal"><span class="pre">result_of</span></tt></a></a></h2>
-<p><a class="reference" href="#lazy-default-computation">Lazy default computation</a> relies on the <tt class="docutils literal"><span class="pre">result_of</span></tt> class
+<div class="section" id="no-support-for-result-of">
+<h2>5.2&nbsp;&nbsp;&nbsp;No Support for <a class="reference external" href="../../../utility/utility.htm#result_of"><tt class="docutils literal"><span class="pre">result_of</span></tt></a></h2>
+<p><a class="reference internal" href="#lazy-default-computation">Lazy default computation</a> relies on the <tt class="docutils literal"><span class="pre">result_of</span></tt> class
 template to compute the types of default arguments given the type
 of the function object that constructs them. On compilers that
 don't support <tt class="docutils literal"><span class="pre">result_of</span></tt>, <tt class="docutils literal"><span class="pre">BOOST_NO_RESULT_OF</span></tt> will be
@@ -2026,8 +1991,8 @@
 
 .. |BOOST_PARAMETER_MATCH| replace:: ``BOOST_PARAMETER_MATCH`` -->
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id64" id="compiler-can-t-see-references-in-unnamed-namespace" name="compiler-can-t-see-references-in-unnamed-namespace">5.3&nbsp;&nbsp;&nbsp;Compiler Can't See References In Unnamed Namespace</a></h2>
+<div class="section" id="compiler-can-t-see-references-in-unnamed-namespace">
+<h2><a class="toc-backref" href="#id41">5.3&nbsp;&nbsp;&nbsp;Compiler Can't See References In Unnamed Namespace</a></h2>
 <p>If you use Microsoft Visual C++ 6.x, you may find that the compiler
 has trouble finding your keyword objects. This problem has been
 observed, but only on this one compiler, and it disappeared as the
@@ -2047,18 +2012,18 @@
 </pre>
 </div>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id65" id="python-binding" name="python-binding">6&nbsp;&nbsp;&nbsp;Python Binding</a></h1>
-<p>Follow <a class="reference" href="python.html">this link</a> for documentation on how to expose
-Boost.Parameter-enabled functions to Python with <a class="reference" href="../../../python/doc/index.html">Boost.Python</a>.</p>
-</div>
-<div class="section">
-<h1><a class="toc-backref" href="#id66" id="reference" name="reference">7&nbsp;&nbsp;&nbsp;Reference</a></h1>
-<p>Follow <a class="reference" href="reference.html">this link</a> to the Boost.Parameter reference
+<div class="section" id="python-binding">
+<h1><a class="toc-backref" href="#id42">6&nbsp;&nbsp;&nbsp;Python Binding</a></h1>
+<p>Follow <a class="reference external" href="python.html">this link</a> for documentation on how to expose
+Boost.Parameter-enabled functions to Python with <a class="reference external" href="../../../python/doc/index.html">Boost.Python</a>.</p>
+</div>
+<div class="section" id="reference">
+<h1><a class="toc-backref" href="#id43">7&nbsp;&nbsp;&nbsp;Reference</a></h1>
+<p>Follow <a class="reference external" href="reference.html">this link</a> to the Boost.Parameter reference
 documentation.</p>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id67" id="glossary" name="glossary">8&nbsp;&nbsp;&nbsp;Glossary</a></h1>
+<div class="section" id="glossary">
+<h1><a class="toc-backref" href="#id44">8&nbsp;&nbsp;&nbsp;Glossary</a></h1>
 <table class="docutils field-list" frame="void" id="arguments" rules="none">
 <col class="field-name" />
 <col class="field-body" />
@@ -2087,8 +2052,8 @@
 </tbody>
 </table>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id68" id="acknowledgements" name="acknowledgements">9&nbsp;&nbsp;&nbsp;Acknowledgements</a></h1>
+<div class="section" id="acknowledgements">
+<h1><a class="toc-backref" href="#id45">9&nbsp;&nbsp;&nbsp;Acknowledgements</a></h1>
 <p>The authors would like to thank all the Boosters who participated
 in the review of this library and its documentation, most
 especially our review manager, Doug Gregor.</p>
@@ -2096,8 +2061,8 @@
 <table class="docutils footnote" frame="void" id="old-interface" rules="none">
 <colgroup><col class="label" /><col /></colgroup>
 <tbody valign="top">
-<tr><td class="label"><a class="fn-backref" href="#id2" name="old-interface">[1]</a></td><td>As of Boost 1.33.0 the Graph library was still
-using an <a class="reference" href="../../../graph/doc/bgl_named_params.html">older named parameter mechanism</a>, but there are
+<tr><td class="label"><a class="fn-backref" href="#id3">[1]</a></td><td>As of Boost 1.33.0 the Graph library was still
+using an <a class="reference external" href="../../../graph/doc/bgl_named_params.html">older named parameter mechanism</a>, but there are
 plans to change it to use Boost.Parameter (this library) in an
 upcoming release, while keeping the old interface available for
 backward-compatibility.</td></tr>
@@ -2106,7 +2071,7 @@
 <table class="docutils footnote" frame="void" id="odr" rules="none">
 <colgroup><col class="label" /><col /></colgroup>
 <tbody valign="top">
-<tr><td class="label"><a class="fn-backref" href="#id4" name="odr">[2]</a></td><td>The <strong>One Definition Rule</strong> says that any given entity in
+<tr><td class="label"><a class="fn-backref" href="#id5">[2]</a></td><td>The <strong>One Definition Rule</strong> says that any given entity in
 a C++ program must have the same definition in all translation
 units (object files) that make up a program.</td></tr>
 </tbody>
@@ -2114,7 +2079,7 @@
 <table class="docutils footnote" frame="void" id="vertex-descriptor" rules="none">
 <colgroup><col class="label" /><col /></colgroup>
 <tbody valign="top">
-<tr><td class="label"><a name="vertex-descriptor">[3]</a></td><td>If you're not familiar with the Boost Graph
+<tr><td class="label">[3]</td><td>If you're not familiar with the Boost Graph
 Library, don't worry about the meaning of any
 Graph-library-specific details you encounter. In this case you
 could replace all mentions of vertex descriptor types with
@@ -2125,7 +2090,7 @@
 <table class="docutils footnote" frame="void" id="conceptcpp" rules="none">
 <colgroup><col class="label" /><col /></colgroup>
 <tbody valign="top">
-<tr><td class="label"><a class="fn-backref" href="#id6" name="conceptcpp">[4]</a></td><td>This is a major motivation behind <a class="reference" href="http://www.generic-programming.org/software/ConceptGCC/">ConceptC++</a>.</td></tr>
+<tr><td class="label"><a class="fn-backref" href="#id7">[4]</a></td><td>This is a major motivation behind <a class="reference external" href="http://www.generic-programming.org/software/ConceptGCC/">ConceptC++</a>.</td></tr>
 </tbody>
 </table>
 <!-- .. [#bind] The Lambda library is known not to work on `some -->
@@ -2135,7 +2100,7 @@
 <table class="docutils footnote" frame="void" id="is-keyword-expression" rules="none">
 <colgroup><col class="label" /><col /></colgroup>
 <tbody valign="top">
-<tr><td class="label"><a name="is-keyword-expression">[5]</a></td><td><em>(<a class="fn-backref" href="#id12">1</a>, <a class="fn-backref" href="#id13">2</a>)</em> Here we're assuming there's a predicate
+<tr><td class="label">[5]</td><td><em>(<a class="fn-backref" href="#id13">1</a>, <a class="fn-backref" href="#id14">2</a>)</em> Here we're assuming there's a predicate
 metafunction <tt class="docutils literal"><span class="pre">is_keyword_expression</span></tt> that can be used to
 identify models of Boost.Python's KeywordExpression concept.</td></tr>
 </tbody>
@@ -2144,7 +2109,7 @@
 <table class="docutils footnote" frame="void" id="using" rules="none">
 <colgroup><col class="label" /><col /></colgroup>
 <tbody valign="top">
-<tr><td class="label"><a class="fn-backref" href="#id7" name="using">[6]</a></td><td><p class="first">You can always give the illusion that the function
+<tr><td class="label"><a class="fn-backref" href="#id8">[6]</a></td><td><p class="first">You can always give the illusion that the function
 lives in an outer namespace by applying a <em>using-declaration</em>:</p>
 <pre class="last literal-block">
   namespace foo_overloads
@@ -2164,20 +2129,20 @@
 <table class="docutils footnote" frame="void" id="sfinae" rules="none">
 <colgroup><col class="label" /><col /></colgroup>
 <tbody valign="top">
-<tr><td class="label"><a name="sfinae">[7]</a></td><td>This capability depends on your compiler's support for SFINAE.
+<tr><td class="label">[7]</td><td>This capability depends on your compiler's support for SFINAE.
 <strong>SFINAE</strong>: <strong>S</strong>ubstitution <strong>F</strong>ailure <strong>I</strong>s
-<strong>N</strong>ot <strong>A</strong>n <strong>E</strong>rror. If type substitution during the
+<strong>N</strong>ot <strong>A</strong>n <strong>E</strong> rror. If type substitution during the
 instantiation of a function template results in an invalid type,
 no compilation error is emitted; instead the overload is removed
 from the overload set. By producing an invalid type in the
 function signature depending on the result of some condition,
 we can decide whether or not an overload is considered during overload
 resolution. The technique is formalized in
-the <a class="reference" href="../../../utility/enable_if.html"><tt class="docutils literal"><span class="pre">enable_if</span></tt></a> utility. Most recent compilers support SFINAE;
+the <a class="reference external" href="../../../utility/enable_if.html"><tt class="docutils literal"><span class="pre">enable_if</span></tt></a> utility. Most recent compilers support SFINAE;
 on compilers that don't support it, the Boost config library
 will <tt class="docutils literal"><span class="pre">#define</span></tt> the symbol <tt class="docutils literal"><span class="pre">BOOST_NO_SFINAE</span></tt>.
 See
-<a class="reference" href="http://www.semantics.org/once_weakly/w02_SFINAE.pdf">http://www.semantics.org/once_weakly/w02_SFINAE.pdf> for more
+<a class="reference external" href="
http://www.semantics.org/once_weakly/w02_SFINAE.pdf">http://www.semantics.org/once_weakly/w02_SFINAE.pdf> for more
 information on SFINAE.</td></tr>
 </tbody>
 </table>
@@ -2185,8 +2150,8 @@
 </div>
 <div class="footer">
 <hr class="footer" />
-Generated on: 2007-05-03 14:12 UTC.
-Generated by <a class="reference" href="
http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
+Generated on: 2008-06-26 21:58 UTC.
+Generated by <a class="reference external" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
 
 </div>
 </body>

Modified: branches/CMake/release/libs/parameter/doc/html/python.html
==============================================================================
--- branches/CMake/release/libs/parameter/doc/html/python.html (original)
+++ branches/CMake/release/libs/parameter/doc/html/python.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,11 +3,11 @@
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.5: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.6: http://docutils.sourceforge.net/" />
 <title>The Boost Parameter Library Python Binding Documentation</title>
 <meta name="authors" content="Daniel Wallin" />
 <meta name="organization" content="Boost Consulting" />
-<meta name="date" content="2006-12-14" />
+<meta name="date" content="2008-03-22" />
 <meta name="copyright" content="Copyright David Abrahams, Daniel Wallin 2005. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)" />
 <link rel="stylesheet" href="rst.css" type="text/css" />
 </head>
@@ -21,16 +21,16 @@
 <tr><th class="docinfo-name">Authors:</th>
 <td>Daniel Wallin</td></tr>
 <tr><th class="docinfo-name">Contact:</th>
-<td><a class="first last reference" href="mailto:dalwan01&#64;student.umu.se">dalwan01&#64;student.umu.se</a></td></tr>
+<td><a class="first last reference external" href="mailto:dalwan01&#64;student.umu.se">dalwan01&#64;student.umu.se</a></td></tr>
 <tr><th class="docinfo-name">Organization:</th>
-<td><a class="first last reference" href="http://www.boost-consulting.com">Boost Consulting</a></td></tr>
+<td><a class="first last reference external" href="http://www.boost-consulting.com">Boost Consulting</a></td></tr>
 <tr><th class="docinfo-name">Date:</th>
-<td>2006-12-14</td></tr>
+<td>2008-03-22</td></tr>
 <tr><th class="docinfo-name">Copyright:</th>
 <td>Copyright David Abrahams, Daniel Wallin
 2005. Distributed under the Boost Software License,
 Version 1.0. (See accompanying file LICENSE_1_0.txt
-or copy at <a class="reference" href="http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt>)</td></tr>
+or copy at <a class="reference external" href="
http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt>)</td></tr>
 </tbody>
 </table>
 <div class="abstract topic">
@@ -38,24 +38,24 @@
 <p>Makes it possible to bind Boost.Parameter-enabled
 functions, operators and constructors to Python.</p>
 </div>
-<p><a class="reference" href="../../../../index.htm"><img alt="Boost" src="../../../../boost.png" /></a></p>
-<div class="contents topic">
-<p class="topic-title first"><a id="contents" name="contents">Contents</a></p>
+<p><a class="reference external" href="../../../../index.htm"><img alt="Boost" src="../../../../boost.png" /></a></p>
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
 <ul class="simple">
-<li><a class="reference" href="#introduction" id="id7" name="id7">Introduction</a></li>
-<li><a class="reference" href="#tutorial" id="id8" name="id8">Tutorial</a></li>
-<li><a class="reference" href="#concept-parameterspec" id="id9" name="id9">concept <span class="concept">ParameterSpec</span></a></li>
-<li><a class="reference" href="#special-keywords" id="id10" name="id10"><em>special</em> keywords</a></li>
-<li><a class="reference" href="#class-template-init" id="id11" name="id11">class template <tt class="docutils literal"><span class="pre">init</span></tt></a></li>
-<li><a class="reference" href="#class-template-call" id="id12" name="id12">class template <tt class="docutils literal"><span class="pre">call</span></tt></a></li>
-<li><a class="reference" href="#class-template-function" id="id13" name="id13">class template <tt class="docutils literal"><span class="pre">function</span></tt></a></li>
-<li><a class="reference" href="#function-template-def" id="id14" name="id14">function template <tt class="docutils literal"><span class="pre">def</span></tt></a></li>
-<li><a class="reference" href="#portability" id="id15" name="id15">Portability</a></li>
+<li><a class="reference internal" href="#introduction" id="id7">Introduction</a></li>
+<li><a class="reference internal" href="#tutorial" id="id8">Tutorial</a></li>
+<li><a class="reference internal" href="#concept-parameterspec" id="id9">concept <span class="concept">ParameterSpec</span></a></li>
+<li><a class="reference internal" href="#special-keywords" id="id10"><em>special</em> keywords</a></li>
+<li><a class="reference internal" href="#class-template-init" id="id11">class template <tt class="docutils literal"><span class="pre">init</span></tt></a></li>
+<li><a class="reference internal" href="#class-template-call" id="id12">class template <tt class="docutils literal"><span class="pre">call</span></tt></a></li>
+<li><a class="reference internal" href="#class-template-function" id="id13">class template <tt class="docutils literal"><span class="pre">function</span></tt></a></li>
+<li><a class="reference internal" href="#function-template-def" id="id14">function template <tt class="docutils literal"><span class="pre">def</span></tt></a></li>
+<li><a class="reference internal" href="#portability" id="id15">Portability</a></li>
 </ul>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id7" id="introduction" name="introduction">Introduction</a></h1>
-<p><tt class="docutils literal"><span class="pre">boost/parameter/python.hpp</span></tt> introduces a group of <a class="reference" href="../../../python/doc/v2/def_visitor.html"><tt class="docutils literal"><span class="pre">def_visitors</span></tt></a> that can
+<div class="section" id="introduction">
+<h1><a class="toc-backref" href="#id7">Introduction</a></h1>
+<p><tt class="docutils literal"><span class="pre">boost/parameter/python.hpp</span></tt> introduces a group of <a class="reference external" href="../../../python/doc/v2/def_visitor.html"><tt class="docutils literal"><span class="pre">def_visitors</span></tt></a> that can
 be used to easily expose Boost.Parameter-enabled member functions to Python with
 Boost.Python. It also provides a function template <tt class="docutils literal"><span class="pre">def()</span></tt> that can be used
 to expose Boost.Parameter-enabled free functions.</p>
@@ -70,8 +70,8 @@
 ``boost::parameter::python::def`` requires a class with forwarding
 overloads. We will take a closer look at how this is done in the
 tutorial section below. -->
-<p>The keyword tags and associated argument types are specified as an <a class="reference" href="../../../mpl/doc/refmanual/sequences.html">MPL
-Sequence</a>, using the function type syntax described in <a class="reference" href="#concept-parameterspec"><span class="concept">ParameterSpec</span></a>
+<p>The keyword tags and associated argument types are specified as an <a class="reference external" href="../../../mpl/doc/refmanual/sequences.html">MPL
+Sequence</a>, using the function type syntax described in <a class="reference internal" href="#concept-parameterspec"><span class="concept">ParameterSpec</span></a>
 below. Additionally, <tt class="docutils literal"><span class="pre">boost::parameter::python::function</span></tt> and
 <tt class="docutils literal"><span class="pre">boost::parameter::python::def</span></tt> requires a class with forwarding overloads.
 We will take a closer look at how this is done in the tutorial section below.</p>
@@ -80,11 +80,11 @@
 <!-- else are we going to do other than pass these sequences to -->
 <!-- function? -->
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id8" id="tutorial" name="tutorial">Tutorial</a></h1>
+<div class="section" id="tutorial">
+<h1><a class="toc-backref" href="#id8">Tutorial</a></h1>
 <p>In this section we will outline the steps needed to bind a simple
 Boost.Parameter-enabled member function to Python. Knowledge of the
-Boost.Parameter <a class="reference" href="index.html">macros</a> are required to understand this section.</p>
+Boost.Parameter <a class="reference external" href="index.html">macros</a> are required to understand this section.</p>
 <p>The class and member function we are interested in binding looks
 like this:</p>
 <pre class="literal-block">
@@ -121,7 +121,7 @@
 <p>It defines a set of overloaded member functions called <tt class="docutils literal"><span class="pre">open</span></tt> with one
 required parameter and two optional ones. To bind this member function to
 Python we use the binding utility <tt class="docutils literal"><span class="pre">boost::parameter::python::function</span></tt>.
-<tt class="docutils literal"><span class="pre">boost::parameter::python::function</span></tt> is a <a class="reference" href="../../../python/doc/v2/def_visitor.html"><tt class="docutils literal"><span class="pre">def_visitor</span></tt></a> that we'll instantiate
+<tt class="docutils literal"><span class="pre">boost::parameter::python::function</span></tt> is a <a class="reference external" href="../../../python/doc/v2/def_visitor.html"><tt class="docutils literal"><span class="pre">def_visitor</span></tt></a> that we'll instantiate
 and pass to <tt class="docutils literal"><span class="pre">boost::python::class_::def()</span></tt>.</p>
 <p>To use <tt class="docutils literal"><span class="pre">boost::parameter::python::function</span></tt> we first need to define
 a class with forwarding overloads. This is needed because <tt class="docutils literal"><span class="pre">window::open()</span></tt>
@@ -151,7 +151,7 @@
 <p class="last">We only need one overload in the forwarding class, despite the
 fact that there are two optional parameters. There are special
 circumstances when several overload are needed; see
-<a class="reference" href="#special-keywords">special keywords</a>.</p>
+<a class="reference internal" href="#special-keywords">special keywords</a>.</p>
 </div>
 <p>Next we'll define the module and export the class:</p>
 <pre class="literal-block">
@@ -185,11 +185,11 @@
 ) -->
 <!-- @del jam_prefix[:] -->
 <p><tt class="docutils literal"><span class="pre">py::function</span></tt> is passed two parameters. The first one is the class with
-forwarding overloads that we defined earlier. The second one is an <a class="reference" href="../../../mpl/doc/refmanual/sequences.html">MPL
+forwarding overloads that we defined earlier. The second one is an <a class="reference external" href="../../../mpl/doc/refmanual/sequences.html">MPL
 Sequence</a> with the keyword tag types and argument types for the function
 specified as function types. The pointer syntax used in <tt class="docutils literal"><span class="pre">tag::width*</span></tt> and
 <tt class="docutils literal"><span class="pre">tag::height*</span></tt> means that the parameter is optional. The first element of
-the <a class="reference" href="../../../mpl/doc/refmanual/sequences.html">MPL Sequence</a> is the return type of the function, in this case <tt class="docutils literal"><span class="pre">void</span></tt>,
+the <a class="reference external" href="../../../mpl/doc/refmanual/sequences.html">MPL Sequence</a> is the return type of the function, in this case <tt class="docutils literal"><span class="pre">void</span></tt>,
 which is passed as the first argument to <tt class="docutils literal"><span class="pre">operator()</span></tt> in the forwarding
 class.</p>
 <!-- The
@@ -242,8 +242,8 @@
 types instead). -->
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id9" id="concept-parameterspec" name="concept-parameterspec">concept <span class="concept">ParameterSpec</span></a></h1>
+<div class="section" id="concept-parameterspec">
+<h1><a class="toc-backref" href="#id9">concept <span class="concept">ParameterSpec</span></a></h1>
 <p>A <span class="concept">ParameterSpec</span> is a function type <tt class="docutils literal"><span class="pre">K(T)</span></tt> that describes both the keyword tag,
 <tt class="docutils literal"><span class="pre">K</span></tt>, and the argument type, <tt class="docutils literal"><span class="pre">T</span></tt>, for a parameter.</p>
 <p><tt class="docutils literal"><span class="pre">K</span></tt> is either:</p>
@@ -253,8 +253,8 @@
 <li><strong>or</strong>, a <em>special</em> keyword of the form <tt class="docutils literal"><span class="pre">Tag**</span></tt></li>
 </ul>
 <p>where <tt class="docutils literal"><span class="pre">Tag</span></tt> is a keyword tag type, as used in a specialization
-of <a class="reference" href="../../../parameter/doc/html/reference.html#keyword"><tt class="docutils literal"><span class="pre">boost::parameter::keyword</span></tt></a>.</p>
-<p>The <strong>arity range</strong> for an <a class="reference" href="../../../mpl/doc/refmanual/sequences.html">MPL Sequence</a> of <span class="concept">ParameterSpec</span>'s is
+of <a class="reference external" href="../../../parameter/doc/html/reference.html#keyword"><tt class="docutils literal"><span class="pre">boost::parameter::keyword</span></tt></a>.</p>
+<p>The <strong>arity range</strong> for an <a class="reference external" href="../../../mpl/doc/refmanual/sequences.html">MPL Sequence</a> of <span class="concept">ParameterSpec</span>'s is
 defined as the closed range:</p>
 <pre class="literal-block">
 [ mpl::size&lt;S&gt; - number of <em>special</em> keyword tags in <tt class="docutils literal"><span class="pre">S</span></tt>, mpl::size&lt;S&gt; ]
@@ -263,8 +263,8 @@
 the <strong>arity range</strong> of <tt class="docutils literal"><span class="pre">mpl::vector2&lt;x(int),y*(int)&gt;</span></tt> is <tt class="docutils literal"><span class="pre">[2,2]</span></tt> and the
 <strong>arity range</strong> of <tt class="docutils literal"><span class="pre">mpl::vector2&lt;x(int),y**(int)&gt;</span></tt> is <tt class="docutils literal"><span class="pre">[1,2]</span></tt>.</p>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id10" id="special-keywords" name="special-keywords"><em>special</em> keywords</a></h1>
+<div class="section" id="special-keywords">
+<h1><a class="toc-backref" href="#id10"><em>special</em> keywords</a></h1>
 <p>Sometimes it is desirable to have a default value for a parameter that differ
 in type from the parameter. This technique is useful for doing simple tag-dispatching
 based on the presence of a parameter. For example:</p>
@@ -323,15 +323,15 @@
 <p>When binding the case outlined above, the default type for <tt class="docutils literal"><span class="pre">color</span></tt> will not
 be convertible to the parameter type. Therefore we need to tag the <tt class="docutils literal"><span class="pre">color</span></tt>
 keyword as a <em>special</em> keyword. This is done by specifying the tag as
-<tt class="docutils literal"><span class="pre">tag::color**</span></tt> when binding the function (see <a class="reference" href="#concept-parameterspec">concept ParameterSpec</a> for
+<tt class="docutils literal"><span class="pre">tag::color**</span></tt> when binding the function (see <a class="reference internal" href="#concept-parameterspec">concept ParameterSpec</a> for
 more details on the tagging). By doing this we tell the binding functions that
 it needs to generate two overloads, one with the <tt class="docutils literal"><span class="pre">color</span></tt> parameter present
 and one without. Had there been two <em>special</em> keywords, four overloads would
 need to be generated. The number of generated overloads is equal to 2<sup>N</sup>, where <tt class="docutils literal"><span class="pre">N</span></tt> is the number of <em>special</em> keywords.</p>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id11" id="class-template-init" name="class-template-init">class template <tt class="docutils literal"><span class="pre">init</span></tt></a></h1>
+<div class="section" id="class-template-init">
+<h1><a class="toc-backref" href="#id11">class template <tt class="docutils literal"><span class="pre">init</span></tt></a></h1>
 <p>Defines a named parameter enabled constructor.</p>
 <pre class="literal-block">
 template &lt;class ParameterSpecs&gt;
@@ -345,10 +345,10 @@
 };
 </pre>
 <!-- @ignore() -->
-<div class="section">
-<h2><a id="init-requirements" name="init-requirements"><tt class="docutils literal"><span class="pre">init</span></tt> requirements</a></h2>
+<div class="section" id="init-requirements">
+<h2><tt class="docutils literal"><span class="pre">init</span></tt> requirements</h2>
 <ul>
-<li><p class="first"><tt class="docutils literal"><span class="pre">ParameterSpecs</span></tt> is an <a class="reference" href="../../../mpl/doc/refmanual/sequences.html">MPL sequence</a> where each element is a
+<li><p class="first"><tt class="docutils literal"><span class="pre">ParameterSpecs</span></tt> is an <a class="reference external" href="../../../mpl/doc/refmanual/sequences.html">MPL sequence</a> where each element is a
 model of <span class="concept">ParameterSpec</span>.</p>
 </li>
 <li><p class="first">For every <tt class="docutils literal"><span class="pre">N</span></tt> in <tt class="docutils literal"><span class="pre">[U,V]</span></tt>, where <tt class="docutils literal"><span class="pre">[U,V]</span></tt> is the <strong>arity
@@ -382,13 +382,13 @@
 </li>
 </ul>
 </div>
-<div class="section">
-<h2><a id="template-class-callpolicies-operator-callpolicies-const" name="template-class-callpolicies-operator-callpolicies-const"><tt class="docutils literal"><span class="pre">template</span> <span class="pre">&lt;class</span> <span class="pre">CallPolicies&gt;</span> <span class="pre">operator[](CallPolicies</span> <span class="pre">const&amp;)</span></tt></a></h2>
+<div class="section" id="template-class-callpolicies-operator-callpolicies-const">
+<h2><tt class="docutils literal"><span class="pre">template</span> <span class="pre">&lt;class</span> <span class="pre">CallPolicies&gt;</span> <span class="pre">operator[](CallPolicies</span> <span class="pre">const&amp;)</span></tt></h2>
 <p>Returns a <tt class="docutils literal"><span class="pre">def_visitor</span></tt> equivalent to <tt class="docutils literal"><span class="pre">*this</span></tt>, except that it
 uses CallPolicies when creating the binding.</p>
 </div>
-<div class="section">
-<h2><a id="example" name="example">Example</a></h2>
+<div class="section" id="example">
+<h2>Example</h2>
 <pre class="literal-block">
 #include &lt;boost/parameter/keyword.hpp&gt;
 #include &lt;boost/parameter/preprocessor.hpp&gt;
@@ -446,8 +446,8 @@
 </div>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id12" id="class-template-call" name="class-template-call">class template <tt class="docutils literal"><span class="pre">call</span></tt></a></h1>
+<div class="section" id="class-template-call">
+<h1><a class="toc-backref" href="#id12">class template <tt class="docutils literal"><span class="pre">call</span></tt></a></h1>
 <p>Defines a <tt class="docutils literal"><span class="pre">__call__</span></tt> operator, mapped to <tt class="docutils literal"><span class="pre">operator()</span></tt> in C++.</p>
 <pre class="literal-block">
 template &lt;class ParameterSpecs&gt;
@@ -461,10 +461,10 @@
 };
 </pre>
 <!-- @ignore() -->
-<div class="section">
-<h2><a id="call-requirements" name="call-requirements"><tt class="docutils literal"><span class="pre">call</span></tt> requirements</a></h2>
+<div class="section" id="call-requirements">
+<h2><tt class="docutils literal"><span class="pre">call</span></tt> requirements</h2>
 <ul>
-<li><p class="first"><tt class="docutils literal"><span class="pre">ParameterSpecs</span></tt> is an <a class="reference" href="../../../mpl/doc/refmanual/sequences.html">MPL sequence</a> where each element
+<li><p class="first"><tt class="docutils literal"><span class="pre">ParameterSpecs</span></tt> is an <a class="reference external" href="../../../mpl/doc/refmanual/sequences.html">MPL sequence</a> where each element
 except the first models <span class="concept">ParameterSpec</span>. The first element
 is the result type of <tt class="docutils literal"><span class="pre">c(…)</span></tt>.</p>
 </li>
@@ -499,13 +499,13 @@
 </li>
 </ul>
 </div>
-<div class="section">
-<h2><a id="id3" name="id3"><tt class="docutils literal"><span class="pre">template</span> <span class="pre">&lt;class</span> <span class="pre">CallPolicies&gt;</span> <span class="pre">operator[](CallPolicies</span> <span class="pre">const&amp;)</span></tt></a></h2>
+<div class="section" id="id3">
+<h2><tt class="docutils literal"><span class="pre">template</span> <span class="pre">&lt;class</span> <span class="pre">CallPolicies&gt;</span> <span class="pre">operator[](CallPolicies</span> <span class="pre">const&amp;)</span></tt></h2>
 <p>Returns a <tt class="docutils literal"><span class="pre">def_visitor</span></tt> equivalent to <tt class="docutils literal"><span class="pre">*this</span></tt>, except that it
 uses CallPolicies when creating the binding.</p>
 </div>
-<div class="section">
-<h2><a id="id4" name="id4">Example</a></h2>
+<div class="section" id="id4">
+<h2>Example</h2>
 <pre class="literal-block">
 #include &lt;boost/parameter/keyword.hpp&gt;
 #include &lt;boost/parameter/preprocessor.hpp&gt;
@@ -573,8 +573,8 @@
 </div>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id13" id="class-template-function" name="class-template-function">class template <tt class="docutils literal"><span class="pre">function</span></tt></a></h1>
+<div class="section" id="class-template-function">
+<h1><a class="toc-backref" href="#id13">class template <tt class="docutils literal"><span class="pre">function</span></tt></a></h1>
 <p>Defines a named parameter enabled member function.</p>
 <pre class="literal-block">
 template &lt;class Fwd, class ParameterSpecs&gt;
@@ -585,10 +585,10 @@
 };
 </pre>
 <!-- @ignore() -->
-<div class="section">
-<h2><a id="function-requirements" name="function-requirements"><tt class="docutils literal"><span class="pre">function</span></tt> requirements</a></h2>
+<div class="section" id="function-requirements">
+<h2><tt class="docutils literal"><span class="pre">function</span></tt> requirements</h2>
 <ul>
-<li><p class="first"><tt class="docutils literal"><span class="pre">ParameterSpecs</span></tt> is an <a class="reference" href="../../../mpl/doc/refmanual/sequences.html">MPL sequence</a> where each element
+<li><p class="first"><tt class="docutils literal"><span class="pre">ParameterSpecs</span></tt> is an <a class="reference external" href="../../../mpl/doc/refmanual/sequences.html">MPL sequence</a> where each element
 except the first models <span class="concept">ParameterSpec</span>. The first element
 is the result type of <tt class="docutils literal"><span class="pre">c.f(…)</span></tt>, where <tt class="docutils literal"><span class="pre">f</span></tt> is the member
 function.</p>
@@ -625,8 +625,8 @@
 </li>
 </ul>
 </div>
-<div class="section">
-<h2><a id="id5" name="id5">Example</a></h2>
+<div class="section" id="id5">
+<h2>Example</h2>
 <p>This example exports a member function <tt class="docutils literal"><span class="pre">f(int</span> <span class="pre">x,</span> <span class="pre">int</span> <span class="pre">y</span> <span class="pre">=</span> <span class="pre">…)</span></tt> to Python. The
 sequence of <span class="concept">ParameterSpec</span>'s <tt class="docutils literal"><span class="pre">mpl::vector2&lt;tag::x(int),</span> <span class="pre">tag::y*(int)&gt;</span></tt> has
 an <strong>arity range</strong> of [2,2], so we only need one forwarding overload.</p>
@@ -689,18 +689,18 @@
 </div>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id14" id="function-template-def" name="function-template-def">function template <tt class="docutils literal"><span class="pre">def</span></tt></a></h1>
+<div class="section" id="function-template-def">
+<h1><a class="toc-backref" href="#id14">function template <tt class="docutils literal"><span class="pre">def</span></tt></a></h1>
 <p>Defines a named parameter enabled free function in the current Python scope.</p>
 <pre class="literal-block">
 template &lt;class Fwd, class ParameterSpecs&gt;
 void def(char const* name);
 </pre>
 <!-- @ignore() -->
-<div class="section">
-<h2><a id="def-requirements" name="def-requirements"><tt class="docutils literal"><span class="pre">def</span></tt> requirements</a></h2>
+<div class="section" id="def-requirements">
+<h2><tt class="docutils literal"><span class="pre">def</span></tt> requirements</h2>
 <ul>
-<li><p class="first"><tt class="docutils literal"><span class="pre">ParameterSpecs</span></tt> is an <a class="reference" href="../../../mpl/doc/refmanual/sequences.html">MPL sequence</a> where each element
+<li><p class="first"><tt class="docutils literal"><span class="pre">ParameterSpecs</span></tt> is an <a class="reference external" href="../../../mpl/doc/refmanual/sequences.html">MPL sequence</a> where each element
 except the first models <span class="concept">ParameterSpec</span>. The first element
 is the result type of <tt class="docutils literal"><span class="pre">f(…)</span></tt>, where <tt class="docutils literal"><span class="pre">f</span></tt> is the function.</p>
 </li>
@@ -734,8 +734,8 @@
 </li>
 </ul>
 </div>
-<div class="section">
-<h2><a id="id6" name="id6">Example</a></h2>
+<div class="section" id="id6">
+<h2>Example</h2>
 <p>This example exports a function <tt class="docutils literal"><span class="pre">f(int</span> <span class="pre">x,</span> <span class="pre">int</span> <span class="pre">y</span> <span class="pre">=</span> <span class="pre">…)</span></tt> to Python. The
 sequence of <span class="concept">ParameterSpec</span>'s <tt class="docutils literal"><span class="pre">mpl::vector2&lt;tag::x(int),</span> <span class="pre">tag::y*(int)&gt;</span></tt> has
 an <strong>arity range</strong> of [2,2], so we only need one forwarding overload.</p>
@@ -771,16 +771,16 @@
 <!-- again, the undefined ``fwd`` identifier. -->
 </div>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id15" id="portability" name="portability">Portability</a></h1>
+<div class="section" id="portability">
+<h1><a class="toc-backref" href="#id15">Portability</a></h1>
 <p>The Boost.Parameter Python binding library requires <em>partial template
 specialization</em>.</p>
 </div>
 </div>
 <div class="footer">
 <hr class="footer" />
-Generated on: 2007-01-03 16:40 UTC.
-Generated by <a class="reference" href="
http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
+Generated on: 2008-06-26 21:51 UTC.
+Generated by <a class="reference external" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
 
 </div>
 </body>

Modified: branches/CMake/release/libs/parameter/doc/html/reference.html
==============================================================================
--- branches/CMake/release/libs/parameter/doc/html/reference.html (original)
+++ branches/CMake/release/libs/parameter/doc/html/reference.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.5: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.6: http://docutils.sourceforge.net/" />
 <title>The Boost Parameter Library Reference Documentation</title>
 <meta name="authors" content="David Abrahams Daniel Wallin" />
 <meta name="organization" content="Boost Consulting" />
@@ -22,103 +22,103 @@
 <td>David Abrahams
 <br />Daniel Wallin</td></tr>
 <tr><th class="docinfo-name">Contact:</th>
-<td><a class="first reference" href="mailto:dave&#64;boost-consulting.com">dave&#64;boost-consulting.com</a>, <a class="last reference" href="mailto:dalwan01&#64;student.umu.se">dalwan01&#64;student.umu.se</a></td></tr>
+<td><a class="first reference external" href="mailto:dave&#64;boost-consulting.com">dave&#64;boost-consulting.com</a>, <a class="last reference external" href="mailto:dalwan01&#64;student.umu.se">dalwan01&#64;student.umu.se</a></td></tr>
 <tr><th class="docinfo-name">Organization:</th>
-<td><a class="first last reference" href="http://www.boost-consulting.com">Boost Consulting</a></td></tr>
+<td><a class="first last reference external" href="http://www.boost-consulting.com">Boost Consulting</a></td></tr>
 <tr><th class="docinfo-name">Date:</th>
 <td>2005-07-17</td></tr>
 <tr><th class="docinfo-name">Copyright:</th>
 <td>Copyright David Abrahams, Daniel Wallin
 2005. Distributed under the Boost Software License,
 Version 1.0. (See accompanying file LICENSE_1_0.txt
-or copy at <a class="reference" href="http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt>)</td></tr>
+or copy at <a class="reference external" href="
http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt>)</td></tr>
 </tbody>
 </table>
-<p><a class="reference" href="../../../../index.htm"><img alt="Boost" src="../../../../boost.png" /></a></p>
+<p><a class="reference external" href="../../../../index.htm"><img alt="Boost" src="../../../../boost.png" /></a></p>
 <hr class="docutils" />
-<div class="contents topic">
-<p class="topic-title first"><a id="contents" name="contents">Contents</a></p>
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
 <ul class="auto-toc simple">
-<li><a class="reference" href="#preliminaries" id="id30" name="id30">1&nbsp;&nbsp;&nbsp;Preliminaries</a><ul class="auto-toc">
-<li><a class="reference" href="#namespaces" id="id31" name="id31">1.1&nbsp;&nbsp;&nbsp;Namespaces</a></li>
-<li><a class="reference" href="#exceptions" id="id32" name="id32">1.2&nbsp;&nbsp;&nbsp;Exceptions</a></li>
-<li><a class="reference" href="#thread-safety" id="id33" name="id33">1.3&nbsp;&nbsp;&nbsp;Thread Safety</a></li>
-<li><a class="reference" href="#typography" id="id34" name="id34">1.4&nbsp;&nbsp;&nbsp;Typography</a></li>
+<li><a class="reference internal" href="#preliminaries" id="id30">1&nbsp;&nbsp;&nbsp;Preliminaries</a><ul class="auto-toc">
+<li><a class="reference internal" href="#namespaces" id="id31">1.1&nbsp;&nbsp;&nbsp;Namespaces</a></li>
+<li><a class="reference internal" href="#exceptions" id="id32">1.2&nbsp;&nbsp;&nbsp;Exceptions</a></li>
+<li><a class="reference internal" href="#thread-safety" id="id33">1.3&nbsp;&nbsp;&nbsp;Thread Safety</a></li>
+<li><a class="reference internal" href="#typography" id="id34">1.4&nbsp;&nbsp;&nbsp;Typography</a></li>
 </ul>
 </li>
-<li><a class="reference" href="#terminology" id="id35" name="id35">2&nbsp;&nbsp;&nbsp;Terminology</a></li>
-<li><a class="reference" href="#concepts" id="id36" name="id36">3&nbsp;&nbsp;&nbsp;Concepts</a><ul class="auto-toc">
-<li><a class="reference" href="#argumentpack" id="id37" name="id37">3.1&nbsp;&nbsp;&nbsp;<span class="concept">ArgumentPack</span></a></li>
-<li><a class="reference" href="#id5" id="id38" name="id38">3.2&nbsp;&nbsp;&nbsp;<span class="concept">ParameterSpec</span></a></li>
+<li><a class="reference internal" href="#terminology" id="id35">2&nbsp;&nbsp;&nbsp;Terminology</a></li>
+<li><a class="reference internal" href="#concepts" id="id36">3&nbsp;&nbsp;&nbsp;Concepts</a><ul class="auto-toc">
+<li><a class="reference internal" href="#argumentpack" id="id37">3.1&nbsp;&nbsp;&nbsp;<span class="concept">ArgumentPack</span></a></li>
+<li><a class="reference internal" href="#id5" id="id38">3.2&nbsp;&nbsp;&nbsp;<span class="concept">ParameterSpec</span></a></li>
 </ul>
 </li>
-<li><a class="reference" href="#class-templates" id="id39" name="id39">4&nbsp;&nbsp;&nbsp;Class Templates</a><ul class="auto-toc">
-<li><a class="reference" href="#id7" id="id40" name="id40">4.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">keyword</span></tt></a></li>
-<li><a class="reference" href="#parameters" id="id41" name="id41">4.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">parameters</span></tt></a></li>
-<li><a class="reference" href="#optional-required" id="id42" name="id42">4.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">optional</span></tt>, <tt class="docutils literal"><span class="pre">required</span></tt></a></li>
-<li><a class="reference" href="#deduced" id="id43" name="id43">4.4&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">deduced</span></tt></a></li>
+<li><a class="reference internal" href="#class-templates" id="id39">4&nbsp;&nbsp;&nbsp;Class Templates</a><ul class="auto-toc">
+<li><a class="reference internal" href="#id7" id="id40">4.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">keyword</span></tt></a></li>
+<li><a class="reference internal" href="#parameters" id="id41">4.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">parameters</span></tt></a></li>
+<li><a class="reference internal" href="#optional-required" id="id42">4.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">optional</span></tt>, <tt class="docutils literal"><span class="pre">required</span></tt></a></li>
+<li><a class="reference internal" href="#deduced" id="id43">4.4&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">deduced</span></tt></a></li>
 </ul>
 </li>
-<li><a class="reference" href="#metafunctions" id="id44" name="id44">5&nbsp;&nbsp;&nbsp;Metafunctions</a><ul class="auto-toc">
-<li><a class="reference" href="#binding" id="id45" name="id45">5.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">binding</span></tt></a></li>
-<li><a class="reference" href="#lazy-binding" id="id46" name="id46">5.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">lazy_binding</span></tt></a></li>
-<li><a class="reference" href="#value-type" id="id47" name="id47">5.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">value_type</span></tt></a></li>
+<li><a class="reference internal" href="#metafunctions" id="id44">5&nbsp;&nbsp;&nbsp;Metafunctions</a><ul class="auto-toc">
+<li><a class="reference internal" href="#binding" id="id45">5.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">binding</span></tt></a></li>
+<li><a class="reference internal" href="#lazy-binding" id="id46">5.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">lazy_binding</span></tt></a></li>
+<li><a class="reference internal" href="#value-type" id="id47">5.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">value_type</span></tt></a></li>
 </ul>
 </li>
-<li><a class="reference" href="#code-generation-macros" id="id48" name="id48">6&nbsp;&nbsp;&nbsp;Code Generation Macros</a><ul class="auto-toc">
-<li><a class="reference" href="#boost-parameter-function-result-name-tag-namespace-arguments" id="id49" name="id49">6.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUNCTION(result,name,tag_namespace,arguments)</span></tt></a></li>
-<li><a class="reference" href="#boost-parameter-member-function-result-name-tag-namespace-arguments" id="id50" name="id50">6.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MEMBER_FUNCTION(result,name,tag_namespace,arguments)</span></tt></a></li>
-<li><a class="reference" href="#boost-parameter-constructor-cls-impl-tag-namespace-arguments" id="id51" name="id51">6.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_CONSTRUCTOR(cls,</span> <span class="pre">impl,</span> <span class="pre">tag_namespace,</span> <span class="pre">arguments)</span></tt></a></li>
-<li><a class="reference" href="#boost-parameter-name-name" id="id52" name="id52">6.4&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_NAME(name)</span></tt></a></li>
-<li><a class="reference" href="#boost-parameter-template-keyword-name" id="id53" name="id53">6.5&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_TEMPLATE_KEYWORD(name)</span></tt></a></li>
-<li><a class="reference" href="#boost-parameter-fun-r-n-l-h-p" id="id54" name="id54">6.6&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUN(r,n,l,h,p)</span></tt></a></li>
-<li><a class="reference" href="#boost-parameter-keyword-n-k" id="id55" name="id55">6.7&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_KEYWORD(n,k)</span></tt></a></li>
-<li><a class="reference" href="#boost-parameter-match-p-a-x" id="id56" name="id56">6.8&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MATCH(p,a,x)</span></tt></a></li>
+<li><a class="reference internal" href="#code-generation-macros" id="id48">6&nbsp;&nbsp;&nbsp;Code Generation Macros</a><ul class="auto-toc">
+<li><a class="reference internal" href="#boost-parameter-function-result-name-tag-namespace-arguments" id="id49">6.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUNCTION(result,name,tag_namespace,arguments)</span></tt></a></li>
+<li><a class="reference internal" href="#boost-parameter-member-function-result-name-tag-namespace-arguments" id="id50">6.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MEMBER_FUNCTION(result,name,tag_namespace,arguments)</span></tt></a></li>
+<li><a class="reference internal" href="#boost-parameter-constructor-cls-impl-tag-namespace-arguments" id="id51">6.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_CONSTRUCTOR(cls,</span> <span class="pre">impl,</span> <span class="pre">tag_namespace,</span> <span class="pre">arguments)</span></tt></a></li>
+<li><a class="reference internal" href="#boost-parameter-name-name" id="id52">6.4&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_NAME(name)</span></tt></a></li>
+<li><a class="reference internal" href="#boost-parameter-template-keyword-name" id="id53">6.5&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_TEMPLATE_KEYWORD(name)</span></tt></a></li>
+<li><a class="reference internal" href="#boost-parameter-fun-r-n-l-h-p" id="id54">6.6&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUN(r,n,l,h,p)</span></tt></a></li>
+<li><a class="reference internal" href="#boost-parameter-keyword-n-k" id="id55">6.7&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_KEYWORD(n,k)</span></tt></a></li>
+<li><a class="reference internal" href="#boost-parameter-match-p-a-x" id="id56">6.8&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MATCH(p,a,x)</span></tt></a></li>
 </ul>
 </li>
-<li><a class="reference" href="#configuration-macros" id="id57" name="id57">7&nbsp;&nbsp;&nbsp;Configuration Macros</a><ul class="auto-toc">
-<li><a class="reference" href="#boost-parameter-max-arity" id="id58" name="id58">7.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MAX_ARITY</span></tt></a></li>
+<li><a class="reference internal" href="#configuration-macros" id="id57">7&nbsp;&nbsp;&nbsp;Configuration Macros</a><ul class="auto-toc">
+<li><a class="reference internal" href="#boost-parameter-max-arity" id="id58">7.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MAX_ARITY</span></tt></a></li>
 </ul>
 </li>
-<li><a class="reference" href="#tutorial" id="id59" name="id59">8&nbsp;&nbsp;&nbsp;Tutorial</a></li>
+<li><a class="reference internal" href="#tutorial" id="id59">8&nbsp;&nbsp;&nbsp;Tutorial</a></li>
 </ul>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id30" id="preliminaries" name="preliminaries">1&nbsp;&nbsp;&nbsp;Preliminaries</a></h1>
+<div class="section" id="preliminaries">
+<h1><a class="toc-backref" href="#id30">1&nbsp;&nbsp;&nbsp;Preliminaries</a></h1>
 <p>This section covers some basic information you'll need to know in
 order to understand this reference</p>
-<div class="section">
-<h2><a class="toc-backref" href="#id31" id="namespaces" name="namespaces">1.1&nbsp;&nbsp;&nbsp;Namespaces</a></h2>
+<div class="section" id="namespaces">
+<h2><a class="toc-backref" href="#id31">1.1&nbsp;&nbsp;&nbsp;Namespaces</a></h2>
 <p>In this document, all unqualified identifiers should be assumed to
 be defined in namespace <tt class="docutils literal"><span class="pre">boost::parameter</span></tt> unless otherwise
 specified.</p>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id32" id="exceptions" name="exceptions">1.2&nbsp;&nbsp;&nbsp;Exceptions</a></h2>
+<div class="section" id="exceptions">
+<h2><a class="toc-backref" href="#id32">1.2&nbsp;&nbsp;&nbsp;Exceptions</a></h2>
 <p>No operation described in this document
 throws an exception unless otherwise specified.</p>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id33" id="thread-safety" name="thread-safety">1.3&nbsp;&nbsp;&nbsp;Thread Safety</a></h2>
+<div class="section" id="thread-safety">
+<h2><a class="toc-backref" href="#id33">1.3&nbsp;&nbsp;&nbsp;Thread Safety</a></h2>
 <p>All components of this library can be used safely from multiple
-threads without synchronization.<a class="footnote-reference" href="#thread" id="id2" name="id2"><sup>1</sup></a></p>
+threads without synchronization.<a class="footnote-reference" href="#thread" id="id2"><sup>1</sup></a></p>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id34" id="typography" name="typography">1.4&nbsp;&nbsp;&nbsp;Typography</a></h2>
-<p>Names written in <span class="concept">sans serif type</span> represent <a class="reference" href="../../../../more/generic_programming.html#concept">concepts</a>.</p>
+<div class="section" id="typography">
+<h2><a class="toc-backref" href="#id34">1.4&nbsp;&nbsp;&nbsp;Typography</a></h2>
+<p>Names written in <span class="concept">sans serif type</span> represent <a class="reference external" href="
http://www.boost.org/more/generic_programming.html#concept">concepts</a>.</p>
 <p>In code blocks, <em>italic type</em> represents unspecified text that
 satisfies the requirements given in the detailed description that
 follows the code block.</p>
 <p>In a specification of the tokens generated by a macro, <strong>bold
 type</strong> is used to highlight the position of the expanded macro
 argument in the result.</p>
-<p>The special character β represents the value of <a class="reference" href="#boost-parameter-max-arity"><tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MAX_ARITY</span></tt></a>.</p>
+<p>The special character β represents the value of <a class="reference internal" href="#boost-parameter-max-arity"><tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MAX_ARITY</span></tt></a>.</p>
 </div>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id35" id="terminology" name="terminology">2&nbsp;&nbsp;&nbsp;Terminology</a></h1>
+<div class="section" id="terminology">
+<h1><a class="toc-backref" href="#id35">2&nbsp;&nbsp;&nbsp;Terminology</a></h1>
 <dl class="docutils" id="kw">
 <dt>keyword</dt>
 <dd>The name of a function parameter.</dd>
@@ -136,15 +136,15 @@
 </dl>
 <span class="target" id="tag-type"></span><dl class="docutils">
 <dt>tag type</dt>
-<dd>Shorthand for “<a class="reference" href="#keyword-tag-type">keyword tag type</a>.”</dd>
+<dd>Shorthand for “<a class="reference internal" href="#keyword-tag-type">keyword tag type</a>.”</dd>
 </dl>
 <span class="target" id="keyword-object"></span><dl class="docutils">
 <dt>keyword object</dt>
-<dd>An instance of <a class="reference" href="#keyword"><tt class="docutils literal"><span class="pre">keyword</span></tt></a> <tt class="docutils literal"><span class="pre">&lt;T&gt;</span></tt> for some <a class="reference" href="#tag-type">tag type</a> <tt class="docutils literal"><span class="pre">T</span></tt>.</dd>
+<dd>An instance of <a class="reference internal" href="#keyword"><tt class="docutils literal"><span class="pre">keyword</span></tt></a> <tt class="docutils literal"><span class="pre">&lt;T&gt;</span></tt> for some <a class="reference internal" href="#tag-type">tag type</a> <tt class="docutils literal"><span class="pre">T</span></tt>.</dd>
 </dl>
 <span class="target" id="tagged-reference"></span><dl class="docutils">
 <dt>tagged reference</dt>
-<dd><p class="first">An object whose type is associated with a <a class="reference" href="#keyword-tag-type">keyword tag type</a> (the
+<dd><p class="first">An object whose type is associated with a <a class="reference internal" href="#keyword-tag-type">keyword tag type</a> (the
 object's <em>keyword</em>), and that holds a reference (to the object's
 <em>value</em>).</p>
 <p class="last">As a shorthand, a “tagged reference to <tt class="docutils literal"><span class="pre">x</span></tt>” means a tagged
@@ -153,17 +153,17 @@
 </dl>
 <span class="target" id="tagged-default"></span><dl class="docutils">
 <dt>tagged default</dt>
-<dd>A <a class="reference" href="#tagged-reference">tagged reference</a> whose <em>value</em> represents the value of a
+<dd>A <a class="reference internal" href="#tagged-reference">tagged reference</a> whose <em>value</em> represents the value of a
 default argument.</dd>
 </dl>
 <span class="target" id="tagged-lazy-default"></span><dl class="docutils">
 <dt>tagged lazy default</dt>
-<dd>A <a class="reference" href="#tagged-reference">tagged reference</a> whose <em>value</em>, when invoked with no
+<dd>A <a class="reference internal" href="#tagged-reference">tagged reference</a> whose <em>value</em>, when invoked with no
 arguments, computes a default argument value.</dd>
 </dl>
 <span class="target" id="intended-argument-type"></span><dl class="docutils">
 <dt>intended argument type</dt>
-<dd>The <em>intended argument type</em> of a single-element <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> is the
+<dd>The <em>intended argument type</em> of a single-element <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> is the
 type of its element's <em>value</em>. The intended argument type of any other
 type <tt class="docutils literal"><span class="pre">X</span></tt> is <tt class="docutils literal"><span class="pre">X</span></tt> itself.</dd>
 </dl>
@@ -171,29 +171,29 @@
 <p class="first admonition-title">Note</p>
 <p class="last">In this reference, we will use concept names (and other names)
 to describe both types and objects, depending on context. So
-for example, “an <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a>” can refer to a type that
-models <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <em>or</em> an object of such a type.</p>
+for example, “an <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a>” can refer to a type that
+models <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <em>or</em> an object of such a type.</p>
 </div>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id36" id="concepts" name="concepts">3&nbsp;&nbsp;&nbsp;Concepts</a></h1>
-<p>This section describes the generic type <a class="reference" href="../../../../more/generic_programming.html#concept">concepts</a> used by the Parameter library.</p>
-<div class="section">
-<h2><a class="toc-backref" href="#id37" id="argumentpack" name="argumentpack">3.1&nbsp;&nbsp;&nbsp;<span class="concept">ArgumentPack</span></a></h2>
-<p>An <span class="concept">ArgumentPack</span> is a collection of <a class="reference" href="#tagged-reference">tagged reference</a>s to the
+<div class="section" id="concepts">
+<h1><a class="toc-backref" href="#id36">3&nbsp;&nbsp;&nbsp;Concepts</a></h1>
+<p>This section describes the generic type <a class="reference external" href="http://www.boost.org/more/generic_programming.html#concept">concepts</a> used by the Parameter library.</p>
+<div class="section" id="argumentpack">
+<h2><a class="toc-backref" href="#id37">3.1&nbsp;&nbsp;&nbsp;<span class="concept">ArgumentPack</span></a></h2>
+<p>An <span class="concept">ArgumentPack</span> is a collection of <a class="reference internal" href="#tagged-reference">tagged reference</a>s to the
 actual arguments passed to a function. Every <span class="concept">ArgumentPack</span> is
-also a valid MPL <a class="reference" href="../../../mpl/doc/refmanual/forward-sequence.html"><span class="concept">Forward Sequence</span></a> consisting of the <a class="reference" href="#keyword-tag-type">keyword tag type</a>s in its <a class="reference" href="#tagged-reference">tagged reference</a>s.</p>
-<div class="section">
-<h3><a id="requirements" name="requirements">Requirements</a></h3>
+also a valid MPL <a class="reference external" href="../../../mpl/doc/refmanual/forward-sequence.html"><span class="concept">Forward Sequence</span></a> consisting of the <a class="reference internal" href="#keyword-tag-type">keyword tag type</a>s in its <a class="reference internal" href="#tagged-reference">tagged reference</a>s.</p>
+<div class="section" id="requirements">
+<h3>Requirements</h3>
 <p>In the table below,</p>
 <ul class="simple">
 <li><tt class="docutils literal"><span class="pre">A</span></tt> is a model of <span class="concept">ArgumentPack</span></li>
 <li><tt class="docutils literal"><span class="pre">x</span></tt> is an instance of <tt class="docutils literal"><span class="pre">A</span></tt></li>
-<li><tt class="docutils literal"><span class="pre">u</span></tt> is a <a class="reference" href="#keyword-object">keyword object</a> of type <tt class="docutils literal"><span class="pre">K</span></tt></li>
-<li><tt class="docutils literal"><span class="pre">v</span></tt> is a <a class="reference" href="#tagged-default">tagged default</a> with <a class="reference" href="#tag-type">tag type</a> <tt class="docutils literal"><span class="pre">L</span></tt> and <em>value</em> of type <tt class="docutils literal"><span class="pre">D</span></tt></li>
-<li><tt class="docutils literal"><span class="pre">w</span></tt> is a <a class="reference" href="#tagged-lazy-default">tagged lazy default</a> with <a class="reference" href="#tag-type">tag type</a> <tt class="docutils literal"><span class="pre">M</span></tt> and <em>value</em> of type <tt class="docutils literal"><span class="pre">E</span> <span class="pre">const</span></tt></li>
-<li><tt class="docutils literal"><span class="pre">z</span></tt> is an <span class="concept">ArgumentPack</span> containing a single element (as created by <a class="reference" href="#keyword"><tt class="docutils literal"><span class="pre">keyword</span></tt></a><tt class="docutils literal"><span class="pre">&lt;…&gt;::operator=</span></tt>)</li>
+<li><tt class="docutils literal"><span class="pre">u</span></tt> is a <a class="reference internal" href="#keyword-object">keyword object</a> of type <tt class="docutils literal"><span class="pre">K</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">v</span></tt> is a <a class="reference internal" href="#tagged-default">tagged default</a> with <a class="reference internal" href="#tag-type">tag type</a> <tt class="docutils literal"><span class="pre">L</span></tt> and <em>value</em> of type <tt class="docutils literal"><span class="pre">D</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">w</span></tt> is a <a class="reference internal" href="#tagged-lazy-default">tagged lazy default</a> with <a class="reference internal" href="#tag-type">tag type</a> <tt class="docutils literal"><span class="pre">M</span></tt> and <em>value</em> of type <tt class="docutils literal"><span class="pre">E</span> <span class="pre">const</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">z</span></tt> is an <span class="concept">ArgumentPack</span> containing a single element (as created by <a class="reference internal" href="#keyword"><tt class="docutils literal"><span class="pre">keyword</span></tt></a><tt class="docutils literal"><span class="pre">&lt;…&gt;::operator=</span></tt>)</li>
 </ul>
 <p>Any exceptions are thrown from the invocation of <tt class="docutils literal"><span class="pre">w</span></tt>'s <em>value</em>
 will be propagated to the caller.</p>
@@ -217,7 +217,7 @@
 <td><tt class="docutils literal"><span class="pre">binding&lt;A,K&gt;::type</span></tt></td>
 <td><tt class="docutils literal"><span class="pre">x</span></tt> contains an
 element <em>b</em> whose
-<a class="reference" href="#kw">keyword</a> is <tt class="docutils literal"><span class="pre">K</span></tt></td>
+<a class="reference internal" href="#kw">keyword</a> is <tt class="docutils literal"><span class="pre">K</span></tt></td>
 <td>Returns <em>b</em>'s <em>value</em> (by
 reference).</td>
 </tr>
@@ -225,7 +225,7 @@
 <td><tt class="docutils literal"><span class="pre">binding&lt;A,L,D&gt;::type</span></tt></td>
 <td><em>none</em></td>
 <td>If <tt class="docutils literal"><span class="pre">x</span></tt> contains an element <em>b</em> whose
-<a class="reference" href="#kw">keyword</a> is the same as <tt class="docutils literal"><span class="pre">u</span></tt>'s,
+<a class="reference internal" href="#kw">keyword</a> is the same as <tt class="docutils literal"><span class="pre">u</span></tt>'s,
 returns <em>b</em>'s <em>value</em> (by
 reference). Otherwise, returns <tt class="docutils literal"><span class="pre">u</span></tt>'s <em>value</em>.</td>
 </tr>
@@ -233,14 +233,14 @@
 <td><tt class="docutils literal"><span class="pre">lazy_binding&lt;A,M,E&gt;::type</span></tt></td>
 <td><em>none</em></td>
 <td>If <tt class="docutils literal"><span class="pre">x</span></tt> contains an element <em>b</em> whose
-<a class="reference" href="#kw">keyword</a> is the same as <tt class="docutils literal"><span class="pre">w</span></tt>'s,
+<a class="reference internal" href="#kw">keyword</a> is the same as <tt class="docutils literal"><span class="pre">w</span></tt>'s,
 returns <em>b</em>'s <em>value</em> (by
 reference). Otherwise, invokes <tt class="docutils literal"><span class="pre">w</span></tt>'s <em>value</em> and returns the result.</td>
 </tr>
 <tr><td><tt class="docutils literal"><span class="pre">x,</span> <span class="pre">z</span></tt></td>
 <td>Model of <span class="concept">ArgumentPack</span></td>
 <td><em>none</em></td>
-<td>Returns an <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> containing
+<td>Returns an <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> containing
 all the elements of both <tt class="docutils literal"><span class="pre">x</span></tt> and
 <tt class="docutils literal"><span class="pre">z</span></tt>.</td>
 </tr>
@@ -248,17 +248,17 @@
 </table>
 </div>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id38" id="id5" name="id5"><span id="parameterspec"></span>3.2&nbsp;&nbsp;&nbsp;<span class="concept">ParameterSpec</span></a></h2>
+<div class="section" id="id5">
+<span id="parameterspec"></span><h2><a class="toc-backref" href="#id38">3.2&nbsp;&nbsp;&nbsp;<span class="concept">ParameterSpec</span></a></h2>
 <p>A <span class="concept">ParameterSpec</span> describes the type requirements for arguments
-corresponding to a given <a class="reference" href="#kw">keyword</a> and indicates whether the argument
+corresponding to a given <a class="reference internal" href="#kw">keyword</a> and indicates whether the argument
 is optional or required. The table below details the allowed forms
 and describes their condition for satisfaction by an actual
 argument type. In each row,</p>
 <ul class="simple" id="conditions">
-<li><tt class="docutils literal"><span class="pre">K</span></tt> is the <span class="concept">ParameterSpec</span>'s <a class="reference" href="#keyword-tag-type">keyword tag type</a></li>
-<li><tt class="docutils literal"><span class="pre">A</span></tt> is an <a class="reference" href="#intended-argument-type">intended argument type</a> associated with <tt class="docutils literal"><span class="pre">K</span></tt>, if any</li>
-<li><tt class="docutils literal"><span class="pre">F</span></tt> is a unary <a class="reference" href="../../../mpl/doc/refmanual/lambda-expression.html">MPL lambda expression</a></li>
+<li><tt class="docutils literal"><span class="pre">K</span></tt> is the <span class="concept">ParameterSpec</span>'s <a class="reference internal" href="#keyword-tag-type">keyword tag type</a></li>
+<li><tt class="docutils literal"><span class="pre">A</span></tt> is an <a class="reference internal" href="#intended-argument-type">intended argument type</a> associated with <tt class="docutils literal"><span class="pre">K</span></tt>, if any</li>
+<li><tt class="docutils literal"><span class="pre">F</span></tt> is a unary <a class="reference external" href="../../../mpl/doc/refmanual/lambda-expression.html">MPL lambda expression</a></li>
 </ul>
 <table border="1" class="docutils">
 <caption><span class="concept">ParameterSpec</span> allowed forms and conditions of satisfaction</caption>
@@ -278,33 +278,33 @@
 <td>no</td>
 <td><em>n/a</em></td>
 </tr>
-<tr><td><a class="reference" href="#optional"><tt class="docutils literal"><span class="pre">optional</span></tt></a><tt class="docutils literal"><span class="pre">&lt;K,F&gt;</span></tt></td>
+<tr><td><a class="reference internal" href="#optional"><tt class="docutils literal"><span class="pre">optional</span></tt></a><tt class="docutils literal"><span class="pre">&lt;K,F&gt;</span></tt></td>
 <td>no</td>
 <td><tt class="docutils literal"><span class="pre">mpl::apply&lt;F,A&gt;::type::value</span></tt>
 is <tt class="docutils literal"><span class="pre">true</span></tt>.</td>
 </tr>
-<tr><td><a class="reference" href="#required"><tt class="docutils literal"><span class="pre">required</span></tt></a><tt class="docutils literal"><span class="pre">&lt;K,F&gt;</span></tt></td>
+<tr><td><a class="reference internal" href="#required"><tt class="docutils literal"><span class="pre">required</span></tt></a><tt class="docutils literal"><span class="pre">&lt;K,F&gt;</span></tt></td>
 <td>yes</td>
 <td><tt class="docutils literal"><span class="pre">mpl::apply&lt;F,A&gt;::type::value</span></tt>
 is <tt class="docutils literal"><span class="pre">true</span></tt>.</td>
 </tr>
 </tbody>
 </table>
-<p>The information in a <span class="concept">ParameterSpec</span> is used to <a class="reference" href="index.html#controlling-overload-resolution">limit</a> the
-arguments that will be matched by <a class="reference" href="index.html#forwarding-functions">forwarding functions</a>.</p>
+<p>The information in a <span class="concept">ParameterSpec</span> is used to <a class="reference external" href="index.html#controlling-overload-resolution">limit</a> the
+arguments that will be matched by <a class="reference external" href="index.html#forwarding-functions">forwarding functions</a>.</p>
 </div>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id39" id="class-templates" name="class-templates">4&nbsp;&nbsp;&nbsp;Class Templates</a></h1>
-<div class="section">
-<h2><a class="toc-backref" href="#id40" id="id7" name="id7"><span id="keyword"></span>4.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">keyword</span></tt></a></h2>
-<p>The type of every <a class="reference" href="#keyword-object">keyword object</a> is a specialization of <tt class="docutils literal"><span class="pre">keyword</span></tt>.</p>
+<div class="section" id="class-templates">
+<h1><a class="toc-backref" href="#id39">4&nbsp;&nbsp;&nbsp;Class Templates</a></h1>
+<div class="section" id="id7">
+<span id="keyword"></span><h2><a class="toc-backref" href="#id40">4.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">keyword</span></tt></a></h2>
+<p>The type of every <a class="reference internal" href="#keyword-object">keyword object</a> is a specialization of <tt class="docutils literal"><span class="pre">keyword</span></tt>.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/keyword.hpp">boost/parameter/keyword.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/keyword.hpp">boost/parameter/keyword.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -312,22 +312,22 @@
 template &lt;class Tag&gt;
 struct keyword
 {
- template &lt;class T&gt; <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference" href="#operator">operator=</a>(T&amp; value) const;
- template &lt;class T&gt; <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference" href="#operator">operator=</a>(T const&amp; value) const;
+ template &lt;class T&gt; <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference internal" href="#operator">operator=</a>(T&amp; value) const;
+ template &lt;class T&gt; <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference internal" href="#operator">operator=</a>(T const&amp; value) const;
 
- template &lt;class T&gt; <em>tagged default</em> <a class="reference" href="#id9">operator|</a>(T&amp; x) const;
- template &lt;class T&gt; <em>tagged default</em> <a class="reference" href="#id9">operator|</a>(T const&amp; x) const;
+ template &lt;class T&gt; <em>tagged default</em> <a class="reference internal" href="#id9">operator|</a>(T&amp; x) const;
+ template &lt;class T&gt; <em>tagged default</em> <a class="reference internal" href="#id9">operator|</a>(T const&amp; x) const;
 
- template &lt;class F&gt; <em>tagged lazy default</em> <a class="reference" href="#id10">operator||</a>(F const&amp;) const;
+ template &lt;class F&gt; <em>tagged lazy default</em> <a class="reference internal" href="#id10">operator||</a>(F const&amp;) const;
 
- static keyword&lt;Tag&gt;&amp; <a class="reference" href="#get">get</a>();
+ static keyword&lt;Tag&gt;&amp; <a class="reference internal" href="#get">get</a>();
 };
 </pre>
 <dl class="docutils" id="operator">
 <dt><tt class="docutils literal"><span class="pre">operator=</span></tt></dt>
 <dd><pre class="first literal-block">
-template &lt;class T&gt; <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> operator=(T&amp; value) const;
-template &lt;class T&gt; <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> operator=(T const&amp; value) const;
+template &lt;class T&gt; <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> operator=(T&amp; value) const;
+template &lt;class T&gt; <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> operator=(T const&amp; value) const;
 </pre>
 <table class="last docutils field-list" frame="void" rules="none">
 <col class="field-name" />
@@ -335,8 +335,8 @@
 <tbody valign="top">
 <tr class="field"><th class="field-name">Requires:</th><td class="field-body">nothing</td>
 </tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">an <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> containing a single <a class="reference" href="#tagged-reference">tagged reference</a> to
-<tt class="docutils literal"><span class="pre">value</span></tt> with <a class="reference" href="#kw">keyword</a> <tt class="docutils literal"><span class="pre">Tag</span></tt></td>
+<tr class="field"><th class="field-name">Returns:</th><td class="field-body">an <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> containing a single <a class="reference internal" href="#tagged-reference">tagged reference</a> to
+<tt class="docutils literal"><span class="pre">value</span></tt> with <a class="reference internal" href="#kw">keyword</a> <tt class="docutils literal"><span class="pre">Tag</span></tt></td>
 </tr>
 </tbody>
 </table>
@@ -352,7 +352,7 @@
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">a <a class="reference" href="#tagged-default">tagged default</a> with <em>value</em> <tt class="docutils literal"><span class="pre">x</span></tt> and <a class="reference" href="#kw">keyword</a> <tt class="docutils literal"><span class="pre">Tag</span></tt>.</td>
+<tr class="field"><th class="field-name">Returns:</th><td class="field-body">a <a class="reference internal" href="#tagged-default">tagged default</a> with <em>value</em> <tt class="docutils literal"><span class="pre">x</span></tt> and <a class="reference internal" href="#kw">keyword</a> <tt class="docutils literal"><span class="pre">Tag</span></tt>.</td>
 </tr>
 </tbody>
 </table>
@@ -367,9 +367,9 @@
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><tt class="docutils literal"><span class="pre">g()</span></tt> is valid, with type <tt class="docutils literal"><span class="pre">boost::</span></tt><a class="reference" href="../../../utility/utility.htm#result_of"><tt class="docutils literal"><span class="pre">result_of</span></tt></a><tt class="docutils literal"><span class="pre">&lt;F()&gt;::type</span></tt>.<a class="footnote-reference" href="#no-result-of" id="id11" name="id11"><sup>2</sup></a></td>
+<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><tt class="docutils literal"><span class="pre">g()</span></tt> is valid, with type <tt class="docutils literal"><span class="pre">boost::</span></tt><a class="reference external" href="../../../utility/utility.htm#result_of"><tt class="docutils literal"><span class="pre">result_of</span></tt></a><tt class="docutils literal"><span class="pre">&lt;F()&gt;::type</span></tt>.<a class="footnote-reference" href="#no-result-of" id="id11"><sup>2</sup></a></td>
 </tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">a <a class="reference" href="#tagged-lazy-default">tagged lazy default</a> with <em>value</em> <tt class="docutils literal"><span class="pre">g</span></tt> and <a class="reference" href="#kw">keyword</a> <tt class="docutils literal"><span class="pre">Tag</span></tt>.</td>
+<tr class="field"><th class="field-name">Returns:</th><td class="field-body">a <a class="reference internal" href="#tagged-lazy-default">tagged lazy default</a> with <em>value</em> <tt class="docutils literal"><span class="pre">g</span></tt> and <a class="reference internal" href="#kw">keyword</a> <tt class="docutils literal"><span class="pre">Tag</span></tt>.</td>
 </tr>
 </tbody>
 </table>
@@ -395,17 +395,17 @@
 </dd>
 </dl>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id41" id="parameters" name="parameters">4.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">parameters</span></tt></a></h2>
+<div class="section" id="parameters">
+<h2><a class="toc-backref" href="#id41">4.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">parameters</span></tt></a></h2>
 <p>Provides an interface for assembling the actual arguments to a
 <cite>forwarding function</cite> into an <span class="concept">ArgumentPack</span>, in which any
-<a class="reference" href="#positional">positional</a> arguments will be tagged according to the
+<a class="reference internal" href="#positional">positional</a> arguments will be tagged according to the
 corresponding template argument to <tt class="docutils literal"><span class="pre">parameters</span></tt>.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/parameters.hpp">boost/parameter/parameters.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/parameters.hpp">boost/parameter/parameters.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -414,28 +414,28 @@
 struct parameters
 {
     template &lt;class A0, class A1 = <em>unspecified</em>, …class Aβ = <em>unspecified</em>&gt;
- struct <a class="reference" href="#match">match</a>
+ struct <a class="reference internal" href="#match">match</a>
     {
         typedef … type;
     };
 
     template &lt;class A0&gt;
- <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference" href="#id13">operator()</a>(A0&amp; a0) const;
+ <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference internal" href="#id13">operator()</a>(A0&amp; a0) const;
 
     template &lt;class A0, class A1&gt;
- <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference" href="#id13">operator()</a>(A0&amp; a0, A1&amp; a1) const;
+ <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference internal" href="#id13">operator()</a>(A0&amp; a0, A1&amp; a1) const;
 
     <span class="vellipsis">â‹®</span>
 
     template &lt;class A0, class A1, …class Aβ&gt;
- <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference" href="#id13">operator()</a>(A0&amp; a0, A1&amp; a1, …Aβ&amp; aβ) const;
+ <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference internal" href="#id13">operator()</a>(A0&amp; a0, A1&amp; a1, …Aβ&amp; aβ) const;
 };
 </pre>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><tt class="docutils literal"><span class="pre">P0</span></tt>, <tt class="docutils literal"><span class="pre">P1</span></tt>, … <tt class="docutils literal"><span class="pre">P</span></tt>β are models of <a class="reference" href="#parameterspec"><span class="concept">ParameterSpec</span></a>.</td>
+<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><tt class="docutils literal"><span class="pre">P0</span></tt>, <tt class="docutils literal"><span class="pre">P1</span></tt>, … <tt class="docutils literal"><span class="pre">P</span></tt>β are models of <a class="reference internal" href="#parameterspec"><span class="concept">ParameterSpec</span></a>.</td>
 </tr>
 </tbody>
 </table>
@@ -446,29 +446,29 @@
 <blockquote class="last">
 <div class="line-block">
 <div class="line">let <tt class="docutils literal"><span class="pre">D0</span></tt> the set [d0, …, d<em>j</em>] of all <strong>deduced</strong> <em>parameter specs</em> in [<tt class="docutils literal"><span class="pre">P0</span></tt>, …, <tt class="docutils literal"><span class="pre">P</span></tt>β]</div>
-<div class="line"><tt class="docutils literal"><span class="pre">R</span></tt><em>i</em> is <tt class="docutils literal"><span class="pre">A</span></tt><em>i</em>'s <a class="reference" href="#intended-argument-type">intended argument type</a></div>
+<div class="line"><tt class="docutils literal"><span class="pre">R</span></tt><em>i</em> is <tt class="docutils literal"><span class="pre">A</span></tt><em>i</em>'s <a class="reference internal" href="#intended-argument-type">intended argument type</a></div>
 <div class="line"><br /></div>
-<div class="line">if <tt class="docutils literal"><span class="pre">A</span></tt><em>i</em> is a result type of <tt class="docutils literal"><span class="pre">keyword&lt;T&gt;::</span></tt><a class="reference" href="#operator"><tt class="docutils literal"><span class="pre">operator=</span></tt></a></div>
+<div class="line">if <tt class="docutils literal"><span class="pre">A</span></tt><em>i</em> is a result type of <tt class="docutils literal"><span class="pre">keyword&lt;T&gt;::</span></tt><a class="reference internal" href="#operator"><tt class="docutils literal"><span class="pre">operator=</span></tt></a></div>
 <div class="line">then</div>
 <div class="line-block">
 <div class="line"><tt class="docutils literal"><span class="pre">K</span></tt><em>i</em> is <tt class="docutils literal"><span class="pre">T</span></tt></div>
 </div>
 <div class="line">else</div>
 <div class="line-block">
-<div class="line">if some <tt class="docutils literal"><span class="pre">A</span></tt><em>j</em> where <em>j</em>≤<em>i</em> is a result type of <tt class="docutils literal"><span class="pre">keyword&lt;T&gt;::</span></tt><a class="reference" href="#operator"><tt class="docutils literal"><span class="pre">operator=</span></tt></a></div>
+<div class="line">if some <tt class="docutils literal"><span class="pre">A</span></tt><em>j</em> where <em>j</em>≤<em>i</em> is a result type of <tt class="docutils literal"><span class="pre">keyword&lt;T&gt;::</span></tt><a class="reference internal" href="#operator"><tt class="docutils literal"><span class="pre">operator=</span></tt></a></div>
 <div class="line"><em>or</em> some <tt class="docutils literal"><span class="pre">P</span></tt><em>j</em> in <em>j</em>≤<em>i</em> is <strong>deduced</strong></div>
 <div class="line">then</div>
 <div class="line-block">
 <div class="line">if some <em>parameter spec</em> <tt class="docutils literal"><span class="pre">d</span></tt><em>j</em> in <tt class="docutils literal"><span class="pre">D</span></tt><em>i</em> matches <tt class="docutils literal"><span class="pre">A</span></tt><em>i</em></div>
 <div class="line">then</div>
 <div class="line-block">
-<div class="line"><tt class="docutils literal"><span class="pre">K</span></tt><em>i</em> is <tt class="docutils literal"><span class="pre">d</span></tt><em>j</em>'s <a class="reference" href="#keyword-tag-type">keyword tag type</a>.</div>
+<div class="line"><tt class="docutils literal"><span class="pre">K</span></tt><em>i</em> is <tt class="docutils literal"><span class="pre">d</span></tt><em>j</em>'s <a class="reference internal" href="#keyword-tag-type">keyword tag type</a>.</div>
 <div class="line"><tt class="docutils literal"><span class="pre">D</span></tt><sub>i+1</sub> is <tt class="docutils literal"><span class="pre">D</span></tt><em>i</em> - [<tt class="docutils literal"><span class="pre">d</span></tt><em>j</em>]</div>
 </div>
 </div>
 <div class="line">else</div>
 <div class="line-block">
-<div class="line"><tt class="docutils literal"><span class="pre">K</span></tt><em>i</em> is <tt class="docutils literal"><span class="pre">P</span></tt><em>i</em>'s <a class="reference" href="#keyword-tag-type">keyword tag type</a>.</div>
+<div class="line"><tt class="docutils literal"><span class="pre">K</span></tt><em>i</em> is <tt class="docutils literal"><span class="pre">P</span></tt><em>i</em>'s <a class="reference internal" href="#keyword-tag-type">keyword tag type</a>.</div>
 </div>
 </div>
 </div>
@@ -476,7 +476,7 @@
 </div>
 <dl class="docutils" id="match">
 <dt><tt class="docutils literal"><span class="pre">match</span></tt></dt>
-<dd><p class="first">A <a class="reference" href="../../../mpl/doc/refmanual/metafunction.html"><span class="concept">Metafunction</span></a> used to remove a <a class="reference" href="index.html#forwarding-functions">forwarding function</a> from overload resolution.</p>
+<dd><p class="first">A <a class="reference external" href="../../../mpl/doc/refmanual/metafunction.html"><span class="concept">Metafunction</span></a> used to remove a <a class="reference external" href="index.html#forwarding-functions">forwarding function</a> from overload resolution.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
@@ -492,12 +492,12 @@
 <ul class="last simple">
 <li><tt class="docutils literal"><span class="pre">P</span></tt><em>j</em> is the <em>unspecified</em> default</li>
 <li><strong>or</strong>, <tt class="docutils literal"><span class="pre">P</span></tt><em>j</em> is a <em>keyword tag type</em></li>
-<li><strong>or</strong>, <tt class="docutils literal"><span class="pre">P</span></tt><em>j</em> is <a class="reference" href="#optional"><tt class="docutils literal"><span class="pre">optional</span></tt></a> <tt class="docutils literal"><span class="pre">&lt;X,F&gt;</span></tt> and either<ul>
+<li><strong>or</strong>, <tt class="docutils literal"><span class="pre">P</span></tt><em>j</em> is <a class="reference internal" href="#optional"><tt class="docutils literal"><span class="pre">optional</span></tt></a> <tt class="docutils literal"><span class="pre">&lt;X,F&gt;</span></tt> and either<ul>
 <li><tt class="docutils literal"><span class="pre">X</span></tt> is not <tt class="docutils literal"><span class="pre">K</span></tt><em>i</em> for any <em>i</em>,</li>
 <li><strong>or</strong> <tt class="docutils literal"><span class="pre">X</span></tt> is some <tt class="docutils literal"><span class="pre">K</span></tt><em>i</em> and <tt class="docutils literal"><span class="pre">mpl::apply&lt;F,R</span></tt><em>i</em><tt class="docutils literal"><span class="pre">&gt;::type::value</span></tt> is <tt class="docutils literal"><span class="pre">true</span></tt></li>
 </ul>
 </li>
-<li><strong>or</strong>, <tt class="docutils literal"><span class="pre">P</span></tt><em>j</em> is <a class="reference" href="#required"><tt class="docutils literal"><span class="pre">required</span></tt></a> <tt class="docutils literal"><span class="pre">&lt;X,F&gt;</span></tt>, and<ul>
+<li><strong>or</strong>, <tt class="docutils literal"><span class="pre">P</span></tt><em>j</em> is <a class="reference internal" href="#required"><tt class="docutils literal"><span class="pre">required</span></tt></a> <tt class="docutils literal"><span class="pre">&lt;X,F&gt;</span></tt>, and<ul>
 <li><tt class="docutils literal"><span class="pre">X</span></tt> is some <tt class="docutils literal"><span class="pre">K</span></tt><em>i</em>, <strong>and</strong></li>
 <li><tt class="docutils literal"><span class="pre">mpl::apply&lt;F,R</span></tt><em>i</em><tt class="docutils literal"><span class="pre">&gt;::type::value</span></tt> is <tt class="docutils literal"><span class="pre">true</span></tt></li>
 </ul>
@@ -508,20 +508,20 @@
 <dl class="docutils" id="id13">
 <dt><tt class="docutils literal"><span class="pre">operator()</span></tt></dt>
 <dd><pre class="first literal-block">
-template &lt;class A0&gt; <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> operator()(A0 const&amp; a0) const;
+template &lt;class A0&gt; <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> operator()(A0 const&amp; a0) const;
 
 <span class="vellipsis">â‹®</span>
 
-template &lt;class A0, …class Aβ&gt; <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference" href="#id13">operator()</a>(A0 const&amp; a0, …Aβ const&amp; aβ) const;
+template &lt;class A0, …class Aβ&gt; <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> <a class="reference internal" href="#id13">operator()</a>(A0 const&amp; a0, …Aβ const&amp; aβ) const;
 </pre>
 <table class="last docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">An <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a> containing, for each <tt class="docutils literal"><span class="pre">a</span></tt><em>i</em>,</p>
+<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">An <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a> containing, for each <tt class="docutils literal"><span class="pre">a</span></tt><em>i</em>,</p>
 <ul class="last simple">
 <li>if <tt class="docutils literal"><span class="pre">a</span></tt><em>i</em>, is a single-element <span class="concept">ArgumentPack</span>, its element</li>
-<li>Otherwise, a <a class="reference" href="#tagged-reference">tagged reference</a> with <a class="reference" href="#kw">keyword</a> <tt class="docutils literal"><span class="pre">K</span></tt><em>i</em> and <em>value</em> <tt class="docutils literal"><span class="pre">a</span></tt><em>i</em></li>
+<li>Otherwise, a <a class="reference internal" href="#tagged-reference">tagged reference</a> with <a class="reference internal" href="#kw">keyword</a> <tt class="docutils literal"><span class="pre">K</span></tt><em>i</em> and <em>value</em> <tt class="docutils literal"><span class="pre">a</span></tt><em>i</em></li>
 </ul>
 </td>
 </tr>
@@ -530,14 +530,14 @@
 </dd>
 </dl>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id42" id="optional-required" name="optional-required"><span id="required"></span><span id="optional"></span>4.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">optional</span></tt>, <tt class="docutils literal"><span class="pre">required</span></tt></a></h2>
+<div class="section" id="optional-required">
+<span id="required"></span><span id="optional"></span><h2><a class="toc-backref" href="#id42">4.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">optional</span></tt>, <tt class="docutils literal"><span class="pre">required</span></tt></a></h2>
 <p>These templates describe the requirements on a function parameter.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/parameters.hpp">boost/parameter/parameters.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/parameters.hpp">boost/parameter/parameters.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -546,7 +546,7 @@
 <col class="field-body" />
 <tbody valign="top">
 <tr class="field"><th class="field-name" colspan="2">Specializations model:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body"><a class="reference" href="#parameterspec"><span class="concept">ParameterSpec</span></a></td>
+<tr><td>&nbsp;</td><td class="field-body"><a class="reference internal" href="#parameterspec"><span class="concept">ParameterSpec</span></a></td>
 </tr>
 </tbody>
 </table>
@@ -557,18 +557,18 @@
 template &lt;class Tag, class Predicate = <em>unspecified</em>&gt;
 struct required;
 </pre>
-<p>The default value of <tt class="docutils literal"><span class="pre">Predicate</span></tt> is an unspecified <a class="reference" href="../../../mpl/doc/refmanual/metafunction.html"><span class="concept">Metafunction</span></a> that returns
+<p>The default value of <tt class="docutils literal"><span class="pre">Predicate</span></tt> is an unspecified <a class="reference external" href="../../../mpl/doc/refmanual/metafunction.html"><span class="concept">Metafunction</span></a> that returns
 <tt class="docutils literal"><span class="pre">mpl::true_</span></tt> for any argument.</p>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id43" id="deduced" name="deduced">4.4&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">deduced</span></tt></a></h2>
+<div class="section" id="deduced">
+<h2><a class="toc-backref" href="#id43">4.4&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">deduced</span></tt></a></h2>
 <p>This template is used to wrap the <em>keyword tag</em> argument to
 <tt class="docutils literal"><span class="pre">optional</span></tt> or <tt class="docutils literal"><span class="pre">required</span></tt>.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/parameters.hpp">boost/parameter/parameters.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/parameters.hpp">boost/parameter/parameters.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -579,19 +579,19 @@
 </div>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id44" id="metafunctions" name="metafunctions">5&nbsp;&nbsp;&nbsp;Metafunctions</a></h1>
-<p>A <a class="reference" href="../../../mpl/doc/refmanual/metafunction.html"><span class="concept">Metafunction</span></a> is conceptually a function that operates on, and
+<div class="section" id="metafunctions">
+<h1><a class="toc-backref" href="#id44">5&nbsp;&nbsp;&nbsp;Metafunctions</a></h1>
+<p>A <a class="reference external" href="../../../mpl/doc/refmanual/metafunction.html"><span class="concept">Metafunction</span></a> is conceptually a function that operates on, and
 returns, C++ types.</p>
-<div class="section">
-<h2><a class="toc-backref" href="#id45" id="binding" name="binding">5.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">binding</span></tt></a></h2>
+<div class="section" id="binding">
+<h2><a class="toc-backref" href="#id45">5.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">binding</span></tt></a></h2>
 <p>Returns the result type of indexing an argument pack with a
-<a class="reference" href="#keyword-tag-type">keyword tag type</a> or with a <a class="reference" href="#tagged-default">tagged default</a>.</p>
+<a class="reference internal" href="#keyword-tag-type">keyword tag type</a> or with a <a class="reference internal" href="#tagged-default">tagged default</a>.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined n:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/binding.hpp">boost/parameter/binding.hpp</a></td>
+<tr class="field"><th class="field-name">Defined n:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/binding.hpp">boost/parameter/binding.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -606,22 +606,22 @@
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><tt class="docutils literal"><span class="pre">A</span></tt> is a model of <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a>.</td>
+<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><tt class="docutils literal"><span class="pre">A</span></tt> is a model of <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a>.</td>
 </tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">the reference type of the <a class="reference" href="#tagged-reference">tagged reference</a> in <tt class="docutils literal"><span class="pre">A</span></tt>
-having <a class="reference" href="#keyword-tag-type">keyword tag type</a> <tt class="docutils literal"><span class="pre">K</span></tt>, if any. If no such <a class="reference" href="#tagged-reference">tagged reference</a> exists, returns <tt class="docutils literal"><span class="pre">D</span></tt>.</td>
+<tr class="field"><th class="field-name">Returns:</th><td class="field-body">the reference type of the <a class="reference internal" href="#tagged-reference">tagged reference</a> in <tt class="docutils literal"><span class="pre">A</span></tt>
+having <a class="reference internal" href="#keyword-tag-type">keyword tag type</a> <tt class="docutils literal"><span class="pre">K</span></tt>, if any. If no such <a class="reference internal" href="#tagged-reference">tagged reference</a> exists, returns <tt class="docutils literal"><span class="pre">D</span></tt>.</td>
 </tr>
 </tbody>
 </table>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id46" id="lazy-binding" name="lazy-binding">5.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">lazy_binding</span></tt></a></h2>
-<p>Returns the result type of indexing an argument pack with a <a class="reference" href="#tagged-lazy-default">tagged lazy default</a>.</p>
+<div class="section" id="lazy-binding">
+<h2><a class="toc-backref" href="#id46">5.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">lazy_binding</span></tt></a></h2>
+<p>Returns the result type of indexing an argument pack with a <a class="reference internal" href="#tagged-lazy-default">tagged lazy default</a>.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/binding.hpp">boost/parameter/binding.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/binding.hpp">boost/parameter/binding.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -636,23 +636,23 @@
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><tt class="docutils literal"><span class="pre">A</span></tt> is a model of <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a>.</td>
+<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><tt class="docutils literal"><span class="pre">A</span></tt> is a model of <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a>.</td>
 </tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">the reference type of the <a class="reference" href="#tagged-reference">tagged reference</a> in <tt class="docutils literal"><span class="pre">A</span></tt>
-having <a class="reference" href="#keyword-tag-type">keyword tag type</a> <tt class="docutils literal"><span class="pre">K</span></tt>, if any. If no such <a class="reference" href="#tagged-reference">tagged reference</a> exists, returns <tt class="docutils literal"><span class="pre">boost::</span></tt><a class="reference" href="../../../utility/utility.htm#result_of"><tt class="docutils literal"><span class="pre">result_of</span></tt></a><tt class="docutils literal"><span class="pre">&lt;F()&gt;::type</span></tt>.<a class="footnote-reference" href="#no-result-of" id="id18" name="id18"><sup>2</sup></a></td>
+<tr class="field"><th class="field-name">Returns:</th><td class="field-body">the reference type of the <a class="reference internal" href="#tagged-reference">tagged reference</a> in <tt class="docutils literal"><span class="pre">A</span></tt>
+having <a class="reference internal" href="#keyword-tag-type">keyword tag type</a> <tt class="docutils literal"><span class="pre">K</span></tt>, if any. If no such <a class="reference internal" href="#tagged-reference">tagged reference</a> exists, returns <tt class="docutils literal"><span class="pre">boost::</span></tt><a class="reference external" href="../../../utility/utility.htm#result_of"><tt class="docutils literal"><span class="pre">result_of</span></tt></a><tt class="docutils literal"><span class="pre">&lt;F()&gt;::type</span></tt>.<a class="footnote-reference" href="#no-result-of" id="id18"><sup>2</sup></a></td>
 </tr>
 </tbody>
 </table>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id47" id="value-type" name="value-type">5.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">value_type</span></tt></a></h2>
+<div class="section" id="value-type">
+<h2><a class="toc-backref" href="#id47">5.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">value_type</span></tt></a></h2>
 <p>Returns the result type of indexing an argument pack with a
-<a class="reference" href="#keyword-tag-type">keyword tag type</a> or with a <a class="reference" href="#tagged-default">tagged default</a>.</p>
+<a class="reference internal" href="#keyword-tag-type">keyword tag type</a> or with a <a class="reference internal" href="#tagged-default">tagged default</a>.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined n:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/value_type.hpp">boost/parameter/value_type.hpp</a></td>
+<tr class="field"><th class="field-name">Defined n:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/value_type.hpp">boost/parameter/value_type.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -667,11 +667,11 @@
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><p class="first"><tt class="docutils literal"><span class="pre">A</span></tt> is a model of <a class="reference" href="#argumentpack"><span class="concept">ArgumentPack</span></a>.</p>
+<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><p class="first"><tt class="docutils literal"><span class="pre">A</span></tt> is a model of <a class="reference internal" href="#argumentpack"><span class="concept">ArgumentPack</span></a>.</p>
 </td>
 </tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">the type of the <a class="reference" href="#tagged-reference">tagged reference</a> in <tt class="docutils literal"><span class="pre">A</span></tt>
-having <a class="reference" href="#keyword-tag-type">keyword tag type</a> <tt class="docutils literal"><span class="pre">K</span></tt>, if any. If no such <a class="reference" href="#tagged-reference">tagged reference</a> exists, returns <tt class="docutils literal"><span class="pre">D</span></tt>. Equivalent to:</p>
+<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">the type of the <a class="reference internal" href="#tagged-reference">tagged reference</a> in <tt class="docutils literal"><span class="pre">A</span></tt>
+having <a class="reference internal" href="#keyword-tag-type">keyword tag type</a> <tt class="docutils literal"><span class="pre">K</span></tt>, if any. If no such <a class="reference internal" href="#tagged-reference">tagged reference</a> exists, returns <tt class="docutils literal"><span class="pre">D</span></tt>. Equivalent to:</p>
 <pre class="literal-block">
 typename remove_reference&lt;
   typename binding&lt;A, K, D&gt;::type
@@ -685,17 +685,17 @@
 </div>
 </div>
 <hr class="docutils" />
-<div class="section">
-<h1><a class="toc-backref" href="#id48" id="code-generation-macros" name="code-generation-macros">6&nbsp;&nbsp;&nbsp;Code Generation Macros</a></h1>
+<div class="section" id="code-generation-macros">
+<h1><a class="toc-backref" href="#id48">6&nbsp;&nbsp;&nbsp;Code Generation Macros</a></h1>
 <p>Macros in this section can be used to ease the writing of code
 using the Parameter libray by eliminating repetitive boilerplate.</p>
-<div class="section">
-<h2><a class="toc-backref" href="#id49" id="boost-parameter-function-result-name-tag-namespace-arguments" name="boost-parameter-function-result-name-tag-namespace-arguments">6.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUNCTION(result,name,tag_namespace,arguments)</span></tt></a></h2>
+<div class="section" id="boost-parameter-function-result-name-tag-namespace-arguments">
+<h2><a class="toc-backref" href="#id49">6.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUNCTION(result,name,tag_namespace,arguments)</span></tt></a></h2>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/preprocessor.hpp">boost/parameter/preprocessor.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/preprocessor.hpp">boost/parameter/preprocessor.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -729,7 +729,7 @@
 </pre>
 <p class="last"><tt class="docutils literal"><span class="pre">name</span></tt> is any valid C++ identifier. <tt class="docutils literal"><span class="pre">default-value</span></tt> is any valid
 C++ expression. <tt class="docutils literal"><span class="pre">typename</span></tt> is the name of a type.
-<tt class="docutils literal"><span class="pre">lambda-expression</span></tt> is an <a class="reference" href="../../../mpl/doc/refmanual/lambda-expression.html">MPL lambda expression</a>.</p>
+<tt class="docutils literal"><span class="pre">lambda-expression</span></tt> is an <a class="reference external" href="../../../mpl/doc/refmanual/lambda-expression.html">MPL lambda expression</a>.</p>
 </td>
 </tr>
 </tbody>
@@ -813,25 +813,25 @@
 </dd>
 </dl>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id50" id="boost-parameter-member-function-result-name-tag-namespace-arguments" name="boost-parameter-member-function-result-name-tag-namespace-arguments">6.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MEMBER_FUNCTION(result,name,tag_namespace,arguments)</span></tt></a></h2>
+<div class="section" id="boost-parameter-member-function-result-name-tag-namespace-arguments">
+<h2><a class="toc-backref" href="#id50">6.2&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MEMBER_FUNCTION(result,name,tag_namespace,arguments)</span></tt></a></h2>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/preprocessor.hpp">boost/parameter/preprocessor.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/preprocessor.hpp">boost/parameter/preprocessor.hpp</a></td>
 </tr>
 </tbody>
 </table>
 <p>See <tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUNCTION(result,name,tag_namespace,arguments)</span></tt></p>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id51" id="boost-parameter-constructor-cls-impl-tag-namespace-arguments" name="boost-parameter-constructor-cls-impl-tag-namespace-arguments">6.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_CONSTRUCTOR(cls,</span> <span class="pre">impl,</span> <span class="pre">tag_namespace,</span> <span class="pre">arguments)</span></tt></a></h2>
+<div class="section" id="boost-parameter-constructor-cls-impl-tag-namespace-arguments">
+<h2><a class="toc-backref" href="#id51">6.3&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_CONSTRUCTOR(cls,</span> <span class="pre">impl,</span> <span class="pre">tag_namespace,</span> <span class="pre">arguments)</span></tt></a></h2>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/preprocessor.hpp">boost/parameter/preprocessor.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/preprocessor.hpp">boost/parameter/preprocessor.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -888,8 +888,8 @@
 </dd>
 </dl>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id52" id="boost-parameter-name-name" name="boost-parameter-name-name">6.4&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_NAME(name)</span></tt></a></h2>
+<div class="section" id="boost-parameter-name-name">
+<h2><a class="toc-backref" href="#id52">6.4&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_NAME(name)</span></tt></a></h2>
 <p>Declares a tag-type and keyword object.</p>
 <p>Expands to:</p>
 <p><strong>If</strong> <em>name</em> is of the form:</p>
@@ -935,8 +935,8 @@
     = ::boost::parameter::keyword&lt;tag::<em>name</em>&gt;::instance;
 </pre>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id53" id="boost-parameter-template-keyword-name" name="boost-parameter-template-keyword-name">6.5&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_TEMPLATE_KEYWORD(name)</span></tt></a></h2>
+<div class="section" id="boost-parameter-template-keyword-name">
+<h2><a class="toc-backref" href="#id53">6.5&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_TEMPLATE_KEYWORD(name)</span></tt></a></h2>
 <p>Expands to:</p>
 <pre class="literal-block">
 namespace tag
@@ -950,14 +950,14 @@
 {};
 </pre>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id54" id="boost-parameter-fun-r-n-l-h-p" name="boost-parameter-fun-r-n-l-h-p">6.6&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUN(r,n,l,h,p)</span></tt></a></h2>
+<div class="section" id="boost-parameter-fun-r-n-l-h-p">
+<h2><a class="toc-backref" href="#id54">6.6&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUN(r,n,l,h,p)</span></tt></a></h2>
 <div class="admonition-deprecated admonition">
 <p class="first admonition-title">Deprecated</p>
 <p class="last">This macro has been deprecated in favor of
 <tt class="docutils literal"><span class="pre">BOOST_PARAMETER_FUNCTION</span></tt>.</p>
 </div>
-<p>Generates a sequence of <a class="reference" href="index.html#forwarding-functions">forwarding function</a> templates named
+<p>Generates a sequence of <a class="reference external" href="index.html#forwarding-functions">forwarding function</a> templates named
 <tt class="docutils literal"><span class="pre">n</span></tt>, with arities ranging from <tt class="docutils literal"><span class="pre">l</span></tt> to <tt class="docutils literal"><span class="pre">h</span></tt> , returning <tt class="docutils literal"><span class="pre">r</span></tt>,
 and using <tt class="docutils literal"><span class="pre">p</span></tt> to control overload resolution and assign tags to
 positional arguments.</p>
@@ -965,7 +965,7 @@
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/macros.hpp">boost/parameter/macros.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/macros.hpp">boost/parameter/macros.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -989,13 +989,13 @@
    return <strong>name</strong>_with_named_params(<strong>p</strong>(x1,x2,…x<strong>l</strong>));
 }
 
-template &lt;class A1, class A2, …class A<strong>l</strong>, class A##<a class="reference" href="../../../preprocessor/doc/ref/inc.html">BOOST_PP_INC</a>(<strong>l</strong>)&gt;
+template &lt;class A1, class A2, …class A<strong>l</strong>, class A##<a class="reference external" href="../../../preprocessor/doc/ref/inc.html">BOOST_PP_INC</a>(<strong>l</strong>)&gt;
 r name(
     A1 const&amp; a1, A2 const&amp; a2, …A<strong>l</strong> const&amp; x<strong>l</strong>
- , A##<a class="reference" href="../../../preprocessor/doc/ref/inc.html">BOOST_PP_INC</a>(<strong>l</strong>) const&amp; x##<a class="reference" href="../../../preprocessor/doc/ref/inc.html">BOOST_PP_INC</a>(<strong>l</strong>)
- , typename <strong>p</strong>::match&lt;A1,A2,…A<strong>l</strong>,A##<a class="reference" href="../../../preprocessor/doc/ref/inc.html">BOOST_PP_INC</a>(<strong>l</strong>)&gt;::type p = <strong>p</strong>())
+ , A##<a class="reference external" href="../../../preprocessor/doc/ref/inc.html">BOOST_PP_INC</a>(<strong>l</strong>) const&amp; x##<a class="reference external" href="../../../preprocessor/doc/ref/inc.html">BOOST_PP_INC</a>(<strong>l</strong>)
+ , typename <strong>p</strong>::match&lt;A1,A2,…A<strong>l</strong>,A##<a class="reference external" href="../../../preprocessor/doc/ref/inc.html">BOOST_PP_INC</a>(<strong>l</strong>)&gt;::type p = <strong>p</strong>())
 {
- return <strong>name</strong>_with_named_params(<strong>p</strong>(x1,x2,…x<strong>l</strong>,x##<a class="reference" href="../../../preprocessor/doc/ref/inc.html">BOOST_PP_INC</a>(<strong>l</strong>)));
+ return <strong>name</strong>_with_named_params(<strong>p</strong>(x1,x2,…x<strong>l</strong>,x##<a class="reference external" href="../../../preprocessor/doc/ref/inc.html">BOOST_PP_INC</a>(<strong>l</strong>)));
 }
 
 <span class="vellipsis">â‹®</span>
@@ -1011,21 +1011,21 @@
 </dd>
 </dl>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id55" id="boost-parameter-keyword-n-k" name="boost-parameter-keyword-n-k">6.7&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_KEYWORD(n,k)</span></tt></a></h2>
+<div class="section" id="boost-parameter-keyword-n-k">
+<h2><a class="toc-backref" href="#id55">6.7&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_KEYWORD(n,k)</span></tt></a></h2>
 <div class="admonition-deprecated admonition">
 <p class="first admonition-title">Deprecated</p>
 <p class="last">This macro has been deprecated in favor of
 <tt class="docutils literal"><span class="pre">BOOST_PARAMETER_NAME</span></tt>.</p>
 </div>
-<p>Generates the declaration of a <a class="reference" href="#keyword-tag-type">keyword tag type</a> named <tt class="docutils literal"><span class="pre">k</span></tt> in
-namespace <tt class="docutils literal"><span class="pre">n</span></tt>, and a corresponding <a class="reference" href="#keyword-object">keyword object</a> definition in
+<p>Generates the declaration of a <a class="reference internal" href="#keyword-tag-type">keyword tag type</a> named <tt class="docutils literal"><span class="pre">k</span></tt> in
+namespace <tt class="docutils literal"><span class="pre">n</span></tt>, and a corresponding <a class="reference internal" href="#keyword-object">keyword object</a> definition in
 the enclosing namespace.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/keyword.hpp">boost/parameter/keyword.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/keyword.hpp">boost/parameter/keyword.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -1041,15 +1041,15 @@
 </dd>
 </dl>
 </div>
-<div class="section">
-<h2><a class="toc-backref" href="#id56" id="boost-parameter-match-p-a-x" name="boost-parameter-match-p-a-x">6.8&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MATCH(p,a,x)</span></tt></a></h2>
-<p>Generates a defaulted parameter declaration for a <a class="reference" href="index.html#forwarding-functions">forwarding
+<div class="section" id="boost-parameter-match-p-a-x">
+<h2><a class="toc-backref" href="#id56">6.8&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MATCH(p,a,x)</span></tt></a></h2>
+<p>Generates a defaulted parameter declaration for a <a class="reference external" href="index.html#forwarding-functions">forwarding
 function</a>.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/match.hpp">boost/parameter/match.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/match.hpp">boost/parameter/match.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -1057,7 +1057,7 @@
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><p class="first"><tt class="docutils literal"><span class="pre">a</span></tt> is a <a class="reference" href="http://www.boost.org/libs/preprocessor/doc/data.html">Boost.Preprocessor sequence</a>
+<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><p class="first"><tt class="docutils literal"><span class="pre">a</span></tt> is a <a class="reference external" href="http://www.boost.org/libs/preprocessor/doc/data.html">Boost.Preprocessor sequence</a>
 of the form</p>
 <pre class="last literal-block">
 (A0)(A1)…(A<em>n</em>)
@@ -1075,10 +1075,10 @@
 </dl>
 </div>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id57" id="configuration-macros" name="configuration-macros">7&nbsp;&nbsp;&nbsp;Configuration Macros</a></h1>
-<div class="section">
-<h2><a class="toc-backref" href="#id58" id="boost-parameter-max-arity" name="boost-parameter-max-arity">7.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MAX_ARITY</span></tt></a></h2>
+<div class="section" id="configuration-macros">
+<h1><a class="toc-backref" href="#id57">7&nbsp;&nbsp;&nbsp;Configuration Macros</a></h1>
+<div class="section" id="boost-parameter-max-arity">
+<h2><a class="toc-backref" href="#id58">7.1&nbsp;&nbsp;&nbsp;<tt class="docutils literal"><span class="pre">BOOST_PARAMETER_MAX_ARITY</span></tt></a></h2>
 <p>Determines the maximum number of arguments supported by the
 library. Will only be <tt class="docutils literal"><span class="pre">#defined</span></tt> by the library if it is not
 already <tt class="docutils literal"><span class="pre">#defined</span></tt>.</p>
@@ -1086,7 +1086,7 @@
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
-<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference" href="../../../../boost/parameter/config.hpp">boost/parameter/config.hpp</a></td>
+<tr class="field"><th class="field-name">Defined in:</th><td class="field-body"><a class="reference external" href="../../../../boost/parameter/config.hpp">boost/parameter/config.hpp</a></td>
 </tr>
 </tbody>
 </table>
@@ -1100,15 +1100,15 @@
 </table>
 </div>
 </div>
-<div class="section">
-<h1><a class="toc-backref" href="#id59" id="tutorial" name="tutorial">8&nbsp;&nbsp;&nbsp;Tutorial</a></h1>
-<p>Follow <a class="reference" href="index.html#tutorial">this link</a> to the Boost.Parameter tutorial
+<div class="section" id="tutorial">
+<h1><a class="toc-backref" href="#id59">8&nbsp;&nbsp;&nbsp;Tutorial</a></h1>
+<p>Follow <a class="reference external" href="index.html#tutorial">this link</a> to the Boost.Parameter tutorial
 documentation.</p>
 <hr class="docutils" />
 <table class="docutils footnote" frame="void" id="thread" rules="none">
 <colgroup><col class="label" /><col /></colgroup>
 <tbody valign="top">
-<tr><td class="label"><a class="fn-backref" href="#id2" name="thread">[1]</a></td><td>References to tag objects may be initialized multiple
+<tr><td class="label"><a class="fn-backref" href="#id2">[1]</a></td><td>References to tag objects may be initialized multiple
 times. This scenario can only occur in the presence of
 threading. Because the C++ standard doesn't consider threading,
 it doesn't explicitly allow or forbid multiple initialization of
@@ -1119,8 +1119,8 @@
 <table class="docutils footnote" frame="void" id="no-result-of" rules="none">
 <colgroup><col class="label" /><col /></colgroup>
 <tbody valign="top">
-<tr><td class="label"><a name="no-result-of">[2]</a></td><td><em>(<a class="fn-backref" href="#id11">1</a>, <a class="fn-backref" href="#id18">2</a>)</em> Where <a class="reference" href="../../../utility/utility.htm#BOOST_NO_RESULT_OF"><tt class="docutils literal"><span class="pre">BOOST_NO_RESULT_OF</span></tt></a> is <tt class="docutils literal"><span class="pre">#defined</span></tt>,
-<tt class="docutils literal"><span class="pre">boost::</span></tt><a class="reference" href="../../../utility/utility.htm#result_of"><tt class="docutils literal"><span class="pre">result_of</span></tt></a><tt class="docutils literal"><span class="pre">&lt;F()&gt;::type</span></tt> is replaced by
+<tr><td class="label">[2]</td><td><em>(<a class="fn-backref" href="#id11">1</a>, <a class="fn-backref" href="#id18">2</a>)</em> Where <a class="reference external" href="../../../utility/utility.htm#BOOST_NO_RESULT_OF"><tt class="docutils literal"><span class="pre">BOOST_NO_RESULT_OF</span></tt></a> is <tt class="docutils literal"><span class="pre">#defined</span></tt>,
+<tt class="docutils literal"><span class="pre">boost::</span></tt><a class="reference external" href="../../../utility/utility.htm#result_of"><tt class="docutils literal"><span class="pre">result_of</span></tt></a><tt class="docutils literal"><span class="pre">&lt;F()&gt;::type</span></tt> is replaced by
 <tt class="docutils literal"><span class="pre">F::result_type</span></tt>.</td></tr>
 </tbody>
 </table>
@@ -1128,8 +1128,8 @@
 </div>
 <div class="footer">
 <hr class="footer" />
-Generated on: 2007-05-03 14:17 UTC.
-Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
+Generated on: 2008-06-26 21:51 UTC.
+Generated by <a class="reference external" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
 
 </div>
 </body>

Modified: branches/CMake/release/libs/parameter/doc/index.rst
==============================================================================
--- branches/CMake/release/libs/parameter/doc/index.rst (original)
+++ branches/CMake/release/libs/parameter/doc/index.rst 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -86,7 +86,12 @@
 
 -------------------------------------
 
+[Note: this tutorial does not cover all details of the library. Please see also the `reference documentation`__\ ]
+
+__ reference.html
+
 .. contents:: **Table of Contents**
+ :depth: 2
 
 .. role:: concept
    :class: concept

Modified: branches/CMake/release/libs/parameter/doc/reference.rst
==============================================================================
--- branches/CMake/release/libs/parameter/doc/reference.rst (original)
+++ branches/CMake/release/libs/parameter/doc/reference.rst 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -803,8 +803,8 @@
             return ##\ *tag-name*;
         }
 
- typedef *implementation defined* _;
- typedef *implementation defined* _1;
+ typedef *unspecified* _;
+ typedef *unspecified* _1;
     };
   }
 
@@ -824,8 +824,8 @@
             return ##\ *name*;
         }
 
- typedef *implementation defined* _;
- typedef *implementation defined* _1;
+ typedef *unspecified* _;
+ typedef *unspecified* _1;
     };
   }
 

Modified: branches/CMake/release/libs/program_options/doc/overview.xml
==============================================================================
--- branches/CMake/release/libs/program_options/doc/overview.xml (original)
+++ branches/CMake/release/libs/program_options/doc/overview.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -185,16 +185,14 @@
     ("email", value&lt;string&gt;()->multitoken(), "email to send to")
     ;
       </programlisting>
- For the first option (<literal>help</literal>), we specify only the name
- and the description. No value can be specified in the parsed source.
- For the second option (<literal>compression</literal>), the user must
- specify a value, using a single token. For the third option
- (<literal>verbose</literal>), the user may either provide a single token
- for the value, or no token at all. For the last option
- (<literal>email</literal>), the value can span several tokens. For
- example, the following command line is OK:
+ For the first parameter, we specify only the name and the
+ description. No value can be specified in the parsed source.
+ For the first option, the user must specify a value, using a single
+ token. For the third option, the user may either provide a single token
+ for the value, or no token at all. For the last option, the value can
+ span several tokens. For example, the following command line is OK:
       <screen>
- test --help --compression 10 --verbose --email beagle_at_mars beagle2_at_mars
+ test --help --compression 10 --verbose --email beadle_at_mars beadle2_at_mars
       </screen>
       </para>
 

Modified: branches/CMake/release/libs/program_options/example/first.cpp
==============================================================================
--- branches/CMake/release/libs/program_options/example/first.cpp (original)
+++ branches/CMake/release/libs/program_options/example/first.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -21,12 +21,11 @@
         desc.add_options()
             ("help", "produce help message")
             ("compression", po::value<int>(), "set compression level")
- ("verbose", po::value<string>()->zero_tokens()->implicit_value(""))
         ;
 
- po::variables_map vm;
+ po::variables_map vm;
         po::store(po::parse_command_line(ac, av, desc), vm);
- po::notify(vm);
+ po::notify(vm);
 
         if (vm.count("help")) {
             cout << desc << "\n";
@@ -34,17 +33,11 @@
         }
 
         if (vm.count("compression")) {
- cout << "Compression level was set to "
+ cout << "Compression level was set to "
                  << vm["compression"].as<int>() << ".\n";
         } else {
             cout << "Compression level was not set.\n";
         }
-
- if (vm.count("verbose")) {
- string v = vm["verbose"].as<string>();
- if (v.size() > 0)
- cout << "Verbosity is: " << v << ".\n";
- }
     }
     catch(exception& e) {
         cerr << "error: " << e.what() << "\n";

Modified: branches/CMake/release/libs/ptr_container/doc/examples.html
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/examples.html (original)
+++ branches/CMake/release/libs/ptr_container/doc/examples.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -423,8 +423,9 @@
 </div>
 <div class="section">
 <h1><a class="toc-backref" href="#id10" id="a-large-example" name="a-large-example">9. A large example</a></h1>
-<p>This examples shows many of the most common
-features at work. The example provide lots of comments.</p>
+<p>This example shows many of the most common
+features at work. The example provide lots of comments.
+The source code can also be found <a class="reference" href="../test/tut1.cpp">here</a>.</p>
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

Modified: branches/CMake/release/libs/ptr_container/doc/examples.rst
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/examples.rst (original)
+++ branches/CMake/release/libs/ptr_container/doc/examples.rst 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -160,8 +160,9 @@
 9. A large example
 ++++++++++++++++++
 
-This examples shows many of the most common
+This example shows many of the most common
 features at work. The example provide lots of comments.
+The source code can also be found `here <../test/tut1.cpp>`_.
 
 .. raw:: html
         :file: tutorial_example.html

Modified: branches/CMake/release/libs/ptr_container/doc/guidelines.html
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/guidelines.html (original)
+++ branches/CMake/release/libs/ptr_container/doc/guidelines.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -304,7 +304,7 @@
 </div>
 <div class="section">
 <h1><a class="toc-backref" href="#id8" id="choosing-the-right-container" name="choosing-the-right-container">Choosing the right container</a></h1>
-<p>The recommended usage pattern of the container classes are the same as the
+<p>The recommended usage pattern of the container classes is the same as
 for normal standard containers.</p>
 <p><tt class="docutils literal"><span class="pre">ptr_vector</span></tt>, <tt class="docutils literal"><span class="pre">ptr_list</span></tt> and <tt class="docutils literal"><span class="pre">ptr_deque</span></tt> offer the programmer different
 complexity tradeoffs and should be used accordingly. <tt class="docutils literal"><span class="pre">ptr_vector</span></tt> is the

Modified: branches/CMake/release/libs/ptr_container/doc/guidelines.rst
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/guidelines.rst (original)
+++ branches/CMake/release/libs/ptr_container/doc/guidelines.rst 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,7 +13,7 @@
 Choosing the right container
 ----------------------------
 
-The recommended usage pattern of the container classes are the same as the
+The recommended usage pattern of the container classes is the same as
 for normal standard containers.
 
 ``ptr_vector``, ``ptr_list`` and ``ptr_deque`` offer the programmer different

Modified: branches/CMake/release/libs/ptr_container/doc/headers.html
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/headers.html (original)
+++ branches/CMake/release/libs/ptr_container/doc/headers.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -292,8 +292,8 @@
 <h2 class="subtitle" id="library-headers">Library headers</h2>
 <table border="1" class="docutils">
 <colgroup>
-<col width="34%" />
-<col width="66%" />
+<col width="29%" />
+<col width="71%" />
 </colgroup>
 <tbody valign="top">
 <tr><td><strong>Header</strong></td>
@@ -323,6 +323,9 @@
 <td>classes <a class="reference" href="ptr_map.html">ptr_map</a> and <a class="reference" href="ptr_multimap.html">ptr_multimap</a>
 (and <tt class="docutils literal"><span class="pre">std::map</span></tt> and <tt class="docutils literal"><span class="pre">std::multimap</span></tt>)</td>
 </tr>
+<tr><td><tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/ptr_inserter.hpp&gt;</span></tt></td>
+<td>functions <a class="reference" href="ptr_inserter.html">ptr_back_inserter</a>, <a class="reference" href="ptr_inserter.html">ptr_front_inserter</a> and <a class="reference" href="ptr_inserter.html">ptr_inserter</a></td>
+</tr>
 <tr><td><tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/ptr_container.hpp&gt;</span></tt></td>
 <td>all classes</td>
 </tr>

Modified: branches/CMake/release/libs/ptr_container/doc/headers.rst
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/headers.rst (original)
+++ branches/CMake/release/libs/ptr_container/doc/headers.rst 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -28,6 +28,8 @@
 ``<boost/ptr_container/ptr_map.hpp>`` classes `ptr_map <ptr_map.html>`_ and `ptr_multimap <ptr_multimap.html>`_
                                                            (and ``std::map`` and ``std::multimap``)
 
+``<boost/ptr_container/ptr_inserter.hpp>`` functions `ptr_back_inserter <ptr_inserter.html>`_, `ptr_front_inserter <ptr_inserter.html>`_ and `ptr_inserter <ptr_inserter.html>`_
+
 ``<boost/ptr_container/ptr_container.hpp>`` all classes
 
 ``<boost/ptr_container/ptr_sequence_adapter.hpp>`` class `ptr_sequence_adapter <ptr_sequence_adapter.html>`_

Modified: branches/CMake/release/libs/ptr_container/doc/ptr_container.html
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/ptr_container.html (original)
+++ branches/CMake/release/libs/ptr_container/doc/ptr_container.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -325,6 +325,7 @@
 <li><a class="reference" href="faq.html">FAQ</a></li>
 <li><a class="reference" href="#upgrading-from-boost-v-1-33">Upgrading from Boost v. 1.33.*</a></li>
 <li><a class="reference" href="#upgrading-from-boost-v-1-34">Upgrading from Boost v. 1.34.*</a></li>
+<li><a class="reference" href="#upgrading-from-boost-v-1-35">Upgrading from Boost v. 1.35.*</a></li>
 <li><a class="reference" href="#future-developments">Future Developments</a></li>
 <li><a class="reference" href="#acknowledgements">Acknowledgements</a></li>
 <li><a class="reference" href="#references">References</a></li>
@@ -401,7 +402,7 @@
 </ol>
 <!-- -->
 <ol class="arabic simple" start="8">
-<li>Built-in support for deep-copy semantics via the <a class="reference" href="reference.html#the-cloneable-concept">the Cloneable concept</a></li>
+<li>Built-in support for deep-copy semantics via the <a class="reference" href="reference.html#the-clonable-concept">the Clonable concept</a></li>
 </ol>
 <p>The disadvantages are</p>
 <ol class="arabic simple">
@@ -455,7 +456,7 @@
 </div>
 <div class="section">
 <h1><a id="upgrading-from-boost-v-1-34" name="upgrading-from-boost-v-1-34">Upgrading from Boost v. <tt class="docutils literal"><span class="pre">1.34.*</span></tt></a></h1>
-<p>Serialization have now been made optional thanks to Sebastian Ramacher.
+<p>Serialization has now been made optional thanks to Sebastian Ramacher.
 You simply include <tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/serialize.hpp&gt;</span></tt> or perhaps
 just one of the more specialized headers.</p>
 <p>All containers are now copy-constructible and assignable. So you can e.g. now
@@ -472,7 +473,7 @@
 const VoidPtrContainer&amp; base() const;
 </pre>
 <p>These allow direct access to the wrapped container which is
-somtimes needed when you want to provide extra functionality.</p>
+sometimes needed when you want to provide extra functionality.</p>
 <p>A few new functions have been added to sequences:</p>
 <pre class="literal-block">
 void resize( size_type size );
@@ -483,18 +484,44 @@
 void transfer( iterator before, T** from, size_type size, bool delete_from = true );
 T** c_array();
 </pre>
-<p>Finally you can now also &quot;copy&quot; and &quot;assign&quot; an <tt class="docutils literal"><span class="pre">auto_type</span></tt> ptr by calling <tt class="docutils literal"><span class="pre">move()</span></tt>:</p>
+<p>Finally, you can now also &quot;copy&quot; and &quot;assign&quot; an <tt class="docutils literal"><span class="pre">auto_type</span></tt> ptr by calling <tt class="docutils literal"><span class="pre">move()</span></tt>:</p>
 <pre class="literal-block">
 boost::ptr_vector&lt;T&gt;::auto_type move_ptr = ...;
 return boost::ptr_container::move( move_ptr );
 </pre>
 </div>
 <div class="section">
+<h1><a id="upgrading-from-boost-v-1-35" name="upgrading-from-boost-v-1-35">Upgrading from Boost v. <tt class="docutils literal"><span class="pre">1.35.*</span></tt></a></h1>
+<p>The library has been fairly stable, but a few new containers have been supported:</p>
+<ul class="simple">
+<li><tt class="docutils literal"><span class="pre">boost::ptr_unordered_set&lt;T&gt;</span></tt> in <tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/ptr_unordered_set.hpp&gt;</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">boost::ptr_unordered_map&lt;Key,T&gt;</span></tt> in <tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/ptr_unordered_map.hpp&gt;</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">boost::ptr_circular_buffer&lt;T&gt;</span></tt> in <tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/ptr_circular_buffer.hpp&gt;</span></tt></li>
+</ul>
+<p>There are no docs for these classes yet, but they are almost identical to
+<tt class="docutils literal"><span class="pre">boost::ptr_set&lt;T&gt;</span></tt>, <tt class="docutils literal"><span class="pre">boost::ptr_map&lt;Key,T&gt;</span></tt> and <tt class="docutils literal"><span class="pre">boost::ptr_array&lt;T,N&gt;</span></tt>, respectively.
+The underlying containers stem from the two boost libraries</p>
+<ul class="simple">
+<li><a class="reference" href="../../unordered/index.html">Boost.Unordered</a></li>
+<li><a class="reference" href="../../circular_buffer/index.html">Boost.Circular Buffer</a></li>
+</ul>
+<p>Furthermore, <a class="reference" href="ptr_inserter.html">insert iterators</a> have been added.</p>
+</div>
+<div class="section">
 <h1><a id="future-developments" name="future-developments">Future Developments</a></h1>
 <p>There are indications that the <tt class="docutils literal"><span class="pre">void*</span></tt> implementation has a slight
 performance overhead compared to a <tt class="docutils literal"><span class="pre">T*</span></tt> based implementation. Furthermore, a
 <tt class="docutils literal"><span class="pre">T*</span></tt> based implementation is so much easier to use type-safely
 with algorithms. Therefore I anticipate to move to a <tt class="docutils literal"><span class="pre">T*</span></tt> based implementation.</p>
+<p>Furthermore, the clone allocator might be allowed to have state.
+This design requires some thought, so if you have good ideas and use-cases'
+for this, please don't hesitate to contact me.</p>
+<p>Also, support for Boost.Interprocess is on the todo list.</p>
+<p>There has been a few request for <tt class="docutils literal"><span class="pre">boost::ptr_multi_index_container&lt;T,...&gt;</span></tt>.
+I investigated how difficult it would be, and it did turn out to be difficult, albeit
+not impossible. But I don't have the resources to implement this beast
+for years to come, so if someone really needs this container, I suggest that they
+talk with me in private about how it can be done.</p>
 </div>
 <div class="section">
 <h1><a id="acknowledgements" name="acknowledgements">Acknowledgements</a></h1>
@@ -515,7 +542,7 @@
 <li>Pavel Chikulaev for comments and bug-fixes</li>
 <li>Andreas Hommel for fixing the nasty Metrowerks bug</li>
 <li>Charles Brockman for his many comments on the documentation</li>
-<li>Sebastian Ramacher for implementing the optinal serialization support</li>
+<li>Sebastian Ramacher for implementing the optional serialization support</li>
 </ul>
 </div>
 <div class="section">

Modified: branches/CMake/release/libs/ptr_container/doc/ptr_container.rst
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/ptr_container.rst (original)
+++ branches/CMake/release/libs/ptr_container/doc/ptr_container.rst 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -37,6 +37,7 @@
 * FAQ_
 * `Upgrading from Boost v. 1.33.*`_
 * `Upgrading from Boost v. 1.34.*`_
+* `Upgrading from Boost v. 1.35.*`_
 * `Future Developments`_
 * Acknowledgements_
 * References_
@@ -134,9 +135,9 @@
 
 ..
 
-8. Built-in support for deep-copy semantics via the `the Cloneable concept`__
+8. Built-in support for deep-copy semantics via the `the Clonable concept`__
 
-.. __: reference.html#the-cloneable-concept
+.. __: reference.html#the-clonable-concept
 
 The disadvantages are
 
@@ -191,7 +192,7 @@
  Upgrading from Boost v. ``1.34.*``
 ====================================
 
-Serialization have now been made optional thanks to Sebastian Ramacher.
+Serialization has now been made optional thanks to Sebastian Ramacher.
 You simply include ``<boost/ptr_container/serialize.hpp>`` or perhaps
 just one of the more specialized headers.
 
@@ -210,7 +211,7 @@
     const VoidPtrContainer& base() const;
 
 These allow direct access to the wrapped container which is
-somtimes needed when you want to provide extra functionality.
+sometimes needed when you want to provide extra functionality.
     
 A few new functions have been added to sequences::
 
@@ -222,11 +223,33 @@
     void transfer( iterator before, T** from, size_type size, bool delete_from = true );
     T** c_array();
 
-Finally you can now also "copy" and "assign" an ``auto_type`` ptr by calling ``move()``::
+Finally, you can now also "copy" and "assign" an ``auto_type`` ptr by calling ``move()``::
 
     boost::ptr_vector<T>::auto_type move_ptr = ...;
     return boost::ptr_container::move( move_ptr );
 
+====================================
+ Upgrading from Boost v. ``1.35.*``
+====================================
+
+The library has been fairly stable, but a few new containers have been supported:
+
+- ``boost::ptr_unordered_set<T>`` in ``<boost/ptr_container/ptr_unordered_set.hpp>``
+
+- ``boost::ptr_unordered_map<Key,T>`` in ``<boost/ptr_container/ptr_unordered_map.hpp>``
+
+- ``boost::ptr_circular_buffer<T>`` in ``<boost/ptr_container/ptr_circular_buffer.hpp>``
+
+There are no docs for these classes yet, but they are almost identical to
+``boost::ptr_set<T>``, ``boost::ptr_map<Key,T>`` and ``boost::ptr_array<T,N>``, respectively.
+The underlying containers stem from the two boost libraries
+
+- `Boost.Unordered <../../unordered/index.html>`_
+
+- `Boost.Circular Buffer <../../circular_buffer/index.html>`_
+
+Furthermore, `insert iterators <ptr_inserter.html>`_ have been added.
+
 =====================
  Future Developments
 =====================
@@ -236,6 +259,18 @@
 ``T*`` based implementation is so much easier to use type-safely
 with algorithms. Therefore I anticipate to move to a ``T*`` based implementation.
 
+Furthermore, the clone allocator might be allowed to have state.
+This design requires some thought, so if you have good ideas and use-cases'
+for this, please don't hesitate to contact me.
+
+Also, support for Boost.Interprocess is on the todo list.
+
+There has been a few request for ``boost::ptr_multi_index_container<T,...>``.
+I investigated how difficult it would be, and it did turn out to be difficult, albeit
+not impossible. But I don't have the resources to implement this beast
+for years to come, so if someone really needs this container, I suggest that they
+talk with me in private about how it can be done.
+
 ================
 Acknowledgements
 ================
@@ -257,7 +292,7 @@
 - Pavel Chikulaev for comments and bug-fixes
 - Andreas Hommel for fixing the nasty Metrowerks bug
 - Charles Brockman for his many comments on the documentation
-- Sebastian Ramacher for implementing the optinal serialization support
+- Sebastian Ramacher for implementing the optional serialization support
 
 ==========
 References

Modified: branches/CMake/release/libs/ptr_container/doc/ptr_sequence_adapter.html
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/ptr_sequence_adapter.html (original)
+++ branches/CMake/release/libs/ptr_container/doc/ptr_sequence_adapter.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -467,7 +467,6 @@
 <ul class="simple">
 <li>Requirements: <tt class="docutils literal"><span class="pre">not</span> <span class="pre">empty();</span></tt></li>
 <li>Effects: <tt class="docutils literal"><span class="pre">return</span> <span class="pre">*begin();</span></tt></li>
-<li>Throws: <tt class="docutils literal"><span class="pre">bad_ptr_container_operation</span></tt> if <tt class="docutils literal"><span class="pre">empty()</span> <span class="pre">==</span> <span class="pre">true</span></tt></li>
 </ul>
 </blockquote>
 </li>
@@ -476,7 +475,6 @@
 <ul class="simple">
 <li>Requirements: <tt class="docutils literal"><span class="pre">not</span> <span class="pre">empty();</span></tt></li>
 <li>Effects: <tt class="docutils literal"><span class="pre">return</span> <span class="pre">*begin();</span></tt></li>
-<li>Throws: <tt class="docutils literal"><span class="pre">bad_ptr_container_operation</span></tt> if <tt class="docutils literal"><span class="pre">empty()</span> <span class="pre">==</span> <span class="pre">true</span></tt></li>
 </ul>
 </blockquote>
 </li>
@@ -485,7 +483,6 @@
 <ul class="simple">
 <li>Requirements: <tt class="docutils literal"><span class="pre">not</span> <span class="pre">empty();</span></tt></li>
 <li>Effects: <tt class="docutils literal"><span class="pre">return</span> <span class="pre">*--end();</span></tt></li>
-<li>Throws: <tt class="docutils literal"><span class="pre">bad_ptr_container_operation</span></tt> if <tt class="docutils literal"><span class="pre">empty()</span> <span class="pre">==</span> <span class="pre">true</span></tt></li>
 </ul>
 </blockquote>
 </li>
@@ -494,7 +491,6 @@
 <ul class="simple">
 <li>Requirements: <tt class="docutils literal"><span class="pre">not</span> <span class="pre">empty();</span></tt></li>
 <li>Effects: <tt class="docutils literal"><span class="pre">return</span> <span class="pre">*--end();</span></tt></li>
-<li>Throws: <tt class="docutils literal"><span class="pre">bad_ptr_container_operation</span></tt> if <tt class="docutils literal"><span class="pre">empty()</span> <span class="pre">==</span> <span class="pre">true</span></tt></li>
 </ul>
 </blockquote>
 </li>

Modified: branches/CMake/release/libs/ptr_container/doc/ptr_sequence_adapter.rst
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/ptr_sequence_adapter.rst (original)
+++ branches/CMake/release/libs/ptr_container/doc/ptr_sequence_adapter.rst 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -197,7 +197,6 @@
 
     - Effects: ``return *begin();``
 
- - Throws: ``bad_ptr_container_operation`` if ``empty() == true``
 
 - ``const T& front() const;``
 
@@ -205,7 +204,6 @@
 
     - Effects: ``return *begin();``
 
- - Throws: ``bad_ptr_container_operation`` if ``empty() == true``
 
 - ``T& back();``
 
@@ -213,7 +211,6 @@
 
     - Effects: ``return *--end();``
 
- - Throws: ``bad_ptr_container_operation`` if ``empty() == true``
 
 - ``const T& back() const;``
 
@@ -221,8 +218,6 @@
 
     - Effects: ``return *--end();``
 
- - Throws: ``bad_ptr_container_operation`` if ``empty() == true``
-
 
 .. _`modifiers`:
 

Modified: branches/CMake/release/libs/ptr_container/doc/reference.html
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/reference.html (original)
+++ branches/CMake/release/libs/ptr_container/doc/reference.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -294,11 +294,11 @@
 each container. When containers have the same interface, that common interface is explained only once,
 but links are always provided to more relevant information.
 Please make sure you understand
-the <a class="reference" href="reference.html#the-Cloneable-concept">Cloneable</a> concept and
+the <a class="reference" href="reference.html#the-Clonable-concept">Clonable</a> concept and
 the <a class="reference" href="reference.html#the-clone-allocator-concept">Clone Allocator</a> concept.</p>
 <ul class="simple">
 <li><a class="reference" href="conventions.html">Conventions</a></li>
-<li><a class="reference" href="#the-cloneable-concept">The Cloneable concept</a></li>
+<li><a class="reference" href="#the-clonable-concept">The Clonable concept</a></li>
 <li><a class="reference" href="#the-clone-allocator-concept">The Clone Allocator concept</a></li>
 <li><a class="reference" href="#class-hierarchy">Class hierarchy</a>:<ul>
 <li><a class="reference" href="reversible_ptr_container.html">reversible_ptr_container</a><ul>
@@ -328,6 +328,7 @@
 </li>
 <li><a class="reference" href="#serialization">Serialization</a></li>
 <li><a class="reference" href="indirect_fun.html">Indirected functions</a></li>
+<li><a class="reference" href="ptr_inserter.html">Insert iterators</a></li>
 <li><a class="reference" href="#class-nullable">Class nullable</a></li>
 <li><a class="reference" href="#exception-classes">Exception classes</a></li>
 <li><a class="reference" href="#disabling-the-use-of-exceptions">Disabling the use of exceptions</a></li>
@@ -354,16 +355,16 @@
   - `ptr_map <ptr_map.html>`_
   - `ptr_multimap <ptr_multimap.html>`_ -->
 <div class="section">
-<h1><a id="the-cloneable-concept" name="the-cloneable-concept">The Cloneable concept</a></h1>
+<h1><a id="the-clonable-concept" name="the-clonable-concept">The Clonable concept</a></h1>
 <p><strong>Refinement of</strong></p>
 <ul class="simple">
 <li>Heap Allocable</li>
 <li>Heap Deallocable</li>
 </ul>
-<p>The Cloneable concept is introduced to formalize the requirements for
-copying heap-allocated objects. A type <tt class="docutils literal"><span class="pre">T</span></tt> might be Cloneable even though it
+<p>The Clonable concept is introduced to formalize the requirements for
+copying heap-allocated objects. A type <tt class="docutils literal"><span class="pre">T</span></tt> might be Clonable even though it
 is not Assignable or Copy Constructible. Notice that many operations on
-the containers do not even require the stored type to be Cloneable.</p>
+the containers do not even require the stored type to be Clonable.</p>
 <p><strong>Notation</strong></p>
 <table border="1" class="docutils">
 <colgroup>
@@ -381,7 +382,7 @@
 <tr><td><tt class="docutils literal"><span class="pre">T</span></tt></td>
 <td><tt class="docutils literal"><span class="pre">a</span></tt></td>
 <td><tt class="docutils literal"><span class="pre">ptr</span></tt></td>
-<td>A Cloneable type</td>
+<td>A Clonable type</td>
 </tr>
 </tbody>
 </table>
@@ -432,7 +433,7 @@
 }
 </pre>
 <p>Notice that this implementation makes normal Copy Constructible classes automatically
-Cloneable unless <tt class="docutils literal"><span class="pre">operator</span> <span class="pre">new()</span></tt> or <tt class="docutils literal"><span class="pre">operator</span> <span class="pre">delete()</span></tt> are hidden.</p>
+Clonable unless <tt class="docutils literal"><span class="pre">operator</span> <span class="pre">new()</span></tt> or <tt class="docutils literal"><span class="pre">operator</span> <span class="pre">delete()</span></tt> are hidden.</p>
 <p>The two functions represent a layer of indirection which is necessary to support
 classes that are not Copy Constructible by default. Notice that the implementation
 relies on argument-dependent lookup (ADL) to find the right version of
@@ -584,7 +585,7 @@
 <p>The pointer container adapters are used when you
 want to make a pointer container starting from
 your own &quot;normal&quot; container. For example, you
-might have a map class that is extends <tt class="docutils literal"><span class="pre">std::map</span></tt>
+might have a map class that extends <tt class="docutils literal"><span class="pre">std::map</span></tt>
 in some way; the adapter class then allows you
 to use your map class as a basis for a new
 pointer container.</p>
@@ -646,7 +647,7 @@
 </div>
 <div class="section">
 <h1><a id="serialization" name="serialization">Serialization</a></h1>
-<p>As of version 1.34.0 of Boost, the library support
+<p>As of version 1.34.0 of Boost, the library supports
 serialization via <a class="reference" href="../../serialization/index.html">Boost.Serialization</a>.</p>
 <p>Of course, for serialization to work it is required
 that the stored type itself is serializable. For maps, both
@@ -786,7 +787,7 @@
 completely. This means the library is more fit for domains where exceptions
 are not used. Furthermore, it also speeds up a operations a little. Instead
 of throwing an exception, the library simply calls <a class="reference" href="../../utility/assert.html">BOOST_ASSERT</a>.</p>
-<p>To disable exceptions, simly define this macro before including any header:</p>
+<p>To disable exceptions, simply define this macro before including any header:</p>
 <pre class="literal-block">
 #define BOOST_PTR_CONTAINER_NO_EXCEPTIONS 1
 #include &lt;boost/ptr_container/ptr_vector.hpp&gt;

Modified: branches/CMake/release/libs/ptr_container/doc/reference.rst
==============================================================================
--- branches/CMake/release/libs/ptr_container/doc/reference.rst (original)
+++ branches/CMake/release/libs/ptr_container/doc/reference.rst 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,11 +12,11 @@
 each container. When containers have the same interface, that common interface is explained only once,
 but links are always provided to more relevant information.
 Please make sure you understand
-the `Cloneable <reference.html#the-Cloneable-concept>`_ concept and
+the `Clonable <reference.html#the-Clonable-concept>`_ concept and
 the `Clone Allocator <reference.html#the-clone-allocator-concept>`_ concept.
 
 - `Conventions <conventions.html>`_
-- `The Cloneable concept`_
+- `The Clonable concept`_
 - `The Clone Allocator concept`_
 
 - `Class hierarchy`_:
@@ -44,6 +44,7 @@
       
 - `Serialization`_
 - `Indirected functions <indirect_fun.html>`_
+- `Insert iterators <ptr_inserter.html>`_
 - `Class nullable`_
 - `Exception classes`_
 - `Disabling the use of exceptions`_
@@ -74,24 +75,24 @@
 
 
 
-The Cloneable concept
-+++++++++++++++++++++
+The Clonable concept
+++++++++++++++++++++
 
 **Refinement of**
 
 - Heap Allocable
 - Heap Deallocable
 
-The Cloneable concept is introduced to formalize the requirements for
-copying heap-allocated objects. A type ``T`` might be Cloneable even though it
+The Clonable concept is introduced to formalize the requirements for
+copying heap-allocated objects. A type ``T`` might be Clonable even though it
 is not Assignable or Copy Constructible. Notice that many operations on
-the containers do not even require the stored type to be Cloneable.
+the containers do not even require the stored type to be Clonable.
 
 **Notation**
 
 ======================= ============================================ =================== =====================
    **Type** **Object** (``const`` or non-``const``) **Pointer** **Describes**
- ``T`` ``a`` ``ptr`` A Cloneable type
+ ``T`` ``a`` ``ptr`` A Clonable type
 ======================= ============================================ =================== =====================
        
 **Valid expressions**
@@ -128,7 +129,7 @@
 
 
 Notice that this implementation makes normal Copy Constructible classes automatically
-Cloneable unless ``operator new()`` or ``operator delete()`` are hidden.
+Clonable unless ``operator new()`` or ``operator delete()`` are hidden.
 
 The two functions represent a layer of indirection which is necessary to support
 classes that are not Copy Constructible by default. Notice that the implementation
@@ -260,7 +261,7 @@
 The pointer container adapters are used when you
 want to make a pointer container starting from
 your own "normal" container. For example, you
-might have a map class that is extends ``std::map``
+might have a map class that extends ``std::map``
 in some way; the adapter class then allows you
 to use your map class as a basis for a new
 pointer container.
@@ -318,7 +319,7 @@
 Serialization
 +++++++++++++
 
-As of version 1.34.0 of Boost, the library support
+As of version 1.34.0 of Boost, the library supports
 serialization via `Boost.Serialization`__.
 
 .. __: ../../serialization/index.html
@@ -471,7 +472,7 @@
 
 .. __: ../../utility/assert.html
 
-To disable exceptions, simly define this macro before including any header::
+To disable exceptions, simply define this macro before including any header::
 
         #define BOOST_PTR_CONTAINER_NO_EXCEPTIONS 1
         #include <boost/ptr_container/ptr_vector.hpp>

Modified: branches/CMake/release/libs/python/doc/projects.html
==============================================================================
--- branches/CMake/release/libs/python/doc/projects.html (original)
+++ branches/CMake/release/libs/python/doc/projects.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -375,6 +375,27 @@
       application modules, including GUI and post-processing of results.</p>
     </dd>
 
+ <dt><b>PolyBoRi</b></dt>
+
+ <dd>
+ <p><a href="mailto:brickenstein_at_[hidden]"
+ >Michael Brickenstein</a> writes:</p>
+
+ <blockquote>
+ <p>The core of PolyBoRi is a C++ library, which provides
+ high-level data types for Boolean polynomials and monomials,
+ exponent vectors, as well as for the underlying polynomial
+ rings and subsets of the powerset of the Boolean variables. As
+ a unique approach, binary decision diagrams are used as
+ internal storage type for polynomial structures. On top of
+ this C++-library we provide a Python interface. This allows
+ parsing of complex polynomial systems, as well as sophisticated
+ and extendable strategies for Gr&ouml;bner basis computation.
+ Boost.Python has helped us to create this interface in a
+ very clean way.</p>
+ </blockquote>
+ </dd>
+
     <dt><b><a href="http://www.rationaldiscovery.com">Rational Discovery
     LLC</a></b></dt>
 
@@ -435,11 +456,11 @@
   </dl>
   <hr>
 
- <p>Revised
+ <p>Revised
   <!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->
- 15 July, 2003</p>
+ 29 May, 2008</p>
 
   <p><i>&copy; Copyright <a href="http://www.boost.org/people/dave_abrahams.htm">Dave
- Abrahams</a> 2002-2003.</i></p>
+ Abrahams</a> 2002-2008.</i></p>
 </body>
 </html>

Modified: branches/CMake/release/libs/python/doc/v2/Dereferenceable.html
==============================================================================
--- branches/CMake/release/libs/python/doc/v2/Dereferenceable.html (original)
+++ branches/CMake/release/libs/python/doc/v2/Dereferenceable.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,7 +4,7 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<link rel="stylesheet" type="text/css" href=../../../../boost.css>
+<link rel="stylesheet" type="text/css" href="../../../../boost.css">
 <title>Boost.Python - Dereferenceable Concept</title>
 </head>
 <body link="#0000ff" vlink="#800080">

Modified: branches/CMake/release/libs/python/doc/v2/Extractor.html
==============================================================================
--- branches/CMake/release/libs/python/doc/v2/Extractor.html (original)
+++ branches/CMake/release/libs/python/doc/v2/Extractor.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,7 +4,7 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<link rel="stylesheet" type="text/css" href=../../../../boost.css>
+<link rel="stylesheet" type="text/css" href="../../../../boost.css">
 <title>Boost.Python - Extractor Concept</title>
 </head>
 <body link="#0000ff" vlink="#800080">

Modified: branches/CMake/release/libs/python/doc/v2/HolderGenerator.html
==============================================================================
--- branches/CMake/release/libs/python/doc/v2/HolderGenerator.html (original)
+++ branches/CMake/release/libs/python/doc/v2/HolderGenerator.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,7 +4,7 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<link rel="stylesheet" type="text/css" href=../../../../boost.css>
+<link rel="stylesheet" type="text/css" href="../../../../boost.css">
 <title>Boost.Python - Holder Concept</title>
 </head>
 <body link="#0000ff" vlink="#800080">

Modified: branches/CMake/release/libs/python/doc/v2/object.html
==============================================================================
--- branches/CMake/release/libs/python/doc/v2/object.html (original)
+++ branches/CMake/release/libs/python/doc/v2/object.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -74,6 +74,32 @@
             </dl>
           </dd>
 
+ <dt><a href="#const_objattribute_policies-spec">Class
+ <code>const_objattribute_policies</code></a></dt>
+
+ <dd>
+ <dl class="page-index">
+ <dt><a href="#const_objattribute_policies-spec-synopsis">Class
+ <code>const_objattribute_policies</code> synopsis</a></dt>
+
+ <dt><a href="#const_objattribute_policies-spec-statics">Class
+ <code>const_objattribute_policies</code> static functions</a></dt>
+ </dl>
+ </dd>
+
+ <dt><a href="#objattribute_policies-spec">Class
+ <code>objattribute_policies</code></a></dt>
+
+ <dd>
+ <dl class="page-index">
+ <dt><a href="#objattribute_policies-spec-synopsis">Class
+ <code>objattribute_policies</code> synopsis</a></dt>
+
+ <dt><a href="#objattribute_policies-spec-statics">Class
+ <code>objattribute_policies</code> static functions</a></dt>
+ </dl>
+ </dd>
+
           <dt><a href="#const_item_policies-spec">Class
           <code>const_item_policies</code></a></dt>
 
@@ -328,6 +354,102 @@
     <!-- end -->
     <!-- begin -->
 
+ <h3><a name="const_objattribute_policies-spec"></a>Class
+ <code>const_objattribute_policies</code></h3>
+
+ <p>The policies which are used for proxies representing an attribute
+ access to a <code>const&nbsp;object</code> when the attribute name is
+ given as a <code>const&nbsp;object</code>.</p>
+
+ <h4><a name="const_objattribute_policies-spec-synopsis"></a>Class
+ <code>const_objattribute_policies</code> synopsis</h4>
+<pre>
+namespace boost { namespace python { namespace api
+{
+ struct const_objattribute_policies
+ {
+ typedef object const& key_type;
+ static object get(object const&amp; target, object const& key);
+ };
+}}}
+</pre>
+
+ <h4><a name="const_objattribute_policies-spec-statics"></a>Class
+ <code>const_objattribute_policies</code> static functions</h4>
+<pre>
+static object get(object const&amp; target, object const& key);
+</pre>
+
+ <dl class="function-semantics">
+ <dt><b>Requires:</b> <code>key</code> is an <code>object</code>
+ holding a string.</dt>
+
+ <dt><b>Effects:</b> accesses the attribute of <code>target</code> named
+ by <code>key</code>.</dt>
+
+ <dt><b>Returns:</b> An <code>object</code> managing the result of the
+ attribute access.</dt>
+
+ <dt><b>Throws:</b> <code><a href=
+ "errors.html#error_already_set-spec">error_already_set</a></code> if a
+ Python exception is raised.</dt>
+ </dl>
+
+ <h3><a name="objattribute_policies-spec"></a>Class
+ <code>objattribute_policies</code></h3>
+
+ <p>The policies which are used for proxies representing an attribute
+ access to a mutable <code>object</code> when the attribute name is
+ given as a <code>const&nbsp;object</code>.</p>
+
+ <h4><a name="objattribute_policies-spec-synopsis"></a>Class
+ <code>objattribute_policies</code> synopsis</h4>
+<pre>
+namespace boost { namespace python { namespace api
+{
+ struct objattribute_policies : const_objattribute_policies
+ {
+ static object const&amp; set(object const&amp; target, object const& key, object const&amp; value);
+ static void del(object const&amp;target, object const& key);
+ };
+}}}
+</pre>
+
+ <h4><a name="objattribute_policies-spec-statics"></a>Class
+ <code>objattribute_policies</code> static functions</h4>
+<pre>
+static object const&amp; set(object const&amp; target, object const& key, object const&amp; value);
+</pre>
+
+ <dl class="function-semantics">
+ <dt><b>Requires:</b> <code>key</code> is an <code>object</code>
+ holding a string.</dt>
+
+ <dt><b>Effects:</b> sets the attribute of <code>target</code> named by
+ <code>key</code> to <code>value</code>.</dt>
+
+ <dt><b>Throws:</b> <code><a href=
+ "errors.html#error_already_set-spec">error_already_set</a></code> if a
+ Python exception is raised.</dt>
+ </dl>
+<pre>
+static void del(object const&amp;target, object const& key);
+</pre>
+
+ <dl class="function-semantics">
+ <dt><b>Requires:</b> <code>key</code> is an <code>object</code>
+ holding a string.</dt>
+
+ <dt><b>Effects:</b> deletes the attribute of <code>target</code> named
+ by <code>key</code>.</dt>
+
+ <dt><b>Throws:</b> <code><a href=
+ "errors.html#error_already_set-spec">error_already_set</a></code> if a
+ Python exception is raised.</dt>
+ </dl>
+ <!-- end -->
+ <!-- begin -->
+
     <h3><a name="const_item_policies-spec"></a>Class
     <code>const_item_policies</code></h3>
 
@@ -542,6 +664,8 @@
       //
       proxy&lt;const_object_attribute&gt; attr(char const*) const;
       proxy&lt;object_attribute&gt; attr(char const*);
+ proxy&lt;const_object_objattribute&gt; attr(object const&) const;
+ proxy&lt;object_objattribute&gt; attr(object const&);
 
       // item access
       //
@@ -608,6 +732,21 @@
       <code>name</code> as its key.</dt>
     </dl>
 <pre>
+proxy&lt;const_object_objattribute&gt; attr(const object& name) const;
+proxy&lt;object_objattribute&gt; attr(const object& name);
+</pre>
+
+ <dl class="function-semantics">
+ <dt><b>Requires:</b> name is a <code>object</code> holding a string.</dt>
+
+ <dt><b>Effects:</b> accesses the named attribute of
+ <code>*this</code>.</dt>
+
+ <dt><b>Returns:</b> a proxy object which binds
+ <code>object(*static_cast&lt;U*&gt;(this))</code> as its target, and
+ <code>name</code> as its key.</dt>
+ </dl>
+<pre>
 template &lt;class T&gt;
 proxy&lt;const_object_item&gt; operator[](T const&amp; key) const;
 template &lt;class T&gt;
@@ -938,11 +1077,11 @@
 </pre>
     <p>Revised
     <!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->
- 13 January, 2006
+ 27 May, 2008
   <!--webbot bot="Timestamp" endspan i-checksum="39359" -->
     </p>
 
     <p><i>&copy; Copyright <a href=
- "http://www.boost.org/people/dave_abrahams.htm">Dave Abrahams</a> 2006.</i></p>
+ "http://www.boost.org/people/dave_abrahams.htm">Dave Abrahams</a> 2008.</i></p>
   </body>
 </html>

Modified: branches/CMake/release/libs/python/src/errors.cpp
==============================================================================
--- branches/CMake/release/libs/python/src/errors.cpp (original)
+++ branches/CMake/release/libs/python/src/errors.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -41,6 +41,10 @@
     {
         PyErr_SetString(PyExc_IndexError, x.what());
     }
+ catch(const std::invalid_argument& x)
+ {
+ PyErr_SetString(PyExc_ValueError, x.what());
+ }
     catch(const std::exception& x)
     {
         PyErr_SetString(PyExc_RuntimeError, x.what());

Modified: branches/CMake/release/libs/python/test/args.cpp
==============================================================================
--- branches/CMake/release/libs/python/test/args.cpp (original)
+++ branches/CMake/release/libs/python/test/args.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,7 +14,7 @@
 
 using namespace boost::python;
 
-#if BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x580))
+#if BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x580)) || BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1500))
 # define make_tuple boost::python::make_tuple
 #endif
 

Modified: branches/CMake/release/libs/python/test/module_tail.cpp
==============================================================================
--- branches/CMake/release/libs/python/test/module_tail.cpp (original)
+++ branches/CMake/release/libs/python/test/module_tail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,6 +13,7 @@
 # endif
 
 # ifdef _MSC_VER
+# include <eh.h> // for _set_se_translator()
 # pragma warning(push)
 # pragma warning(disable:4297)
 # pragma warning(disable:4535)

Modified: branches/CMake/release/libs/python/test/numpy.cpp
==============================================================================
--- branches/CMake/release/libs/python/test/numpy.cpp (original)
+++ branches/CMake/release/libs/python/test/numpy.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,19 +10,16 @@
 #include <boost/python/str.hpp>
 
 using namespace boost::python;
-
-#if BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x580))
-# define make_tuple boost::python::make_tuple
-#endif
+namespace py = boost::python;
 
 // See if we can invoke array() from C++
 numeric::array new_array()
 {
     return numeric::array(
- make_tuple(
- make_tuple(1,2,3)
- , make_tuple(4,5,6)
- , make_tuple(7,8,9)
+ py::make_tuple(
+ py::make_tuple(1,2,3)
+ , py::make_tuple(4,5,6)
+ , py::make_tuple(7,8,9)
             )
         );
 }
@@ -51,7 +48,7 @@
       str format("exception type: %sn");
       format += "exception value: %sn";
       format += "traceback:n%s" ;
- object ret = format % boost::python::make_tuple(ty, v, tr);
+ object ret = format % py::make_tuple(ty, v, tr);
       return ret;
   }
 }
@@ -71,7 +68,7 @@
 // inherits that behavior from object.
 void exercise(numeric::array& y, object check)
 {
- y[make_tuple(2,1)] = 3;
+ y[py::make_tuple(2,1)] = 3;
     CHECK(y);
     CHECK(y.astype('D'));
     CHECK(y.copy());
@@ -116,12 +113,12 @@
     CHECK(y);
     CHECK(y.type());
 
- CHECK(y.factory(make_tuple(1.2, 3.4)));
- CHECK(y.factory(make_tuple(1.2, 3.4), "f8"));
- CHECK(y.factory(make_tuple(1.2, 3.4), "f8", true));
- CHECK(y.factory(make_tuple(1.2, 3.4), "f8", true, false));
- CHECK(y.factory(make_tuple(1.2, 3.4), "f8", true, false, object()));
- CHECK (y.factory(make_tuple(1.2, 3.4), "f8", true, false, object(), make_tuple(1,2,1)));
+ CHECK(y.factory(py::make_tuple(1.2, 3.4)));
+ CHECK(y.factory(py::make_tuple(1.2, 3.4), "f8"));
+ CHECK(y.factory(py::make_tuple(1.2, 3.4), "f8", true));
+ CHECK(y.factory(py::make_tuple(1.2, 3.4), "f8", true, false));
+ CHECK(y.factory(py::make_tuple(1.2, 3.4), "f8", true, false, object()));
+ CHECK (y.factory(py::make_tuple(1.2, 3.4), "f8", true, false, object(), py::make_tuple(1,2,1)));
 
 }
 

Modified: branches/CMake/release/libs/python/test/object.cpp
==============================================================================
--- branches/CMake/release/libs/python/test/object.cpp (original)
+++ branches/CMake/release/libs/python/test/object.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -38,26 +38,61 @@
     return x.attr(name);
 }
 
+object obj_objgetattr(object x, object const& name)
+{
+ return x.attr(name);
+}
+
 object obj_const_getattr(object const& x, char const* name)
 {
     return x.attr(name);
 }
 
+object obj_const_objgetattr(object const& x, object const& name)
+{
+ return x.attr(name);
+}
+
 void obj_setattr(object x, char const* name, object value)
 {
     x.attr(name) = value;
 }
 
+void obj_objsetattr(object x, object const& name, object value)
+{
+ x.attr(name) = value;
+}
+
 void obj_setattr42(object x, char const* name)
 {
     x.attr(name) = 42;
 }
 
+void obj_objsetattr42(object x, object const& name)
+{
+ x.attr(name) = 42;
+}
+
 void obj_moveattr(object& x, char const* src, char const* dst)
 {
     x.attr(dst) = x.attr(src);
 }
 
+void obj_objmoveattr(object& x, object const& src, object const& dst)
+{
+ x.attr(dst) = x.attr(src);
+}
+
+void obj_delattr(object x, char const* name)
+{
+ x.attr(name).del();
+}
+
+void obj_objdelattr(object x, object const& name)
+{
+ x.attr(name).del();
+}
+
 object obj_getitem(object x, object key)
 {
     return x[key];
@@ -108,11 +143,21 @@
     return y.attr(name);
 }
 
+bool test_objattr(object y, object& name)
+{
+ return y.attr(name);
+}
+
 bool test_not_attr(object y, char* name)
 {
     return !y.attr(name);
 }
 
+bool test_not_objattr(object y, object& name)
+{
+ return !y.attr(name);
+}
+
 bool test_item(object y, object key)
 {
     return y[key];
@@ -301,11 +346,17 @@
     def("number", number);
 
     def("obj_getattr", obj_getattr);
+ def("obj_objgetattr", obj_objgetattr);
     def("obj_const_getattr", obj_const_getattr);
+ def("obj_const_objgetattr", obj_const_objgetattr);
     def("obj_setattr", obj_setattr);
+ def("obj_objsetattr", obj_objsetattr);
     def("obj_setattr42", obj_setattr42);
+ def("obj_objsetattr42", obj_objsetattr42);
     def("obj_moveattr", obj_moveattr);
-
+ def("obj_objmoveattr", obj_objmoveattr);
+ def("obj_delattr", obj_delattr);
+ def("obj_objdelattr", obj_objdelattr);
 
     def("obj_getitem", obj_getitem);
     def("obj_getitem3", obj_getitem);
@@ -319,7 +370,9 @@
     def("test_not", test_not);
 
     def("test_attr", test_attr);
+ def("test_objattr", test_objattr);
     def("test_not_attr", test_not_attr);
+ def("test_not_objattr", test_not_objattr);
 
     def("test_item", test_item);
     def("test_not_item", test_not_item);

Modified: branches/CMake/release/libs/python/test/object.py
==============================================================================
--- branches/CMake/release/libs/python/test/object.py (original)
+++ branches/CMake/release/libs/python/test/object.py 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -34,29 +34,68 @@
>>> try: obj_getattr(x, 'foo')
 ... except AttributeError: pass
 ... else: print 'expected an exception'
+>>> try: obj_objgetattr(x, 'objfoo')
+... except AttributeError: pass
+... else: print 'expected an exception'
 
>>> obj_setattr(x, 'foo', 1)
>>> x.foo
 1
+>>> obj_objsetattr(x, 'objfoo', 1)
+>>> try:obj_objsetattr(x, 1)
+... except TypeError: pass
+... else: print 'expected an exception'
+>>> x.objfoo
+1
>>> obj_getattr(x, 'foo')
 1
+>>> obj_objgetattr(x, 'objfoo')
+1
+>>> try:obj_objgetattr(x, 1)
+... except TypeError: pass
+... else: print 'expected an exception'
>>> obj_const_getattr(x, 'foo')
 1
+>>> obj_const_objgetattr(x, 'objfoo')
+1
>>> obj_setattr42(x, 'foo')
>>> x.foo
 42
+>>> obj_objsetattr42(x, 'objfoo')
+>>> x.objfoo
+42
>>> obj_moveattr(x, 'foo', 'bar')
>>> x.bar
 42
+>>> obj_objmoveattr(x, 'objfoo', 'objbar')
+>>> x.objbar
+42
>>> test_attr(x, 'foo')
 1
+>>> test_objattr(x, 'objfoo')
+1
>>> test_not_attr(x, 'foo')
 0
+>>> test_not_objattr(x, 'objfoo')
+0
>>> x.foo = None
>>> test_attr(x, 'foo')
 0
+>>> x.objfoo = None
+>>> test_objattr(x, 'objfoo')
+0
>>> test_not_attr(x, 'foo')
 1
+>>> test_not_objattr(x, 'objfoo')
+1
+>>> obj_delattr(x, 'foo')
+>>> obj_objdelattr(x, 'objfoo')
+>>> try:obj_delattr(x, 'foo')
+... except AttributeError: pass
+... else: print 'expected an exception'
+>>> try:obj_objdelattr(x, 'objfoo')
+... except AttributeError: pass
+... else: print 'expected an exception'
 
         Items
 

Modified: branches/CMake/release/libs/python/test/pickle3.cpp
==============================================================================
--- branches/CMake/release/libs/python/test/pickle3.cpp (original)
+++ branches/CMake/release/libs/python/test/pickle3.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -25,7 +25,7 @@
 #include <boost/python/extract.hpp>
 #include <boost/python/back_reference.hpp>
 
-#if BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x580))
+#if BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x580)) || BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1500))
 # define make_tuple boost::python::make_tuple
 #endif
 

Modified: branches/CMake/release/libs/python/test/slice.cpp
==============================================================================
--- branches/CMake/release/libs/python/test/slice.cpp (original)
+++ branches/CMake/release/libs/python/test/slice.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,7 +10,7 @@
 
 using namespace boost::python;
 
-#if BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x580))
+#if BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x580)) || BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1500))
 # define make_tuple boost::python::make_tuple
 #endif
 

Modified: branches/CMake/release/libs/python/test/vector_indexing_suite.py
==============================================================================
--- branches/CMake/release/libs/python/test/vector_indexing_suite.py (original)
+++ branches/CMake/release/libs/python/test/vector_indexing_suite.py 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -322,6 +322,19 @@
 [ a b c d e f g h i j ]
 
 #####################################################################
+# extend using a generator expression
+#####################################################################
+>>> v[:] = ['a','b','c','d','e'] # reset again
+>>> def generator():
+... addlist = ['f','g','h','i','j']
+... for i in addlist:
+... if i != 'g':
+... yield i
+>>> v.extend(generator())
+>>> print_xvec(v)
+[ a b c d e f h i j ]
+
+#####################################################################
 # vector of strings
 #####################################################################
>>> sv = StringVec()

Modified: branches/CMake/release/libs/range/index.html
==============================================================================
--- branches/CMake/release/libs/range/index.html (original)
+++ branches/CMake/release/libs/range/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -55,6 +55,8 @@
           <li><a href="doc/mfc_atl.html">MFC/ATL mapping (courtesy of Shunsuke
               Sogame)</a></li>
       <li>Portability
+ <li><a href="doc/upgrading.html">Upgrading from Boost v.
+ 1.34.*</a></li>
       <li>FAQ
       <li>History and acknowledgment
           

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Background Information</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Regex">
 <link rel="up" href="../index.html" title="Boost.Regex">
 <link rel="prev" href="ref/deprecated_interfaces/old_regex.html" title="High Level Class RegEx (Deprecated)">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_regex.background_information"></a><a class="link" href="background_information.html" title="Background Information">Background Information</a>
+<a name="boost_regex.background_information"></a>Background Information
 </h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"> Headers</span></dt>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/acknowledgements.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/acknowledgements.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/acknowledgements.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Acknowledgements</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="redist.html" title="Redistributables">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.acknowledgements"></a><a class="link" href="acknowledgements.html" title="Acknowledgements">
+<a name="boost_regex.background_information.acknowledgements"></a><a href="acknowledgements.html" title="Acknowledgements">
       Acknowledgements</a>
 </h3></div></div></div>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/examples.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/examples.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/examples.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Test and Example Programs</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="thread_safety.html" title="Thread Safety">
@@ -24,12 +24,12 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.examples"></a><a class="link" href="examples.html" title="Test and Example Programs"> Test and
+<a name="boost_regex.background_information.examples"></a><a href="examples.html" title="Test and Example Programs"> Test and
       Example Programs</a>
 </h3></div></div></div>
 <a name="boost_regex.background_information.examples.test_programs"></a><h5>
-<a name="id2777732"></a>
- <a class="link" href="examples.html#boost_regex.background_information.examples.test_programs">Test
+<a name="id647277"></a>
+ <a href="examples.html#boost_regex.background_information.examples.test_programs">Test
         Programs</a>
       </h5>
 <p>
@@ -98,8 +98,8 @@
         Files: captures_test.cpp.
       </p>
 <a name="boost_regex.background_information.examples.example_programs"></a><h5>
-<a name="id2777925"></a>
- <a class="link" href="examples.html#boost_regex.background_information.examples.example_programs">Example
+<a name="id647485"></a>
+ <a href="examples.html#boost_regex.background_information.examples.example_programs">Example
         programs</a>
       </h5>
 <p>
@@ -124,8 +124,8 @@
         Files: regex_timer.cpp.
       </p>
 <a name="boost_regex.background_information.examples.code_snippets"></a><h5>
-<a name="id2777998"></a>
- <a class="link" href="examples.html#boost_regex.background_information.examples.code_snippets">Code
+<a name="id647566"></a>
+ <a href="examples.html#boost_regex.background_information.examples.code_snippets">Code
         snippets</a>
       </h5>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/faq.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/faq.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/faq.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>FAQ</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="futher.html" title="References and Further Information">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.faq"></a><a class="link" href="faq.html" title="FAQ"> FAQ</a>
+<a name="boost_regex.background_information.faq"></a> FAQ
 </h3></div></div></div>
 <p>
         <span class="bold"><strong>Q.</strong></span> I can't get regex++ to work with escape
@@ -115,10 +115,10 @@
         throw specifications, others support them but with reduced efficiency. Throw
         specifications may be added at a later date as compilers begin to handle
         this better. The library should throw only three types of exception: [boost::regex_error]
- can be thrown by <a class="link" href="../ref/basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> when compiling a regular
+ can be thrown by basic_regex when compiling a regular
         expression, <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">runtime_error</span></code> can be thrown when a call
         to <code class="computeroutput"><span class="identifier">basic_regex</span><span class="special">::</span><span class="identifier">imbue</span></code> tries to open a message catalogue
- that doesn't exist, or when a call to <a class="link" href="../ref/regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a> or <a class="link" href="../ref/regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a> results in an "everlasting"
+ that doesn't exist, or when a call to regex_search or regex_match results in an "everlasting"
         search, or when a call to <code class="computeroutput"><span class="identifier">RegEx</span><span class="special">::</span><span class="identifier">GrepFiles</span></code>
         or <code class="computeroutput"><span class="identifier">RegEx</span><span class="special">::</span><span class="identifier">FindFiles</span></code> tries to open a file that cannot
         be opened, finally <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">bad_alloc</span></code> can be thrown by just about any

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/futher.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/futher.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/futher.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>References and Further Information</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="examples.html" title="Test and Example Programs">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.futher"></a><a class="link" href="futher.html" title="References and Further Information"> References
+<a name="boost_regex.background_information.futher"></a><a href="futher.html" title="References and Further Information"> References
       and Further Information</a>
 </h3></div></div></div>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/headers.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/headers.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/headers.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Headers</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="../background_information.html" title="Background Information">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.headers"></a><a class="link" href="headers.html" title="Headers"> Headers</a>
+<a name="boost_regex.background_information.headers"></a> Headers
 </h3></div></div></div>
 <p>
         There are two main headers used by this library: <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
@@ -34,7 +34,7 @@
       </p>
 <p>
         There is also a header containing only forward declarations <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
- for use when an interface is dependent upon <a class="link" href="../ref/basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>, but otherwise does
+ for use when an interface is dependent upon basic_regex, but otherwise does
         not need the full definitions.
       </p>
 </div>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/history.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/history.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/history.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>History</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="acknowledgements.html" title="Acknowledgements">
@@ -23,11 +23,11 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.history"></a><a class="link" href="history.html" title="History"> History</a>
+<a name="boost_regex.background_information.history"></a> History
 </h3></div></div></div>
 <a name="boost_regex.background_information.history.boost_1_34"></a><h5>
-<a name="id2779960"></a>
- <a class="link" href="history.html#boost_regex.background_information.history.boost_1_34">Boost
+<a name="id649714"></a>
+ <a href="history.html#boost_regex.background_information.history.boost_1_34">Boost
         1.34</a>
       </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -49,8 +49,8 @@
         </li>
 </ul></div>
 <a name="boost_regex.background_information.history.boost_1_33_1"></a><h5>
-<a name="id2780006"></a>
- <a class="link" href="history.html#boost_regex.background_information.history.boost_1_33_1">Boost
+<a name="id649765"></a>
+ <a href="history.html#boost_regex.background_information.history.boost_1_33_1">Boost
         1.33.1</a>
       </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -119,8 +119,8 @@
         </li>
 </ul></div>
 <a name="boost_regex.background_information.history.boost_1_33_0"></a><h5>
-<a name="id2780125"></a>
- <a class="link" href="history.html#boost_regex.background_information.history.boost_1_33_0">Boost
+<a name="id649895"></a>
+ <a href="history.html#boost_regex.background_information.history.boost_1_33_0">Boost
         1.33.0</a>
       </h5>
 <div class="itemizedlist"><ul type="disc">
@@ -174,16 +174,16 @@
         </li>
 </ul></div>
 <a name="boost_regex.background_information.history.boost_1_32_1"></a><h5>
-<a name="id2780224"></a>
- <a class="link" href="history.html#boost_regex.background_information.history.boost_1_32_1">Boost
+<a name="id649992"></a>
+ <a href="history.html#boost_regex.background_information.history.boost_1_32_1">Boost
         1.32.1</a>
       </h5>
 <div class="itemizedlist"><ul type="disc"><li>
           Fixed bug in partial matches of bounded repeats of '.'.
         </li></ul></div>
 <a name="boost_regex.background_information.history.boost_1_31_0"></a><h5>
-<a name="id2780254"></a>
- <a class="link" href="history.html#boost_regex.background_information.history.boost_1_31_0">Boost
+<a name="id650025"></a>
+ <a href="history.html#boost_regex.background_information.history.boost_1_31_0">Boost
         1.31.0</a>
       </h5>
 <div class="itemizedlist"><ul type="disc">

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/locale.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/locale.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/locale.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Localization</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="headers.html" title="Headers">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.locale"></a><a class="link" href="locale.html" title="Localization"> Localization</a>
+<a name="boost_regex.background_information.locale"></a> Localization
 </h3></div></div></div>
 <p>
         Boost.Regex provides extensive support for run-time localization, the localization
@@ -58,14 +58,14 @@
         There are three separate localization mechanisms supported by Boost.Regex:
       </p>
 <a name="boost_regex.background_information.locale.win32_localization_model_"></a><h5>
-<a name="id2774567"></a>
- <a class="link" href="locale.html#boost_regex.background_information.locale.win32_localization_model_">Win32
+<a name="id643785"></a>
+ <a href="locale.html#boost_regex.background_information.locale.win32_localization_model_">Win32
         localization model.</a>
       </h5>
 <p>
         This is the default model when the library is compiled under Win32, and is
         encapsulated by the traits class <code class="computeroutput"><span class="identifier">w32_regex_traits</span></code>.
- When this model is in effect each <a class="link" href="../ref/basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> object gets it's own
+ When this model is in effect each basic_regex object gets it's own
         LCID, by default this is the users default setting as returned by GetUserDefaultLCID,
         but you can call imbue on the <code class="computeroutput"><span class="identifier">basic_regex</span></code>
         object to set it's locale to some other LCID if you wish. All the settings
@@ -74,8 +74,7 @@
         a string table with the user-defined strings. The traits class exports the
         function:
       </p>
-<pre class="programlisting">
-<span class="keyword">static</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">set_message_catalogue</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">static</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">set_message_catalogue</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
 </pre>
 <p>
         which needs to be called with a string identifying the name of the resource
@@ -83,8 +82,7 @@
         before you construct any <code class="computeroutput"><span class="identifier">basic_regex</span></code>
         instances):
       </p>
-<pre class="programlisting">
-<span class="identifier">boost</span><span class="special">::</span><span class="identifier">w32_regex_traits</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;::</span><span class="identifier">set_message_catalogue</span><span class="special">(</span><span class="string">"mydll.dll"</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">w32_regex_traits</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;::</span><span class="identifier">set_message_catalogue</span><span class="special">(</span><span class="string">"mydll.dll"</span><span class="special">);</span>
 </pre>
 <p>
         The library provides full Unicode support under NT, under Windows 9x the
@@ -92,8 +90,8 @@
         are treated as "unknown" graphic characters.
       </p>
 <a name="boost_regex.background_information.locale.c_localization_model_"></a><h5>
-<a name="id2774793"></a>
- <a class="link" href="locale.html#boost_regex.background_information.locale.c_localization_model_">C
+<a name="id644023"></a>
+ <a href="locale.html#boost_regex.background_information.locale.c_localization_model_">C
         localization model.</a>
       </h5>
 <p>
@@ -116,35 +114,33 @@
         libraries including version 1 of this library.
       </p>
 <a name="boost_regex.background_information.locale.c___localization_model_"></a><h5>
-<a name="id2774896"></a>
- <a class="link" href="locale.html#boost_regex.background_information.locale.c___localization_model_">C++
+<a name="id644136"></a>
+ <a href="locale.html#boost_regex.background_information.locale.c___localization_model_">C++
         localization model.</a>
       </h5>
 <p>
         This model is the default for non-Windows compilers.
       </p>
 <p>
- When this model is in effect each instance of <a class="link" href="../ref/basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> has its own instance
- of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">locale</span></code>, class <a class="link" href="../ref/basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> also has a member function
+ When this model is in effect each instance of basic_regex has its own instance
+ of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">locale</span></code>, class basic_regex also has a member function
         <code class="computeroutput"><span class="identifier">imbue</span></code> which allows the locale
         for the expression to be set on a per-instance basis. Front end localization
         requires a POSIX message catalogue, which will be loaded via the <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">messages</span></code>
         facet of the expression's locale, the traits class exports the symbol:
       </p>
-<pre class="programlisting">
-<span class="keyword">static</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">set_message_catalogue</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">static</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">set_message_catalogue</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
 </pre>
 <p>
         which needs to be called with a string identifying the name of the message
         catalogue, before your code compiles any regular expressions (but not necessarily
         before you construct any basic_regex instances):
       </p>
-<pre class="programlisting">
-<span class="identifier">boost</span><span class="special">::</span><span class="identifier">cpp_regex_traits</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;::</span><span class="identifier">set_message_catalogue</span><span class="special">(</span><span class="string">"mycatalogue"</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">cpp_regex_traits</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;::</span><span class="identifier">set_message_catalogue</span><span class="special">(</span><span class="string">"mycatalogue"</span><span class="special">);</span>
 </pre>
 <p>
         Note that calling <code class="computeroutput"><span class="identifier">basic_regex</span><span class="special">&lt;&gt;::</span><span class="identifier">imbue</span></code>
- will invalidate any expression currently compiled in that instance of <a class="link" href="../ref/basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>.
+ will invalidate any expression currently compiled in that instance of basic_regex.
       </p>
 <p>
         Finally note that if you build the library with a non-default localization
@@ -155,8 +151,8 @@
         in your code. The best way to ensure this is to add the #define to <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">/</span><span class="identifier">user</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>.
       </p>
 <a name="boost_regex.background_information.locale.providing_a_message_catalogue"></a><h5>
-<a name="id2775322"></a>
- <a class="link" href="locale.html#boost_regex.background_information.locale.providing_a_message_catalogue">Providing
+<a name="id644596"></a>
+ <a href="locale.html#boost_regex.background_information.locale.providing_a_message_catalogue">Providing
         a message catalogue</a>
       </h5>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/performance.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/performance.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/performance.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Performance</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="faq.html" title="FAQ">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.performance"></a><a class="link" href="performance.html" title="Performance"> Performance</a>
+<a name="boost_regex.background_information.performance"></a> Performance
 </h3></div></div></div>
 <p>
         The performance of Boost.Regex in both recursive and non-recursive modes

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/redist.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/redist.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/redist.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Redistributables</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="standards.html" title="Standards Conformance">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.redist"></a><a class="link" href="redist.html" title="Redistributables"> Redistributables</a>
+<a name="boost_regex.background_information.redist"></a> Redistributables
 </h3></div></div></div>
 <p>
         If you are using Microsoft or Borland C++ and link to a dll version of the

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/standards.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/standards.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/standards.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Standards Conformance</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="performance.html" title="Performance">
@@ -24,20 +24,20 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.standards"></a><a class="link" href="standards.html" title="Standards Conformance"> Standards
+<a name="boost_regex.background_information.standards"></a><a href="standards.html" title="Standards Conformance"> Standards
       Conformance</a>
 </h3></div></div></div>
 <a name="boost_regex.background_information.standards.c__"></a><h5>
-<a name="id2778906"></a>
- <a class="link" href="standards.html#boost_regex.background_information.standards.c__">C++</a>
+<a name="id648552"></a>
+ C++
       </h5>
 <p>
         Boost.Regex is intended to conform to the <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1836.pdf" target="_top">Technical
         Report on C++ Library Extensions</a>.
       </p>
 <a name="boost_regex.background_information.standards.ecmascript___javascript"></a><h5>
-<a name="id2778940"></a>
- <a class="link" href="standards.html#boost_regex.background_information.standards.ecmascript___javascript">ECMAScript
+<a name="id648590"></a>
+ <a href="standards.html#boost_regex.background_information.standards.ecmascript___javascript">ECMAScript
         / JavaScript</a>
       </h5>
 <p>
@@ -49,8 +49,8 @@
         rather than a Unicode escape sequence; use \x{DDDD} for Unicode escape sequences.
       </p>
 <a name="boost_regex.background_information.standards.perl"></a><h5>
-<a name="id2778976"></a>
- <a class="link" href="standards.html#boost_regex.background_information.standards.perl">Perl</a>
+<a name="id648630"></a>
+ Perl
       </h5>
 <p>
         Almost all Perl features are supported, except for:
@@ -62,8 +62,8 @@
         (??{code}) Not implementable in a compiled strongly typed language.
       </p>
 <a name="boost_regex.background_information.standards.posix"></a><h5>
-<a name="id2779011"></a>
- <a class="link" href="standards.html#boost_regex.background_information.standards.posix">POSIX</a>
+<a name="id648668"></a>
+ POSIX
       </h5>
 <p>
         All the POSIX basic and extended regular expression features are supported,
@@ -82,8 +82,8 @@
         a custom traits class.
       </p>
 <a name="boost_regex.background_information.standards.unicode"></a><h5>
-<a name="id2779054"></a>
- <a class="link" href="standards.html#boost_regex.background_information.standards.unicode">Unicode</a>
+<a name="id648715"></a>
+ Unicode
       </h5>
 <p>
         The following comments refer to <a href="http://unicode.org/reports/tr18/" target="_top">Unicode

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/thread_safety.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/thread_safety.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/background_information/thread_safety.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Thread Safety</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../background_information.html" title="Background Information">
 <link rel="prev" href="locale.html" title="Localization">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.background_information.thread_safety"></a><a class="link" href="thread_safety.html" title="Thread Safety"> Thread
+<a name="boost_regex.background_information.thread_safety"></a><a href="thread_safety.html" title="Thread Safety"> Thread
       Safety</a>
 </h3></div></div></div>
 <p>
@@ -34,26 +34,26 @@
         support is turned on in your compiler.
       </p>
 <p>
- Class <a class="link" href="../ref/basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>
+ Class basic_regex
         and its typedefs regex and wregex are thread safe, in that compiled regular
         expressions can safely be shared between threads. The matching algorithms
- <a class="link" href="../ref/regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>,
- <a class="link" href="../ref/regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>,
- and <a class="link" href="../ref/regex_replace.html" title="regex_replace"><code class="computeroutput"><span class="identifier">regex_replace</span></code></a>
- are all re-entrant and thread safe. Class <a class="link" href="../ref/match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> is now thread safe,
+ regex_match,
+ regex_search,
+ and regex_replace
+ are all re-entrant and thread safe. Class match_results is now thread safe,
         in that the results of a match can be safely copied from one thread to another
- (for example one thread may find matches and push <a class="link" href="../ref/match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> instances onto a queue,
+ (for example one thread may find matches and push match_results instances onto a queue,
         while another thread pops them off the other end), otherwise use a separate
- instance of <a class="link" href="../ref/match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a>
+ instance of match_results
         per thread.
       </p>
 <p>
- The <a class="link" href="../ref/posix.html" title="POSIX Compatible C API's">POSIX API functions</a> are
+ The POSIX API functions are
         all re-entrant and thread safe, regular expressions compiled with regcomp
         can also be shared between threads.
       </p>
 <p>
- The <a class="link" href="../ref/deprecated_interfaces/old_regex.html" title="High Level Class RegEx (Deprecated)">class
+ The <a href="../ref/deprecated_interfaces/old_regex.html" title="High Level Class RegEx (Deprecated)">class
         RegEx</a> is only thread safe if each thread gets its own RegEx instance
         (apartment threading) - this is a consequence of RegEx handling both compiling
         and matching regular expressions.

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/captures.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/captures.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/captures.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Understanding Marked Sub-Expressions and Captures</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Regex">
 <link rel="up" href="../index.html" title="Boost.Regex">
 <link rel="prev" href="unicode.html" title="Unicode and Boost.Regex">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_regex.captures"></a><a class="link" href="captures.html" title="Understanding Marked Sub-Expressions and Captures"> Understanding Marked Sub-Expressions
+<a name="boost_regex.captures"></a><a href="captures.html" title="Understanding Marked Sub-Expressions and Captures"> Understanding Marked Sub-Expressions
     and Captures</a>
 </h2></div></div></div>
 <p>
@@ -35,8 +35,8 @@
       accessed.
     </p>
 <a name="boost_regex.captures.marked_sub_expressions"></a><h5>
-<a name="id2638384"></a>
- <a class="link" href="captures.html#boost_regex.captures.marked_sub_expressions">Marked sub-expressions</a>
+<a name="id493056"></a>
+ Marked sub-expressions
     </h5>
 <p>
       Every time a Perl regular expression contains a parenthesis group <code class="computeroutput"><span class="special">()</span></code>, it spits out an extra field, known as a
@@ -131,11 +131,10 @@
 </tbody>
 </table></div>
 <p>
- In Boost.Regex all these are accessible via the <a class="link" href="ref/match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> class that gets filled
- in when calling one of the regular expression matching algorithms ( <a class="link" href="ref/regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>, <a class="link" href="ref/regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>, or <a class="link" href="ref/regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a>). So given:
+ In Boost.Regex all these are accessible via the match_results class that gets filled
+ in when calling one of the regular expression matching algorithms ( regex_search, regex_match, or regex_iterator). So given:
     </p>
-<pre class="programlisting">
-<span class="identifier">boost</span><span class="special">::</span><span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">IteratorType</span><span class="special">&gt;</span> <span class="identifier">m</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">IteratorType</span><span class="special">&gt;</span> <span class="identifier">m</span><span class="special">;</span>
 </pre>
 <p>
       The Perl and Boost.Regex equivalents are as follows:
@@ -209,18 +208,18 @@
 </tbody>
 </table></div>
 <p>
- In Boost.Regex each sub-expression match is represented by a <a class="link" href="ref/sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a> object, this is basically
+ In Boost.Regex each sub-expression match is represented by a sub_match object, this is basically
       just a pair of iterators denoting the start and end position of the sub-expression
       match, but there are some additional operators provided so that objects of
- type <a class="link" href="ref/sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ type sub_match
       behave a lot like a <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span></code>: for example they are implicitly
       convertible to a <code class="computeroutput"><span class="identifier">basic_string</span></code>,
       they can be compared to a string, added to a string, or streamed out to an
       output stream.
     </p>
 <a name="boost_regex.captures.unmatched_sub_expressions"></a><h5>
-<a name="id2638911"></a>
- <a class="link" href="captures.html#boost_regex.captures.unmatched_sub_expressions">Unmatched Sub-Expressions</a>
+<a name="id493679"></a>
+ Unmatched Sub-Expressions
     </h5>
 <p>
       When a regular expression match is found there is no need for all of the marked
@@ -232,8 +231,8 @@
       you can determine which sub-expressions matched by accessing the <code class="computeroutput"><span class="identifier">sub_match</span><span class="special">::</span><span class="identifier">matched</span></code> data member.
     </p>
 <a name="boost_regex.captures.repeated_captures"></a><h5>
-<a name="id2638964"></a>
- <a class="link" href="captures.html#boost_regex.captures.repeated_captures">Repeated Captures</a>
+<a name="id493741"></a>
+ Repeated Captures
     </h5>
 <p>
       When a marked sub-expression is repeated, then the sub-expression gets "captured"
@@ -256,8 +255,7 @@
       the regular expression matching. The following example program shows how this
       information may be used:
     </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
 
 <span class="keyword">void</span> <span class="identifier">print_captures</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">regx</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">text</span><span class="special">)</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/configuration.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/configuration.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/configuration.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Configuration</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Regex">
 <link rel="up" href="../index.html" title="Boost.Regex">
 <link rel="prev" href="../index.html" title="Boost.Regex">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_regex.configuration"></a><a class="link" href="configuration.html" title="Configuration"> Configuration</a>
+<a name="boost_regex.configuration"></a> Configuration
 </h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"> Compiler Setup</span></dt>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/algorithm.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/algorithm.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/algorithm.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Algorithm Selection</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../configuration.html" title="Configuration">
 <link rel="prev" href="linkage.html" title="Linkage Options">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.configuration.algorithm"></a><a class="link" href="algorithm.html" title="Algorithm Selection"> Algorithm Selection</a>
+<a name="boost_regex.configuration.algorithm"></a> Algorithm Selection
 </h3></div></div></div>
 <div class="informaltable"><table class="table">
 <colgroup>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/compiler.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/compiler.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/compiler.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Compiler Setup</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../configuration.html" title="Configuration">
 <link rel="prev" href="../configuration.html" title="Configuration">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.configuration.compiler"></a><a class="link" href="compiler.html" title="Compiler Setup"> Compiler Setup</a>
+<a name="boost_regex.configuration.compiler"></a> Compiler Setup
 </h3></div></div></div>
 <p>
         You shouldn't need to do anything special to configure Boost.Regex for use

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/linkage.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/linkage.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/linkage.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Linkage Options</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../configuration.html" title="Configuration">
 <link rel="prev" href="locale.html" title="Locale and traits class selection">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.configuration.linkage"></a><a class="link" href="linkage.html" title="Linkage Options"> Linkage Options</a>
+<a name="boost_regex.configuration.linkage"></a> Linkage Options
 </h3></div></div></div>
 <div class="informaltable"><table class="table">
 <colgroup>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/locale.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/locale.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/locale.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Locale and traits class selection</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../configuration.html" title="Configuration">
 <link rel="prev" href="compiler.html" title="Compiler Setup">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.configuration.locale"></a><a class="link" href="locale.html" title="Locale and traits class selection"> Locale and traits
+<a name="boost_regex.configuration.locale"></a><a href="locale.html" title="Locale and traits class selection"> Locale and traits
       class selection</a>
 </h3></div></div></div>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/tuning.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/tuning.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/configuration/tuning.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Algorithm Tuning</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../configuration.html" title="Configuration">
 <link rel="prev" href="algorithm.html" title="Algorithm Selection">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.configuration.tuning"></a><a class="link" href="tuning.html" title="Algorithm Tuning"> Algorithm Tuning</a>
+<a name="boost_regex.configuration.tuning"></a> Algorithm Tuning
 </h3></div></div></div>
 <p>
         The following option applies only if BOOST_REGEX_RECURSIVE is set.

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/format.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/format.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/format.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Search and Replace Format String Syntax</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Regex">
 <link rel="up" href="../index.html" title="Boost.Regex">
 <link rel="prev" href="syntax/leftmost_longest_rule.html" title="The Leftmost Longest Rule">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_regex.format"></a><a class="link" href="format.html" title="Search and Replace Format String Syntax"> Search and Replace Format String Syntax</a>
+<a name="boost_regex.format"></a> Search and Replace Format String Syntax
 </h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"> Sed Format String Syntax</span></dt>
@@ -33,12 +33,12 @@
       Format String Syntax</a></span></dt>
 </dl></div>
 <p>
- Format strings are used by the algorithm <a class="link" href="ref/regex_replace.html" title="regex_replace"><code class="computeroutput"><span class="identifier">regex_replace</span></code></a> and by <a class="link" href="ref/match_results.html#boost_regex.match_results_format"><code class="computeroutput"><span class="identifier">match_results</span><span class="special">&lt;&gt;::</span><span class="identifier">format</span></code></a>, and are used to transform
+ Format strings are used by the algorithm regex_replace and by match_results<>::format, and are used to transform
       one string into another.
     </p>
 <p>
- There are three kind of format string: <a class="link" href="format/sed_format.html" title="Sed Format String Syntax">Sed</a>,
- <a class="link" href="format/perl_format.html" title="Perl Format String Syntax">Perl</a> and <a class="link" href="format/boost_format_syntax.html" title="Boost-Extended Format String Syntax">Boost-Extended</a>.
+ There are three kind of format string: Sed,
+ Perl and Boost-Extended.
     </p>
 <p>
       Alternatively, when the flag <code class="computeroutput"><span class="identifier">format_literal</span></code>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/format/boost_format_syntax.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/format/boost_format_syntax.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/format/boost_format_syntax.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Boost-Extended Format String Syntax</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../format.html" title="Search and Replace Format String Syntax">
 <link rel="prev" href="perl_format.html" title="Perl Format String Syntax">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.format.boost_format_syntax"></a><a class="link" href="boost_format_syntax.html" title="Boost-Extended Format String Syntax"> Boost-Extended
+<a name="boost_regex.format.boost_format_syntax"></a><a href="boost_format_syntax.html" title="Boost-Extended Format String Syntax"> Boost-Extended
       Format String Syntax</a>
 </h3></div></div></div>
 <p>
@@ -32,16 +32,16 @@
         '$', '\', '(', ')', '?', and ':'.
       </p>
 <a name="boost_regex.format.boost_format_syntax.grouping"></a><h5>
-<a name="id2658145"></a>
- <a class="link" href="boost_format_syntax.html#boost_regex.format.boost_format_syntax.grouping">Grouping</a>
+<a name="id515629"></a>
+ Grouping
       </h5>
 <p>
         The characters '(' and ')' perform lexical grouping, so use \( and \) if
         you want a to output literal parenthesis.
       </p>
 <a name="boost_regex.format.boost_format_syntax.conditionals"></a><h5>
-<a name="id2658172"></a>
- <a class="link" href="boost_format_syntax.html#boost_regex.format.boost_format_syntax.conditionals">Conditionals</a>
+<a name="id515659"></a>
+ Conditionals
       </h5>
 <p>
         The character '?' begins a conditional expression, the general form is:
@@ -66,8 +66,8 @@
         with "bar" otherwise.
       </p>
 <a name="boost_regex.format.boost_format_syntax.placeholder_sequences"></a><h5>
-<a name="id2658225"></a>
- <a class="link" href="boost_format_syntax.html#boost_regex.format.boost_format_syntax.placeholder_sequences">Placeholder
+<a name="id515716"></a>
+ <a href="boost_format_syntax.html#boost_regex.format.boost_format_syntax.placeholder_sequences">Placeholder
         Sequences</a>
       </h5>
 <p>
@@ -161,8 +161,8 @@
         as a literal.
       </p>
 <a name="boost_regex.format.boost_format_syntax.escape_sequences"></a><h5>
-<a name="id2658380"></a>
- <a class="link" href="boost_format_syntax.html#boost_regex.format.boost_format_syntax.escape_sequences">Escape
+<a name="id515888"></a>
+ <a href="boost_format_syntax.html#boost_regex.format.boost_format_syntax.escape_sequences">Escape
         Sequences</a>
       </h5>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/format/perl_format.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/format/perl_format.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/format/perl_format.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Perl Format String Syntax</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../format.html" title="Search and Replace Format String Syntax">
 <link rel="prev" href="sed_format.html" title="Sed Format String Syntax">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.format.perl_format"></a><a class="link" href="perl_format.html" title="Perl Format String Syntax"> Perl Format String Syntax</a>
+<a name="boost_regex.format.perl_format"></a> Perl Format String Syntax
 </h3></div></div></div>
 <p>
         Perl-style format strings treat all characters as literals except '$' and

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/format/sed_format.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/format/sed_format.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/format/sed_format.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Sed Format String Syntax</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../format.html" title="Search and Replace Format String Syntax">
 <link rel="prev" href="../format.html" title="Search and Replace Format String Syntax">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.format.sed_format"></a><a class="link" href="sed_format.html" title="Sed Format String Syntax"> Sed Format String Syntax</a>
+<a name="boost_regex.format.sed_format"></a> Sed Format String Syntax
 </h3></div></div></div>
 <p>
         Sed-style format strings treat all characters as literals except:

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/install.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/install.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/install.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Building and Installing the Library</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Regex">
 <link rel="up" href="../index.html" title="Boost.Regex">
 <link rel="prev" href="configuration/tuning.html" title="Algorithm Tuning">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_regex.install"></a><a class="link" href="install.html" title="Building and Installing the Library"> Building and Installing the Library</a>
+<a name="boost_regex.install"></a> Building and Installing the Library
 </h2></div></div></div>
 <p>
       When you extract the library from its zip file, you must preserve its internal
@@ -49,8 +49,8 @@
       file before you can use it, instructions for specific platforms are as follows:
     </p>
 <a name="boost_regex.install.building_with_bjam"></a><h5>
-<a name="id2585106"></a>
- <a class="link" href="install.html#boost_regex.install.building_with_bjam">Building with bjam</a>
+<a name="id436188"></a>
+ Building with bjam
     </h5>
 <p>
       This is now the preferred method for building and installing this library,
@@ -58,8 +58,8 @@
       started guide</a> for more information.
     </p>
 <a name="boost_regex.install.building_with_unicode_and_icu_support"></a><h5>
-<a name="id2585137"></a>
- <a class="link" href="install.html#boost_regex.install.building_with_unicode_and_icu_support">Building
+<a name="id436222"></a>
+ <a href="install.html#boost_regex.install.building_with_unicode_and_icu_support">Building
       With Unicode and ICU Support</a>
     </h5>
 <p>
@@ -96,12 +96,12 @@
       ICU you are using is binary compatible with the toolset you use to build Boost.
     </p>
 <a name="boost_regex.install.building_via_makefiles"></a><h5>
-<a name="id2635719"></a>
- <a class="link" href="install.html#boost_regex.install.building_via_makefiles">Building via makefiles</a>
+<a name="id435695"></a>
+ Building via makefiles
     </h5>
 <a name="boost_regex.install.borland_c___builder_"></a><h6>
-<a name="id2635737"></a>
- <a class="link" href="install.html#boost_regex.install.borland_c___builder_">Borland C++ Builder:</a>
+<a name="id435718"></a>
+ Borland C++ Builder:
     </h6>
 <div class="itemizedlist"><ul type="disc">
 <li>
@@ -166,8 +166,8 @@
       a lot in compile times!
     </p>
 <a name="boost_regex.install.microsoft_visual_c___6__7__7_1_and_8"></a><h5>
-<a name="id2636069"></a>
- <a class="link" href="install.html#boost_regex.install.microsoft_visual_c___6__7__7_1_and_8">Microsoft
+<a name="id490291"></a>
+ <a href="install.html#boost_regex.install.microsoft_visual_c___6__7__7_1_and_8">Microsoft
       Visual C++ 6, 7, 7.1 and 8</a>
     </h5>
 <p>
@@ -253,8 +253,8 @@
       </li>
 </ul></div>
 <a name="boost_regex.install.gcc_2_95_and_later_"></a><h6>
-<a name="id2636345"></a>
- <a class="link" href="install.html#boost_regex.install.gcc_2_95_and_later_">GCC(2.95 and later)</a>
+<a name="id490603"></a>
+ GCC(2.95 and later)
     </h6>
 <p>
       You can build with gcc using the normal boost Jamfile in <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">&gt;/</span><span class="identifier">libs</span><span class="special">/</span><span class="identifier">regex</span><span class="special">/</span><span class="identifier">build</span></code>, alternatively
@@ -302,8 +302,8 @@
       see the config library documentation.
     </p>
 <a name="boost_regex.install.sun_workshop_6_1"></a><h6>
-<a name="id2636513"></a>
- <a class="link" href="install.html#boost_regex.install.sun_workshop_6_1">Sun Workshop 6.1</a>
+<a name="id490804"></a>
+ Sun Workshop 6.1
     </h6>
 <p>
       There is a makefile for the sun (6.1) compiler (C++ version 3.12). From the
@@ -347,8 +347,8 @@
       will build v9 variants of the regex library named libboost_regex_v9.a etc.
     </p>
 <a name="boost_regex.install.makefiles_for_other_compilers"></a><h6>
-<a name="id2636697"></a>
- <a class="link" href="install.html#boost_regex.install.makefiles_for_other_compilers">Makefiles
+<a name="id491026"></a>
+ <a href="install.html#boost_regex.install.makefiles_for_other_compilers">Makefiles
       for Other compilers</a>
     </h6>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/introduction_and_overview.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/introduction_and_overview.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/introduction_and_overview.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Introduction and Overview</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Regex">
 <link rel="up" href="../index.html" title="Boost.Regex">
 <link rel="prev" href="install.html" title="Building and Installing the Library">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_regex.introduction_and_overview"></a><a class="link" href="introduction_and_overview.html" title="Introduction and Overview">Introduction and
+<a name="boost_regex.introduction_and_overview"></a><a href="introduction_and_overview.html" title="Introduction and Overview">Introduction and
     Overview</a>
 </h2></div></div></div>
 <p>
@@ -39,7 +39,7 @@
       libraries can not do.
     </p>
 <p>
- The class <a class="link" href="ref/basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>
+ The class basic_regex
       is the key class in this library; it represents a "machine readable"
       regular expression, and is very closely modeled on <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span></code>,
       think of it as a string plus the actual state-machine required by the regular
@@ -47,8 +47,7 @@
       there are two typedefs that are almost always the means by which this class
       is referenced:
     </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span>
          <span class="keyword">class</span> <span class="identifier">traits</span> <span class="special">=</span> <span class="identifier">regex_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span> <span class="special">&gt;</span>
@@ -86,8 +85,7 @@
       Now let's take that expression and place it in some C++ code to validate the
       format of a credit card number:
     </p>
-<pre class="programlisting">
-<span class="keyword">bool</span> <span class="identifier">validate_card_format</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span>
+<pre class="programlisting"><span class="keyword">bool</span> <span class="identifier">validate_card_format</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span>
 <span class="special">{</span>
    <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e</span><span class="special">(</span><span class="string">"(\\d{4}[- ]){3}\\d{4}"</span><span class="special">);</span>
    <span class="keyword">return</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">s</span><span class="special">,</span> <span class="identifier">e</span><span class="special">);</span>
@@ -112,11 +110,10 @@
       the utilities sed and Perl will already be ahead here; we need two strings
       - one a regular expression - the other a "format string" that provides
       a description of the text to replace the match with. In Boost.Regex this search
- and replace operation is performed with the algorithm <a class="link" href="ref/regex_replace.html" title="regex_replace"><code class="computeroutput"><span class="identifier">regex_replace</span></code></a>, for our credit card
+ and replace operation is performed with the algorithm regex_replace, for our credit card
       example we can write two algorithms like this to provide the format conversions:
     </p>
-<pre class="programlisting">
-<span class="comment">// match any format with the regular expression:
+<pre class="programlisting"><span class="comment">// match any format with the regular expression:
 </span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e</span><span class="special">(</span><span class="string">"\\A(\\d{3,4})[- ]?(\\d{4})[- ]?(\\d{4})[- ]?(\\d{4})\\z"</span><span class="special">);</span>
 <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">machine_format</span><span class="special">(</span><span class="string">"\\1\\2\\3\\4"</span><span class="special">);</span>
 <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">human_format</span><span class="special">(</span><span class="string">"\\1-\\2-\\3-\\4"</span><span class="special">);</span>
@@ -141,11 +138,10 @@
       expression match, however in general the result of a match contains a number
       of sub-expression matches in addition to the overall match. When the library
       needs to report a regular expression match it does so using an instance of
- the class <a class="link" href="ref/match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a>,
+ the class match_results,
       as before there are typedefs of this class for the most common cases:
     </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
 
 <span class="keyword">typedef</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*&gt;</span> <span class="identifier">cmatch</span><span class="special">;</span>
 <span class="keyword">typedef</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">wchar_t</span><span class="special">*&gt;</span> <span class="identifier">wcmatch</span><span class="special">;</span>
@@ -155,12 +151,12 @@
 <span class="special">}</span>
 </pre>
 <p>
- The algorithms <a class="link" href="ref/regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>
- and <a class="link" href="ref/regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>
- make use of <a class="link" href="ref/match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a>
- to report what matched; the difference between these algorithms is that <a class="link" href="ref/regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>
+ The algorithms regex_search
+ and regex_match
+ make use of match_results
+ to report what matched; the difference between these algorithms is that regex_match
       will only find matches that consume <span class="emphasis"><em>all</em></span> of the input text,
- where as <a class="link" href="ref/regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>
+ where as regex_search
       will search for a match anywhere within the text being matched.
     </p>
 <p>
@@ -169,21 +165,21 @@
       of seamlessly searching almost any kind of data.
     </p>
 <p>
- For search and replace operations, in addition to the algorithm <a class="link" href="ref/regex_replace.html" title="regex_replace"><code class="computeroutput"><span class="identifier">regex_replace</span></code></a> that we have already
- seen, the <a class="link" href="ref/match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a>
+ For search and replace operations, in addition to the algorithm regex_replace that we have already
+ seen, the match_results
       class has a <code class="computeroutput"><span class="identifier">format</span></code> member that
       takes the result of a match and a format string, and produces a new string
       by merging the two.
     </p>
 <p>
       For iterating through all occurences of an expression within a text, there
- are two iterator types: <a class="link" href="ref/regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a> will enumerate over
- the <a class="link" href="ref/match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a>
- objects found, while <a class="link" href="ref/regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a> will enumerate
+ are two iterator types: regex_iterator will enumerate over
+ the match_results
+ objects found, while regex_token_iterator will enumerate
       a series of strings (similar to perl style split operations).
     </p>
 <p>
- For those that dislike templates, there is a high level wrapper class <a class="link" href="ref/deprecated_interfaces/old_regex.html" title="High Level Class RegEx (Deprecated)"><code class="computeroutput"><span class="identifier">RegEx</span></code></a>
+ For those that dislike templates, there is a high level wrapper class RegEx
       that is an encapsulation of the lower level template code - it provides a simplified
       interface for those that don't need the full power of the library, and supports
       only narrow characters, and the "extended" regular expression syntax.
@@ -191,12 +187,12 @@
       C++ standard library proposal.
     </p>
 <p>
- The POSIX API functions: <a class="link" href="ref/posix.html#boost_regex.ref.posix.regcomp"><code class="computeroutput"><span class="identifier">regcomp</span></code></a>, <a class="link" href="ref/posix.html#boost_regex.ref.posix.regexec"><code class="computeroutput"><span class="identifier">regexec</span></code></a>, <a class="link" href="ref/posix.html#boost_regex.ref.posix.regfree"><code class="computeroutput"><span class="identifier">regfree</span></code></a> and [regerr], are available
+ The POSIX API functions: regcomp, regexec, regfree and [regerr], are available
       in both narrow character and Unicode versions, and are provided for those who
       need compatibility with these API's.
     </p>
 <p>
- Finally, note that the library now has <a class="link" href="background_information/locale.html" title="Localization">run-time
+ Finally, note that the library now has <a href="background_information/locale.html" title="Localization">run-time
       localization support</a>, and recognizes the full POSIX regular expression
       syntax - including advanced features like multi-character collating elements
       and equivalence classes - as well as providing compatibility with other regular

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/partial_matches.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/partial_matches.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/partial_matches.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Partial Matches</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Regex">
 <link rel="up" href="../index.html" title="Boost.Regex">
 <link rel="prev" href="captures.html" title="Understanding Marked Sub-Expressions and Captures">
@@ -24,13 +24,13 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_regex.partial_matches"></a><a class="link" href="partial_matches.html" title="Partial Matches"> Partial Matches</a>
+<a name="boost_regex.partial_matches"></a> Partial Matches
 </h2></div></div></div>
 <p>
- The <a class="link" href="ref/match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>
+ The match_flag_type
       <code class="computeroutput"><span class="identifier">match_partial</span></code> can be passed
- to the following algorithms: <a class="link" href="ref/regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>, <a class="link" href="ref/regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>, and <a class="link" href="ref/deprecated_interfaces/regex_grep.html" title="regex_grep (Deprecated)"><code class="computeroutput"><span class="identifier">regex_grep</span></code></a>, and used with the iterator
- <a class="link" href="ref/regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a>.
+ to the following algorithms: regex_match, regex_search, and regex_grep, and used with the iterator
+ regex_iterator.
       When used it indicates that partial as well as full matches should be found.
       A partial match is one that matched one or more characters at the end of the
       text input, but did not match all of the regular expression (although it may
@@ -40,9 +40,9 @@
       into memory (or even into a memory mapped file), or are of indeterminate length
       (for example the source may be a socket or similar). Partial and full matches
       can be differentiated as shown in the following table (the variable M represents
- an instance of <a class="link" href="ref/match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> as filled in by <a class="link" href="ref/regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>,
- <a class="link" href="ref/regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>
- or <a class="link" href="ref/deprecated_interfaces/regex_grep.html" title="regex_grep (Deprecated)"><code class="computeroutput"><span class="identifier">regex_grep</span></code></a>):
+ an instance of match_results as filled in by regex_match,
+ regex_search
+ or regex_grep):
     </p>
 <div class="informaltable"><table class="table">
 <colgroup>
@@ -192,8 +192,7 @@
       the input could never become a valid number, and the inputted character must
       be discarded, and a suitable error indication displayed to the user.
     </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 
@@ -228,8 +227,7 @@
       if a partial match was encountered, then the partial match gets searched a
       second time as the start of the next batch of text:
     </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">fstream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">sstream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Reference</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Regex">
 <link rel="up" href="../index.html" title="Boost.Regex">
 <link rel="prev" href="format/boost_format_syntax.html" title="Boost-Extended Format String Syntax">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_regex.ref"></a><a class="link" href="ref.html" title="Reference"> Reference</a>
+<a name="boost_regex.ref"></a> Reference
 </h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"> basic_regex</span></dt>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/bad_expression.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/bad_expression.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/bad_expression.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>bad_expression</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="regex_token_iterator.html" title="regex_token_iterator">
@@ -24,22 +24,20 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.bad_expression"></a><a class="link" href="bad_expression.html" title="bad_expression"> bad_expression</a>
+<a name="boost_regex.ref.bad_expression"></a> bad_expression
 </h3></div></div></div>
 <a name="boost_regex.ref.bad_expression.synopsis"></a><h5>
-<a name="id2731436"></a>
- <a class="link" href="bad_expression.html#boost_regex.ref.bad_expression.synopsis">Synopsis</a>
+<a name="id596313"></a>
+ Synopsis
       </h5>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">pattern_except</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">pattern_except</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
         The class <code class="computeroutput"><span class="identifier">regex_error</span></code> defines
         the type of objects thrown as exceptions to report errors during the conversion
         from a string representing a regular expression to a finite state machine.
       </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
 
 <span class="keyword">class</span> <span class="identifier">regex_error</span> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">runtime_error</span>
 <span class="special">{</span>
@@ -56,25 +54,22 @@
 <span class="special">}</span> <span class="comment">// namespace boost
 </span></pre>
 <a name="boost_regex.ref.bad_expression.description"></a><h5>
-<a name="id2731892"></a>
- <a class="link" href="bad_expression.html#boost_regex.ref.bad_expression.description">Description</a>
+<a name="id596816"></a>
+ Description
       </h5>
-<pre class="programlisting">
-<span class="identifier">regex_error</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">,</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">error_type</span> <span class="identifier">err</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span> <span class="identifier">pos</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">regex_error</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">,</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">error_type</span> <span class="identifier">err</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span> <span class="identifier">pos</span><span class="special">);</span>
 <span class="identifier">regex_error</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">error_type</span> <span class="identifier">err</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects:</strong></span> Constructs an object of class regex_error.
       </p>
-<pre class="programlisting">
-<span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">error_type</span> <span class="identifier">code</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">error_type</span> <span class="identifier">code</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects:</strong></span> returns the error code that represents
         parsing error that occurred.
       </p>
-<pre class="programlisting">
-<span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span> <span class="identifier">position</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span> <span class="identifier">position</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects:</strong></span> returns the location in the expression

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/basic_regex.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/basic_regex.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/basic_regex.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>basic_regex</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="../ref.html" title="Reference">
@@ -24,14 +24,13 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.basic_regex"></a><a class="link" href="basic_regex.html" title="basic_regex"> basic_regex</a>
+<a name="boost_regex.ref.basic_regex"></a> basic_regex
 </h3></div></div></div>
 <a name="boost_regex.ref.basic_regex.synopsis"></a><h5>
-<a name="id2658748"></a>
- <a class="link" href="basic_regex.html#boost_regex.ref.basic_regex.synopsis">Synopsis</a>
+<a name="id516301"></a>
+ Synopsis
       </h5>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
         The template class <code class="computeroutput"><span class="identifier">basic_regex</span></code>
@@ -42,24 +41,23 @@
 <li>
 <code class="computeroutput"><span class="identifier">charT</span></code>: determines the character
           type, i.e. either <code class="computeroutput"><span class="keyword">char</span></code> or
- <code class="computeroutput"><span class="keyword">wchar_t</span></code>; see <a class="link" href="concepts/charT_concept.html" title="charT Requirements">charT
+ <code class="computeroutput"><span class="keyword">wchar_t</span></code>; see <a href="concepts/charT_concept.html" title="charT Requirements">charT
           concept</a>.
         </li>
 <li>
 <code class="computeroutput"><span class="identifier">traits</span></code>: determines the
           behavior of the character type, for example which character class names
- are recognized. A default traits class is provided: <code class="computeroutput"><span class="identifier">regex_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span></code>. See also <a class="link" href="concepts/traits_concept.html" title="Traits Class Requirements">traits
+ are recognized. A default traits class is provided: <code class="computeroutput"><span class="identifier">regex_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span></code>. See also <a href="concepts/traits_concept.html" title="Traits Class Requirements">traits
           concept</a>.
         </li>
 </ul></div>
 <p>
         For ease of use there are two typedefs that define the two standard <code class="computeroutput"><span class="identifier">basic_regex</span></code> instances, unless you want
         to use custom traits classes or non-standard character types (for example
- see <a class="link" href="non_std_strings/icu.html" title="Working With Unicode and ICU String Types">unicode support</a>),
+ see unicode support),
         you won't need to use anything other than these:
       </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span> <span class="special">=</span> <span class="identifier">regex_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span> <span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">basic_regex</span><span class="special">;</span>
@@ -74,8 +72,7 @@
         follows: it is based very closely on class <code class="computeroutput"><span class="identifier">basic_string</span></code>,
         and fulfils the requirements for a constant-container of <code class="computeroutput"><span class="identifier">charT</span></code>.
       </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span> <span class="special">=</span> <span class="identifier">regex_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span> <span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">basic_regex</span> <span class="special">{</span>
@@ -88,156 +85,156 @@
    <span class="keyword">typedef</span> <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">&amp;</span> <span class="identifier">const_reference</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span> <span class="identifier">difference_type</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">size_type</span><span class="special">;</span>
- <span class="keyword">typedef</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">flag_type</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">flag_type</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">locale_type</span> <span class="identifier">locale_type</span><span class="special">;</span>
 
    <span class="comment">// constants:
 </span> <span class="comment">// main option selection:
-</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">normal</span>
+</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">normal</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">ECMAScript</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">ECMAScript</span>
                                                 <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">JavaScript</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">JavaScript</span>
                                                 <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">JScript</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">JScript</span>
                                                 <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">basic</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">basic</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">basic</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">extended</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">extended</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">extended</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">awk</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">awk</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">awk</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">grep</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">grep</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">grep</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">egrep</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">egrep</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">egrep</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">sed</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">sed</span>
                                                 <span class="special">=</span> <span class="identifier">basic</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">sed</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">perl</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">perl</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">perl</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">literal</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">literal</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">literal</span><span class="special">;</span>
 
    <span class="comment">// modifiers specific to perl expressions:
-</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_mod_m</span>
+</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">no_mod_m</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_mod_m</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_mod_s</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">no_mod_s</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_mod_s</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">mod_s</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">mod_s</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">mod_s</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">mod_x</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">mod_x</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">mod_x</span><span class="special">;</span>
 
    <span class="comment">// modifiers specific to POSIX basic expressions:
-</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">bk_plus_qm</span>
+</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">bk_plus_qm</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">bk_plus_qm</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">bk_vbar</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">bk_vbar</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">bk_vbar</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_char_classes</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">no_char_classes</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_char_classes</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_intervals</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">no_intervals</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_intervals</span>
 
    <span class="comment">// common modifiers:
-</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">nosubs</span>
+</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">nosubs</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">nosubs</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">optimize</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">optimize</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">optimize</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">collate</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">collate</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">collate</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">newline_alt</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">newline_alt</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">newline_alt</span><span class="special">;</span>
- <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_except</span>
+ <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">no_except</span>
                                                 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">newline_alt</span><span class="special">;</span>
 
    <span class="comment">// construct/copy/destroy:
-</span> <span class="keyword">explicit</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct1">basic_regex</a> <span class="special">();</span>
- <span class="keyword">explicit</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct2">basic_regex</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct3">basic_regex</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p2</span><span class="special">,</span>
+</span> <span class="keyword">explicit</span> basic_regex <span class="special">();</span>
+ <span class="keyword">explicit</span> basic_regex<span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
+ basic_regex<span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p2</span><span class="special">,</span>
                <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct4">basic_regex</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct5">basic_regex</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;);</span>
+ basic_regex<span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span>
+ basic_regex<span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;);</span>
 
    <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">&gt;</span>
- <span class="keyword">explicit</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct6">basic_regex</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">p</span><span class="special">,</span>
+ <span class="keyword">explicit</span> basic_regex<span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">p</span><span class="special">,</span>
                         <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 
    <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">InputIterator</span><span class="special">&gt;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct7">basic_regex</a><span class="special">(</span><span class="identifier">InputIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">InputIterator</span> <span class="identifier">last</span><span class="special">,</span>
+ basic_regex<span class="special">(</span><span class="identifier">InputIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">InputIterator</span> <span class="identifier">last</span><span class="special">,</span>
                <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 
    <span class="special">~</span><span class="identifier">basic_regex</span><span class="special">();</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.opeq1">basic_regex&amp; operator=</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;);</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.opeq2">basic_regex&amp; operator=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">);</span>
+ basic_regex& operator=<span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;);</span>
+ basic_regex& operator= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">);</span>
 
    <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">&gt;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.opeq3">basic_regex&amp; operator=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">p</span><span class="special">);</span>
+ basic_regex& operator= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">p</span><span class="special">);</span>
    <span class="comment">// iterators:
-</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.begin">const_iterator begin</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.end">const_iterator end</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+</span> const_iterator begin<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ const_iterator end<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
    <span class="comment">// capacity:
-</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.size">size_type size</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.max_size">size_type max_size</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.empty">bool empty</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.mark_count">unsigned mark_count</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+</span> size_type size<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ size_type max_size<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ bool empty<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ unsigned mark_count<span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
    <span class="comment">//
 </span> <span class="comment">// modifiers:
-</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign1">basic_regex&amp; assign</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign2">basic_regex&amp; assign</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span>
+</span> basic_regex& assign<span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
+ basic_regex& assign<span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span>
                        <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign3">basic_regex&amp; assign</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span>
+ basic_regex& assign<span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span>
 
    <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">string_traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">&gt;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign4">basic_regex&amp; assign</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">string_traits</span><span class="special">,</span> <span class="identifier">A</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
+ basic_regex& assign<span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">string_traits</span><span class="special">,</span> <span class="identifier">A</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                        <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 
    <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">InputIterator</span><span class="special">&gt;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign5">basic_regex&amp; assign</a><span class="special">(</span><span class="identifier">InputIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">InputIterator</span> <span class="identifier">last</span><span class="special">,</span>
+ basic_regex& assign<span class="special">(</span><span class="identifier">InputIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">InputIterator</span> <span class="identifier">last</span><span class="special">,</span>
                        <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 
    <span class="comment">// const operations:
-</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.flags">flag_type flags</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.status">int status</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.str">basic_string&lt;charT&gt; str</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.compare">int compare</a><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&amp;)</span> <span class="keyword">const</span><span class="special">;</span>
+</span> flag_type flags<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ int status<span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+ basic_string<charT> str<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ int compare<span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&amp;)</span> <span class="keyword">const</span><span class="special">;</span>
    <span class="comment">// locale:
-</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.imbue">locale_type imbue</a><span class="special">(</span><span class="identifier">locale_type</span> <span class="identifier">loc</span><span class="special">);</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.getloc">locale_type getloc</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+</span> locale_type imbue<span class="special">(</span><span class="identifier">locale_type</span> <span class="identifier">loc</span><span class="special">);</span>
+ locale_type getloc<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
    <span class="comment">// swap
-</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.swap">void swap</a><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&amp;)</span> <span class="keyword">throw</span><span class="special">();</span>
+</span> void swap<span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&amp;)</span> <span class="keyword">throw</span><span class="special">();</span>
 <span class="special">};</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_eq">bool operator ==</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+bool operator == <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_ne">bool operator !=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+bool operator != <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_lt">bool operator &lt;</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+bool operator < <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_le">bool operator &lt;=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+bool operator <= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_ge">bool operator &gt;=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+bool operator >= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_gt">bool operator &gt;</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+bool operator > <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">io_traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">re_traits</span><span class="special">&gt;</span>
 <span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">io_traits</span><span class="special">&gt;&amp;</span>
- <a class="link" href="basic_regex.html#boost_regex.basic_regex.op_stream">operator &lt;&lt;</a> <span class="special">(</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">io_traits</span><span class="special">&gt;&amp;</span> <span class="identifier">os</span><span class="special">,</span>
+ operator << <span class="special">(</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">io_traits</span><span class="special">&gt;&amp;</span> <span class="identifier">os</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">re_traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_swap">void swap</a><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e1</span><span class="special">,</span>
+void swap<span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e1</span><span class="special">,</span>
          <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e2</span><span class="special">);</span>
 
 <span class="keyword">typedef</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">regex</span><span class="special">;</span>
@@ -246,92 +243,90 @@
 <span class="special">}</span> <span class="comment">// namespace boost
 </span></pre>
 <a name="boost_regex.ref.basic_regex.description"></a><h5>
-<a name="id2664108"></a>
- <a class="link" href="basic_regex.html#boost_regex.ref.basic_regex.description">Description</a>
+<a name="id522233"></a>
+ Description
       </h5>
 <p>
         Class <code class="computeroutput"><span class="identifier">basic_regex</span></code> has the
         following public members:
       </p>
-<pre class="programlisting">
-<span class="comment">// main option selection:
-</span><span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">normal</span>
+<pre class="programlisting"><span class="comment">// main option selection:
+</span><span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">normal</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">ECMAScript</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">ECMAScript</span>
                                           <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">JavaScript</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">JavaScript</span>
                                           <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">JScript</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">JScript</span>
                                           <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">basic</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">basic</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">basic</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">extended</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">extended</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">extended</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">awk</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">awk</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">awk</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">grep</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">grep</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">grep</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">egrep</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">egrep</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">egrep</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">sed</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">sed</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">sed</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">perl</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">perl</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">perl</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">literal</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">literal</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">literal</span><span class="special">;</span>
 
 <span class="comment">// modifiers specific to perl expressions:
-</span><span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_mod_m</span>
+</span><span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">no_mod_m</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_mod_m</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_mod_s</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">no_mod_s</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_mod_s</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">mod_s</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">mod_s</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">mod_s</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">mod_x</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">mod_x</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">mod_x</span><span class="special">;</span>
 
 <span class="comment">// modifiers specific to POSIX basic expressions:
-</span><span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">bk_plus_qm</span>
+</span><span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">bk_plus_qm</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">bk_plus_qm</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">bk_vbar</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">bk_vbar</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">bk_vbar</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_char_classes</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">no_char_classes</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_char_classes</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_intervals</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">no_intervals</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_intervals</span>
 
 <span class="comment">// common modifiers:
-</span><span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">nosubs</span>
+</span><span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">nosubs</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">nosubs</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">optimize</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">optimize</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">optimize</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">collate</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">collate</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">collate</span><span class="special">;</span>
-<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">newline_alt</span>
+<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> syntax_option_type <span class="identifier">newline_alt</span>
                                           <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">newline_alt</span><span class="special">;</span>
 </pre>
 <p>
- The meaning of these options is documented in the <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> section.
+ The meaning of these options is documented in the syntax_option_type section.
       </p>
 <p>
         The static constant members are provided as synonyms for the constants declared
         in namespace <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span></code>; for each constant of type
- <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a>
+ syntax_option_type
         declared in namespace <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span></code>
         then a constant with the same name, type and value is declared within the
         scope of basic_regex.
       </p>
 <a name="boost_regex.basic_regex.construct1"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_regex</span><span class="special">();</span>
+<pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">();</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Constructs an object of class
         <code class="computeroutput"><span class="identifier">basic_regex</span></code>.
       </p>
 <div class="table">
-<a name="id2665856"></a><p class="title"><b>Table 1. basic_regex default construction postconditions</b></p>
+<a name="id524168"></a><p class="title"><b>Table 1. basic_regex default construction postconditions</b></p>
 <div class="table-contents"><table class="table" summary="basic_regex default construction postconditions">
 <colgroup>
 <col>
@@ -391,28 +386,27 @@
 </div>
 <br class="table-break"><a name="boost_regex.basic_regex.construct2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Requires</strong></span>: <span class="emphasis"><em>p</em></span> shall not
         be a null pointer.
       </p>
 <p>
- <span class="bold"><strong>Throws</strong></span>: <a class="link" href="bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> if <span class="emphasis"><em>p</em></span>
+ <span class="bold"><strong>Throws</strong></span>: bad_expression if <span class="emphasis"><em>p</em></span>
         is not a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code>
         is set in <span class="emphasis"><em>f</em></span>.
       </p>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Constructs an object of class
- <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>;
+ basic_regex;
         the object's internal finite state machine is constructed from the regular
         expression contained in the null-terminated string <span class="emphasis"><em>p</em></span>,
- and interpreted according to the <a class="link" href="syntax_option_type.html" title="syntax_option_type">option
+ and interpreted according to the <a href="syntax_option_type.html" title="syntax_option_type">option
         flags</a> specified in <span class="emphasis"><em>f</em></span>.
       </p>
 <div class="table">
-<a name="id2666217"></a><p class="title"><b>Table 2. Postconditions for basic_regex construction</b></p>
+<a name="id524567"></a><p class="title"><b>Table 2. Postconditions for basic_regex construction</b></p>
 <div class="table-contents"><table class="table" summary="Postconditions for basic_regex construction">
 <colgroup>
 <col>
@@ -496,8 +490,7 @@
 </div>
 <br class="table-break"><a name="boost_regex.basic_regex.construct3"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p2</span><span class="special">,</span>
+<pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p2</span><span class="special">,</span>
             <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 </pre>
 <p>
@@ -511,14 +504,14 @@
       </p>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Constructs an object of class
- <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>;
+ basic_regex;
         the object's internal finite state machine is constructed from the regular
         expression contained in the sequence of characters [p1,p2), and interpreted
- according the <a class="link" href="syntax_option_type.html" title="syntax_option_type">option flags</a>
+ according the option flags
         specified in <span class="emphasis"><em>f</em></span>.
       </p>
 <div class="table">
-<a name="id2666711"></a><p class="title"><b>Table 3. Postconditions for basic_regex construction</b></p>
+<a name="id525113"></a><p class="title"><b>Table 3. Postconditions for basic_regex construction</b></p>
 <div class="table-contents"><table class="table" summary="Postconditions for basic_regex construction">
 <colgroup>
 <col>
@@ -602,8 +595,7 @@
 </div>
 <br class="table-break"><a name="boost_regex.basic_regex.construct4"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Requires</strong></span>: <span class="emphasis"><em>p</em></span> shall not
@@ -611,19 +603,19 @@
         <span class="identifier">max_size</span><span class="special">()</span></code>.
       </p>
 <p>
- <span class="bold"><strong>Throws</strong></span>: <a class="link" href="bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> if <span class="emphasis"><em>p</em></span>
+ <span class="bold"><strong>Throws</strong></span>: bad_expression if <span class="emphasis"><em>p</em></span>
         is not a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code>
         is set in <span class="emphasis"><em>f</em></span>.
       </p>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Constructs an object of class
- <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>;
+ basic_regex;
         the object's internal finite state machine is constructed from the regular
         expression contained in the sequence of characters [p, p+len), and interpreted
         according the option flags specified in <span class="emphasis"><em>f</em></span>.
       </p>
 <div class="table">
-<a name="id2667194"></a><p class="title"><b>Table 4. Postconditions for basic_regex construction</b></p>
+<a name="id525646"></a><p class="title"><b>Table 4. Postconditions for basic_regex construction</b></p>
 <div class="table-contents"><table class="table" summary="Postconditions for basic_regex construction">
 <colgroup>
 <col>
@@ -707,36 +699,34 @@
 </div>
 <br class="table-break"><a name="boost_regex.basic_regex.construct5"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Constructs an object of class
- <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>
+ basic_regex
         as a copy of the object <span class="emphasis"><em>e</em></span>.
       </p>
 <a name="boost_regex.basic_regex.construct6"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">&gt;</span>
 <span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
             <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 </pre>
 <p>
- <span class="bold"><strong>Throws</strong></span>: <a class="link" href="bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> if <span class="emphasis"><em>s</em></span>
+ <span class="bold"><strong>Throws</strong></span>: bad_expression if <span class="emphasis"><em>s</em></span>
         is not a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code>
         is set in <span class="emphasis"><em>f</em></span>.
       </p>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Constructs an object of class
- <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>;
+ basic_regex;
         the object's internal finite state machine is constructed from the regular
         expression contained in the string <span class="emphasis"><em>s</em></span>, and interpreted
- according to the <a class="link" href="syntax_option_type.html" title="syntax_option_type">option
+ according to the <a href="syntax_option_type.html" title="syntax_option_type">option
         flags</a> specified in <span class="emphasis"><em>f</em></span>.
       </p>
 <div class="table">
-<a name="id2667768"></a><p class="title"><b>Table 5. Postconditions for basic_regex construction</b></p>
+<a name="id526281"></a><p class="title"><b>Table 5. Postconditions for basic_regex construction</b></p>
 <div class="table-contents"><table class="table" summary="Postconditions for basic_regex construction">
 <colgroup>
 <col>
@@ -820,26 +810,25 @@
 </div>
 <br class="table-break"><a name="boost_regex.basic_regex.construct7"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardIterator</span><span class="special">&gt;</span>
 <span class="identifier">basic_regex</span><span class="special">(</span><span class="identifier">ForwardIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">ForwardIterator</span> <span class="identifier">last</span><span class="special">,</span>
             <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 </pre>
 <p>
- <span class="bold"><strong>Throws</strong></span>: <a class="link" href="bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> if the sequence [first,
+ <span class="bold"><strong>Throws</strong></span>: bad_expression if the sequence [first,
         last) is not a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code>
         is set in <span class="emphasis"><em>f</em></span>.
       </p>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Constructs an object of class
- <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>;
+ basic_regex;
         the object's internal finite state machine is constructed from the regular
         expression contained in the sequence of characters [first, last), and interpreted
- according to the <a class="link" href="syntax_option_type.html" title="syntax_option_type">option
+ according to the <a href="syntax_option_type.html" title="syntax_option_type">option
         flags</a> specified in <span class="emphasis"><em>f</em></span>.
       </p>
 <div class="table">
-<a name="id2668199"></a><p class="title"><b>Table 6. Postconditions for basic_regex construction</b></p>
+<a name="id526756"></a><p class="title"><b>Table 6. Postconditions for basic_regex construction</b></p>
 <div class="table-contents"><table class="table" summary="Postconditions for basic_regex construction">
 <colgroup>
 <col>
@@ -923,16 +912,14 @@
 </div>
 <br class="table-break"><a name="boost_regex.basic_regex.opeq1"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">e</span><span class="special">.</span><span class="identifier">str</span><span class="special">(),</span> <span class="identifier">e</span><span class="special">.</span><span class="identifier">flags</span><span class="special">())</span></code>.
       </p>
 <a name="boost_regex.basic_regex.opeq2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Requires</strong></span>: <span class="emphasis"><em>p</em></span> shall not
@@ -943,8 +930,7 @@
       </p>
 <a name="boost_regex.basic_regex.opeq3"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">&gt;</span>
 <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">p</span><span class="special">);</span>
 </pre>
 <p>
@@ -952,8 +938,7 @@
       </p>
 <a name="boost_regex.basic_regex.begin"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">const_iterator</span> <span class="identifier">begin</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">const_iterator</span> <span class="identifier">begin</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns a starting iterator to
@@ -961,8 +946,7 @@
       </p>
 <a name="boost_regex.basic_regex.end"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">const_iterator</span> <span class="identifier">end</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">const_iterator</span> <span class="identifier">end</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns termination iterator to
@@ -970,8 +954,7 @@
       </p>
 <a name="boost_regex.basic_regex.size"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">size_type</span> <span class="identifier">size</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">size_type</span> <span class="identifier">size</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the length of the sequence
@@ -979,8 +962,7 @@
       </p>
 <a name="boost_regex.basic_regex.max_size"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">size_type</span> <span class="identifier">max_size</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">size_type</span> <span class="identifier">max_size</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the maximum length of the
@@ -988,8 +970,7 @@
       </p>
 <a name="boost_regex.basic_regex.empty"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">bool</span> <span class="identifier">empty</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">bool</span> <span class="identifier">empty</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns true if the object does
@@ -997,8 +978,7 @@
       </p>
 <a name="boost_regex.basic_regex.mark_count"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">unsigned</span> <span class="identifier">mark_count</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">unsigned</span> <span class="identifier">mark_count</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the number of marked sub-expressions
@@ -1006,37 +986,33 @@
       </p>
 <a name="boost_regex.basic_regex.assign1"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: Returns <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign4"><code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">that</span><span class="special">.</span><span class="identifier">str</span><span class="special">(),</span> <span class="identifier">that</span><span class="special">.</span><span class="identifier">flags</span><span class="special">())</span></code></a>.
+ <span class="bold"><strong>Effects</strong></span>: Returns assign(that.str(), that.flags()).
       </p>
 <a name="boost_regex.basic_regex.assign2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: Returns <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign4"><code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">string_type</span><span class="special">(</span><span class="identifier">ptr</span><span class="special">),</span> <span class="identifier">f</span><span class="special">)</span></code></a>.
+ <span class="bold"><strong>Effects</strong></span>: Returns assign(string_type(ptr), f).
       </p>
 <a name="boost_regex.basic_regex.assign3"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: Returns <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign4"><code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">string_type</span><span class="special">(</span><span class="identifier">ptr</span><span class="special">,</span> <span class="identifier">len</span><span class="special">),</span> <span class="identifier">f</span><span class="special">)</span></code></a>.
+ <span class="bold"><strong>Effects</strong></span>: Returns assign(string_type(ptr, len), f).
       </p>
 <a name="boost_regex.basic_regex.assign4"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">string_traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">string_traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">&gt;</span>
 <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">string_traits</span><span class="special">,</span> <span class="identifier">A</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                   <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 </pre>
 <p>
- <span class="bold"><strong>Throws</strong></span>: <a class="link" href="bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> if <span class="emphasis"><em>s</em></span>
+ <span class="bold"><strong>Throws</strong></span>: bad_expression if <span class="emphasis"><em>s</em></span>
         is not a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code>
         is set in <span class="emphasis"><em>f</em></span>.
       </p>
@@ -1046,11 +1022,11 @@
 <p>
         <span class="bold"><strong>Effects</strong></span>: Assigns the regular expression
         contained in the string <span class="emphasis"><em>s</em></span>, interpreted according the
- <a class="link" href="syntax_option_type.html" title="syntax_option_type">option flags</a> specified
+ option flags specified
         in <span class="emphasis"><em>f</em></span>.
       </p>
 <div class="table">
-<a name="id2669892"></a><p class="title"><b>Table 7. Postconditions for basic_regex::assign</b></p>
+<a name="id528609"></a><p class="title"><b>Table 7. Postconditions for basic_regex::assign</b></p>
 <div class="table-contents"><table class="table" summary="Postconditions for basic_regex::assign">
 <colgroup>
 <col>
@@ -1134,8 +1110,7 @@
 </div>
 <br class="table-break"><a name="boost_regex.basic_regex.assign5"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">InputIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">InputIterator</span><span class="special">&gt;</span>
 <span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">assign</span><span class="special">(</span><span class="identifier">InputIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">InputIterator</span> <span class="identifier">last</span><span class="special">,</span>
                     <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>
 </pre>
@@ -1145,22 +1120,20 @@
         (24.1.1)</a>.
       </p>
 <p>
- <span class="bold"><strong>Effects</strong></span>: Returns <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign4"><code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">string_type</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">),</span> <span class="identifier">f</span><span class="special">)</span></code></a>.
+ <span class="bold"><strong>Effects</strong></span>: Returns assign(string_type(first, last), f).
       </p>
 <a name="boost_regex.basic_regex.flags"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">flag_type</span> <span class="identifier">flags</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">flag_type</span> <span class="identifier">flags</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: Returns a copy of the <a class="link" href="syntax_option_type.html" title="syntax_option_type">regular
+ <span class="bold"><strong>Effects</strong></span>: Returns a copy of the <a href="syntax_option_type.html" title="syntax_option_type">regular
         expression syntax flags</a> that were passed to the object's constructor,
         or the last call to <code class="computeroutput"><span class="identifier">assign</span></code>.
       </p>
 <a name="boost_regex.basic_regex.status"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">int</span> <span class="identifier">status</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">int</span> <span class="identifier">status</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns zero if the expression
@@ -1169,8 +1142,7 @@
       </p>
 <a name="boost_regex.basic_regex.str"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span> <span class="identifier">str</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span> <span class="identifier">str</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns a copy of the character
@@ -1178,8 +1150,7 @@
       </p>
 <a name="boost_regex.basic_regex.compare"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">int</span> <span class="identifier">compare</span><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">int</span> <span class="identifier">compare</span><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: If <code class="computeroutput"><span class="identifier">flags</span><span class="special">()</span> <span class="special">==</span> <span class="identifier">e</span><span class="special">.</span><span class="identifier">flags</span><span class="special">()</span></code> then returns <code class="computeroutput"><span class="identifier">str</span><span class="special">().</span><span class="identifier">compare</span><span class="special">(</span><span class="identifier">e</span><span class="special">.</span><span class="identifier">str</span><span class="special">())</span></code>,
@@ -1188,8 +1159,7 @@
       </p>
 <a name="boost_regex.basic_regex.imbue"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">locale_type</span> <span class="identifier">imbue</span><span class="special">(</span><span class="identifier">locale_type</span> <span class="identifier">l</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">locale_type</span> <span class="identifier">imbue</span><span class="special">(</span><span class="identifier">locale_type</span> <span class="identifier">l</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">traits_inst</span><span class="special">.</span><span class="identifier">imbue</span><span class="special">(</span><span class="identifier">l</span><span class="special">)</span></code> where
@@ -1203,8 +1173,7 @@
       </p>
 <a name="boost_regex.basic_regex.getloc"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">locale_type</span> <span class="identifier">getloc</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">locale_type</span> <span class="identifier">getloc</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">traits_inst</span><span class="special">.</span><span class="identifier">getloc</span><span class="special">()</span></code>
@@ -1214,8 +1183,7 @@
       </p>
 <a name="boost_regex.basic_regex.swap"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">void</span> <span class="identifier">swap</span><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">)</span> <span class="keyword">throw</span><span class="special">();</span>
+<pre class="programlisting"><span class="keyword">void</span> <span class="identifier">swap</span><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">)</span> <span class="keyword">throw</span><span class="special">();</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Swaps the contents of the two regular
@@ -1235,17 +1203,16 @@
 <th align="left">Note</th>
 </tr>
 <tr><td align="left" valign="top"><p>
- Comparisons between <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> objects are provided
+ Comparisons between basic_regex objects are provided
           on an experimental basis: please note that these are not present in the
           <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1836.pdf" target="_top">Technical
           Report on C++ Library Extensions</a>, so use with care if you are writing
- code that may need to be ported to other implementations of <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>.
+ code that may need to be ported to other implementations of basic_regex.
         </p></td></tr>
 </table></div>
 <a name="boost_regex.basic_regex.op_eq"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -1255,8 +1222,7 @@
       </p>
 <a name="boost_regex.basic_regex.op_ne"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -1266,8 +1232,7 @@
       </p>
 <a name="boost_regex.basic_regex.op_lt"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -1277,8 +1242,7 @@
       </p>
 <a name="boost_regex.basic_regex.op_le"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -1288,8 +1252,7 @@
       </p>
 <a name="boost_regex.basic_regex.op_ge"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -1299,8 +1262,7 @@
       </p>
 <a name="boost_regex.basic_regex.op_gt"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -1320,8 +1282,7 @@
 </table></div>
 <a name="boost_regex.basic_regex.op_stream"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">io_traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">re_traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">io_traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">re_traits</span><span class="special">&gt;</span>
 <span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">io_traits</span><span class="special">&gt;&amp;</span>
    <span class="keyword">operator</span> <span class="special">&lt;&lt;</span> <span class="special">(</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">io_traits</span><span class="special">&gt;&amp;</span> <span class="identifier">os</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">re_traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">);</span>
@@ -1331,8 +1292,7 @@
       </p>
 <a name="boost_regex.basic_regex.op_swap"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">void</span> <span class="identifier">swap</span><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
          <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Concepts</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="posix.html" title="POSIX Compatible C API's">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.concepts"></a><a class="link" href="concepts.html" title="Concepts"> Concepts</a>
+<a name="boost_regex.ref.concepts"></a> Concepts
 </h3></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"> charT Requirements</span></dt>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/charT_concept.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/charT_concept.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/charT_concept.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>charT Requirements</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../concepts.html" title="Concepts">
 <link rel="prev" href="../concepts.html" title="Concepts">
@@ -24,11 +24,11 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.concepts.charT_concept"></a><a class="link" href="charT_concept.html" title="charT Requirements"> charT Requirements</a>
+<a name="boost_regex.ref.concepts.charT_concept"></a> charT Requirements
 </h4></div></div></div>
 <p>
           Type <code class="computeroutput"><span class="identifier">charT</span></code> used a template
- argument to class template <a class="link" href="../basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>, must have a trivial
+ argument to class template basic_regex, must have a trivial
           default constructor, copy constructor, assignment operator, and destructor.
           In addition the following requirements must be met for objects; <span class="emphasis"><em>c</em></span>
           of type <code class="computeroutput"><span class="identifier">charT</span></code>, <span class="emphasis"><em>c1</em></span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/iterator_concepts.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/iterator_concepts.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/iterator_concepts.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Iterator Requirements</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../concepts.html" title="Concepts">
 <link rel="prev" href="traits_concept.html" title="Traits Class Requirements">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.concepts.iterator_concepts"></a><a class="link" href="iterator_concepts.html" title="Iterator Requirements"> Iterator
+<a name="boost_regex.ref.concepts.iterator_concepts"></a><a href="iterator_concepts.html" title="Iterator Requirements"> Iterator
         Requirements</a>
 </h4></div></div></div>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/traits_concept.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/traits_concept.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/concepts/traits_concept.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Traits Class Requirements</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../concepts.html" title="Concepts">
 <link rel="prev" href="charT_concept.html" title="charT Requirements">
@@ -24,18 +24,18 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.concepts.traits_concept"></a><a class="link" href="traits_concept.html" title="Traits Class Requirements"> Traits Class
+<a name="boost_regex.ref.concepts.traits_concept"></a><a href="traits_concept.html" title="Traits Class Requirements"> Traits Class
         Requirements</a>
 </h4></div></div></div>
 <p>
           There are two sets of requirements for the <code class="computeroutput"><span class="identifier">traits</span></code>
- template argument to <a class="link" href="../basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>: a mininal interface
+ template argument to basic_regex: a mininal interface
           (which is part of the regex standardization proposal), and an optional
           Boost-specific enhanced interface.
         </p>
 <a name="boost_regex.ref.concepts.traits_concept.minimal_requirements_"></a><h5>
-<a name="id2755620"></a>
- <a class="link" href="traits_concept.html#boost_regex.ref.concepts.traits_concept.minimal_requirements_">Minimal
+<a name="id622895"></a>
+ <a href="traits_concept.html#boost_regex.ref.concepts.traits_concept.minimal_requirements_">Minimal
           requirements.</a>
         </h5>
 <p>
@@ -381,15 +381,15 @@
 </tbody>
 </table></div>
 <a name="boost_regex.ref.concepts.traits_concept.additional_optional_requirements"></a><h5>
-<a name="id2756352"></a>
- <a class="link" href="traits_concept.html#boost_regex.ref.concepts.traits_concept.additional_optional_requirements">Additional
+<a name="id623722"></a>
+ <a href="traits_concept.html#boost_regex.ref.concepts.traits_concept.additional_optional_requirements">Additional
           Optional Requirements</a>
         </h5>
 <p>
           The following additional requirements are strictly optional, however in
- order for <a class="link" href="../basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>
+ order for basic_regex
           to take advantage of these additional interfaces, all of the following
- requirements must be met; <a class="link" href="../basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> will detect the presence
+ requirements must be met; basic_regex will detect the presence
           or absense of the member <code class="computeroutput"><span class="identifier">boost_extensions_tag</span></code>
           and configure itself appropriately.
         </p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Deprecated Interfaces</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="concepts/iterator_concepts.html" title="Iterator Requirements">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.deprecated_interfaces"></a><a class="link" href="deprecated_interfaces.html" title="Deprecated Interfaces">Deprecated Interfaces</a>
+<a name="boost_regex.ref.deprecated_interfaces"></a>Deprecated Interfaces
 </h3></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"><a href="deprecated_interfaces/regex_format.html">

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/old_regex.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/old_regex.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/old_regex.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>High Level Class RegEx (Deprecated)</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../deprecated_interfaces.html" title="Deprecated Interfaces">
 <link rel="prev" href="regex_split.html" title="regex_split (deprecated)">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.deprecated_interfaces.old_regex"></a><a class="link" href="old_regex.html" title="High Level Class RegEx (Deprecated)"> High
+<a name="boost_regex.ref.deprecated_interfaces.old_regex"></a><a href="old_regex.html" title="High Level Class RegEx (Deprecated)"> High
         Level Class RegEx (Deprecated)</a>
 </h4></div></div></div>
 <p>
@@ -33,8 +33,7 @@
           exists, and existing code will continue to compile, however the following
           documentation is unlikely to be further updated.
         </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">cregex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">cregex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
           The class RegEx provides a high level simplified interface to the regular
@@ -42,8 +41,7 @@
           regular expressions always follow the "normal" syntax - that
           is the same as the perl / ECMAScript synatx.
         </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">bool</span> <span class="special">(*</span><span class="identifier">GrepCallback</span><span class="special">)(</span><span class="keyword">const</span> <span class="identifier">RegEx</span><span class="special">&amp;</span> <span class="identifier">expression</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">bool</span> <span class="special">(*</span><span class="identifier">GrepCallback</span><span class="special">)(</span><span class="keyword">const</span> <span class="identifier">RegEx</span><span class="special">&amp;</span> <span class="identifier">expression</span><span class="special">);</span>
 <span class="keyword">typedef</span> <span class="keyword">bool</span> <span class="special">(*</span><span class="identifier">GrepFileCallback</span><span class="special">)(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">file</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">RegEx</span><span class="special">&amp;</span> <span class="identifier">expression</span><span class="special">);</span>
 <span class="keyword">typedef</span> <span class="keyword">bool</span> <span class="special">(*</span><span class="identifier">FindFilesCallback</span><span class="special">)(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">file</span><span class="special">);</span>
 
@@ -171,7 +169,7 @@
                 <p>
                   Constructs an instance of RegEx, setting the expression to <span class="emphasis"><em>c</em></span>,
                   if <span class="emphasis"><em>icase</em></span> is true then matching is insensitive
- to case, otherwise it is sensitive to case. Throws <a class="link" href="../bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> on failure.
+ to case, otherwise it is sensitive to case. Throws bad_expression on failure.
                 </p>
                 </td>
 </tr>
@@ -187,7 +185,7 @@
                 <p>
                   Constructs an instance of RegEx, setting the expression to <span class="emphasis"><em>s</em></span>,
                   if <span class="emphasis"><em>icase</em></span> is true then matching is insensitive
- to case, otherwise it is sensitive to case. Throws <a class="link" href="../bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> on failure.
+ to case, otherwise it is sensitive to case. Throws bad_expression on failure.
                 </p>
                 </td>
 </tr>
@@ -213,7 +211,7 @@
                 </td>
 <td>
                 <p>
- Assignment operator, equivalent to calling <code class="computeroutput"><span class="identifier">SetExpression</span><span class="special">(</span><span class="identifier">p</span><span class="special">,</span> <span class="keyword">false</span><span class="special">)</span></code>. Throws <a class="link" href="../bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> on failure.
+ Assignment operator, equivalent to calling <code class="computeroutput"><span class="identifier">SetExpression</span><span class="special">(</span><span class="identifier">p</span><span class="special">,</span> <span class="keyword">false</span><span class="special">)</span></code>. Throws bad_expression on failure.
                 </p>
                 </td>
 </tr>
@@ -226,7 +224,7 @@
                 </td>
 <td>
                 <p>
- Assignment operator, equivalent to calling <code class="computeroutput"><span class="identifier">SetExpression</span><span class="special">(</span><span class="identifier">s</span><span class="special">,</span> <span class="keyword">false</span><span class="special">)</span></code>. Throws <a class="link" href="../bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> on failure.
+ Assignment operator, equivalent to calling <code class="computeroutput"><span class="identifier">SetExpression</span><span class="special">(</span><span class="identifier">s</span><span class="special">,</span> <span class="keyword">false</span><span class="special">)</span></code>. Throws bad_expression on failure.
                 </p>
                 </td>
 </tr>
@@ -244,7 +242,7 @@
                 <p>
                   Sets the current expression to <span class="emphasis"><em>p</em></span>, if <span class="emphasis"><em>icase</em></span>
                   is true then matching is insensitive to case, otherwise it is sensitive
- to case. Throws <a class="link" href="../bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> on failure.
+ to case. Throws bad_expression on failure.
                 </p>
                 </td>
 </tr>
@@ -261,7 +259,7 @@
                 <p>
                   Sets the current expression to <span class="emphasis"><em>s</em></span>, if <span class="emphasis"><em>icase</em></span>
                   is true then matching is insensitive to case, otherwise it is sensitive
- to case. Throws <a class="link" href="../bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> on failure.
+ to case. Throws bad_expression on failure.
                 </p>
                 </td>
 </tr>
@@ -290,7 +288,7 @@
 <td>
                 <p>
                   Attempts to match the current expression against the text <span class="emphasis"><em>p</em></span>
- using the match flags <span class="emphasis"><em>flags</em></span> - see <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>. Returns
+ using the match flags <span class="emphasis"><em>flags</em></span> - see match_flag_type. Returns
                   <span class="emphasis"><em>true</em></span> if the expression matches the whole of
                   the input string.
                 </p>
@@ -309,7 +307,7 @@
 <td>
                 <p>
                   Attempts to match the current expression against the text <span class="emphasis"><em>s</em></span>
- using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>flags</em></span>.
+ using the match_flag_type <span class="emphasis"><em>flags</em></span>.
                   Returns <span class="emphasis"><em>true</em></span> if the expression matches the
                   whole of the input string.
                 </p>
@@ -328,7 +326,7 @@
 <td>
                 <p>
                   Attempts to find a match for the current expression somewhere in
- the text <span class="emphasis"><em>p</em></span> using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>flags</em></span>.
+ the text <span class="emphasis"><em>p</em></span> using the match_flag_type <span class="emphasis"><em>flags</em></span>.
                   Returns <span class="emphasis"><em>true</em></span> if the match succeeds.
                 </p>
                 </td>
@@ -346,7 +344,7 @@
 <td>
                 <p>
                   Attempts to find a match for the current expression somewhere in
- the text <span class="emphasis"><em>s</em></span> using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> flags.
+ the text <span class="emphasis"><em>s</em></span> using the match_flag_type flags.
                   Returns <span class="emphasis"><em>true</em></span> if the match succeeds.
                 </p>
                 </td>
@@ -365,7 +363,7 @@
 <td>
                 <p>
                   Finds all matches of the current expression in the text <span class="emphasis"><em>p</em></span>
- using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>flags</em></span>.
+ using the match_flag_type <span class="emphasis"><em>flags</em></span>.
                   For each match found calls the call-back function cb as: <code class="computeroutput"><span class="identifier">cb</span><span class="special">(*</span><span class="keyword">this</span><span class="special">);</span></code>
                   If at any stage the call-back function returns <span class="emphasis"><em>false</em></span>
                   then the grep operation terminates, otherwise continues until no
@@ -387,7 +385,7 @@
 <td>
                 <p>
                   Finds all matches of the current expression in the text <span class="emphasis"><em>s</em></span>
- using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> flags.
+ using the match_flag_type flags.
                   For each match found calls the call-back function cb as: <code class="computeroutput"><span class="identifier">cb</span><span class="special">(*</span><span class="keyword">this</span><span class="special">);</span></code>
                   If at any stage the call-back function returns false then the grep
                   operation terminates, otherwise continues until no further matches
@@ -409,7 +407,7 @@
 <td>
                 <p>
                   Finds all matches of the current expression in the text <span class="emphasis"><em>p</em></span>
- using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> flags.
+ using the match_flag_type flags.
                   For each match pushes a copy of what matched onto <span class="emphasis"><em>v</em></span>.
                   Returns the number of matches found.
                 </p>
@@ -429,7 +427,7 @@
 <td>
                 <p>
                   Finds all matches of the current expression in the text <span class="emphasis"><em>s</em></span>
- using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>flags</em></span>.
+ using the match_flag_type <span class="emphasis"><em>flags</em></span>.
                   For each match pushes a copy of what matched onto <span class="emphasis"><em>v</em></span>.
                   Returns the number of matches found.
                 </p>
@@ -449,7 +447,7 @@
 <td>
                 <p>
                   Finds all matches of the current expression in the text <span class="emphasis"><em>p</em></span>
- using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>flags</em></span>.
+ using the match_flag_type <span class="emphasis"><em>flags</em></span>.
                   For each match pushes the starting index of what matched onto
                   <span class="emphasis"><em>v</em></span>. Returns the number of matches found.
                 </p>
@@ -469,7 +467,7 @@
 <td>
                 <p>
                   Finds all matches of the current expression in the text <span class="emphasis"><em>s</em></span>
- using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>flags</em></span>.
+ using the match_flag_type <span class="emphasis"><em>flags</em></span>.
                   For each match pushes the starting index of what matched onto
                   <span class="emphasis"><em>v</em></span>. Returns the number of matches found.
                 </p>
@@ -491,7 +489,7 @@
 <td>
                 <p>
                   Finds all matches of the current expression in the files files
- using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>flags</em></span>.
+ using the match_flag_type <span class="emphasis"><em>flags</em></span>.
                   For each match calls the call-back function cb. If the call-back
                   returns false then the algorithm returns without considering further
                   matches in the current file, or any further files.
@@ -526,7 +524,7 @@
 <td>
                 <p>
                   Finds all matches of the current expression in the files files
- using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>flags</em></span>.
+ using the match_flag_type <span class="emphasis"><em>flags</em></span>.
                   For each match calls the call-back function cb.
                 </p>
                 <p>
@@ -564,7 +562,7 @@
 <td>
                 <p>
                   Searches files to find all those which contain at least one match
- of the current expression using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>flags</em></span>.
+ of the current expression using the match_flag_type <span class="emphasis"><em>flags</em></span>.
                   For each matching file calls the call-back function cb. If the
                   call-back returns false then the algorithm returns without considering
                   any further files.
@@ -599,7 +597,7 @@
 <td>
                 <p>
                   Searches files to find all those which contain at least one match
- of the current expression using the <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>flags</em></span>.
+ of the current expression using the match_flag_type <span class="emphasis"><em>flags</em></span>.
                   For each matching file calls the call-back function cb.
                 </p>
                 <p>
@@ -643,8 +641,8 @@
                   If <span class="emphasis"><em>copy</em></span> is true then all unmatched sections
                   of input are copied unchanged to output, if the flag <span class="emphasis"><em>format_first_only</em></span>
                   is set then only the first occurance of the pattern found is replaced.
- Returns the new string. See also <a class="link" href="../../format.html" title="Search and Replace Format String Syntax">format
- string syntax</a>, and <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>.
+ Returns the new string. See also <a href="../../format.html" title="Search and Replace Format String Syntax">format
+ string syntax</a>, and match_flag_type.
                 </p>
                 </td>
 </tr>
@@ -671,8 +669,8 @@
                   If <span class="emphasis"><em>copy</em></span> is true then all unmatched sections
                   of input are copied unchanged to output, if the flag <span class="emphasis"><em>format_first_only</em></span>
                   is set then only the first occurance of the pattern found is replaced.
- Returns the new string. See also <a class="link" href="../../format.html" title="Search and Replace Format String Syntax">format
- string syntax</a>, and <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>.
+ Returns the new string. See also <a href="../../format.html" title="Search and Replace Format String Syntax">format
+ string syntax</a>, and match_flag_type.
                 </p>
                 </td>
 </tr>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_format.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_format.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_format.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>regex_format (Deprecated)</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../deprecated_interfaces.html" title="Deprecated Interfaces">
 <link rel="prev" href="../deprecated_interfaces.html" title="Deprecated Interfaces">
@@ -24,22 +24,21 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.deprecated_interfaces.regex_format"></a><a class="link" href="regex_format.html" title="regex_format (Deprecated)">
+<a name="boost_regex.ref.deprecated_interfaces.regex_format"></a><a href="regex_format.html" title="regex_format (Deprecated)">
         regex_format (Deprecated)</a>
 </h4></div></div></div>
 <p>
           The algorithm <code class="computeroutput"><span class="identifier">regex_format</span></code>
- is deprecated; new code should use <a class="link" href="../match_results.html#boost_regex.match_results_format"><code class="computeroutput"><span class="identifier">match_results</span><span class="special">&lt;&gt;::</span><span class="identifier">format</span></code></a> instead. Existing code
+ is deprecated; new code should use match_results<>::format instead. Existing code
           will continue to compile, the following documentation is taken from the
           previous version of Boost.Regex and will not be further updated:
         </p>
 <a name="boost_regex.ref.deprecated_interfaces.regex_format.algorithm_regex_format"></a><h5>
-<a name="id2757025"></a>
- <a class="link" href="regex_format.html#boost_regex.ref.deprecated_interfaces.regex_format.algorithm_regex_format">Algorithm
+<a name="id624460"></a>
+ <a href="regex_format.html#boost_regex.ref.deprecated_interfaces.regex_format.algorithm_regex_format">Algorithm
           regex_format</a>
         </h5>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
           The algorithm <code class="computeroutput"><span class="identifier">regex_format</span></code>
@@ -47,8 +46,7 @@
           string, <code class="computeroutput"><span class="identifier">regex_format</span></code> can
           be used for search and replace operations:
         </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">iterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">iterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">OutputIterator</span> <span class="identifier">regex_format</span><span class="special">(</span><span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
                            <span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                            <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">fmt</span><span class="special">,</span>
@@ -73,8 +71,7 @@
             form, depending upon your compilers capabilities
           </p></td></tr>
 </table></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">iterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">iterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span> <span class="identifier">regex_format</span>
                                  <span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                                  <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">fmt</span><span class="special">,</span>
@@ -128,7 +125,7 @@
                 </td>
 <td>
                 <p>
- An instance of <a class="link" href="../match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> obtained
+ An instance of match_results obtained
                   from one of the matching algorithms above, and denoting what matched.
                 </p>
                 </td>
@@ -161,11 +158,11 @@
 </tbody>
 </table></div>
 <p>
- Format flags are described under <a class="link" href="../match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>.
+ Format flags are described under match_flag_type.
         </p>
 <p>
           The format string syntax (and available options) is described more fully
- under <a class="link" href="../../format.html" title="Search and Replace Format String Syntax">format strings</a>.
+ under format strings.
         </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_grep.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_grep.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_grep.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>regex_grep (Deprecated)</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../deprecated_interfaces.html" title="Deprecated Interfaces">
 <link rel="prev" href="regex_format.html" title="regex_format (Deprecated)">
@@ -24,28 +24,26 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.deprecated_interfaces.regex_grep"></a><a class="link" href="regex_grep.html" title="regex_grep (Deprecated)">
+<a name="boost_regex.ref.deprecated_interfaces.regex_grep"></a><a href="regex_grep.html" title="regex_grep (Deprecated)">
         regex_grep (Deprecated)</a>
 </h4></div></div></div>
 <p>
           The algorithm <code class="computeroutput"><span class="identifier">regex_grep</span></code>
- is deprecated in favor of <a class="link" href="../regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a> which provides
+ is deprecated in favor of regex_iterator which provides
           a more convenient and standard library friendly interface.
         </p>
 <p>
           The following documentation is taken unchanged from the previous boost
           release, and will not be updated in future.
         </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
           <code class="computeroutput"><span class="identifier">regex_grep</span></code> allows you to
           search through a bidirectional-iterator range and locate all the (non-overlapping)
           matches with a given regular expression. The function is declared as:
         </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Predicate</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">iterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Predicate</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">iterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">regex_grep</span><span class="special">(</span><span class="identifier">Predicate</span> <span class="identifier">foo</span><span class="special">,</span>
                         <span class="identifier">iterator</span> <span class="identifier">first</span><span class="special">,</span>
                         <span class="identifier">iterator</span> <span class="identifier">last</span><span class="special">,</span>
@@ -58,8 +56,7 @@
           <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;&gt;&amp;</span></code>
           in place of a pair of iterators.
         </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Predicate</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Predicate</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">regex_grep</span><span class="special">(</span><span class="identifier">Predicate</span> <span class="identifier">foo</span><span class="special">,</span>
             <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">str</span><span class="special">,</span>
             <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
@@ -104,8 +101,7 @@
 <p>
           The general form of the predicate is:
         </p>
-<pre class="programlisting">
-<span class="keyword">struct</span> <span class="identifier">grep_predicate</span>
+<pre class="programlisting"><span class="keyword">struct</span> <span class="identifier">grep_predicate</span>
 <span class="special">{</span>
    <span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">iterator_type</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">);</span>
 <span class="special">};</span>
@@ -133,10 +129,9 @@
           (if Boost.Regex is configured in non-recursive mode).
         </p>
 <p>
- Example: convert the example from <a class="link" href="../regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a> to use <code class="computeroutput"><span class="identifier">regex_grep</span></code> instead:
+ Example: convert the example from regex_search to use <code class="computeroutput"><span class="identifier">regex_grep</span></code> instead:
         </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">map</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 
@@ -198,8 +193,7 @@
           Example: Use <code class="computeroutput"><span class="identifier">regex_grep</span></code>
           to call a global callback function:
         </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">map</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 
@@ -259,8 +253,7 @@
           to call a class member function, use the standard library adapters <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">mem_fun</span></code> and <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">bind1st</span></code>
           to convert the member function into a predicate:
         </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">map</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">functional</span><span class="special">&gt;</span>
@@ -313,8 +306,7 @@
           Finally, C++ Builder users can use C++ Builder's closure type as a callback
           argument:
         </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">map</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">functional</span><span class="special">&gt;</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_split.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_split.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/deprecated_interfaces/regex_split.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>regex_split (deprecated)</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../deprecated_interfaces.html" title="Deprecated Interfaces">
 <link rel="prev" href="regex_grep.html" title="regex_grep (Deprecated)">
@@ -24,28 +24,26 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.deprecated_interfaces.regex_split"></a><a class="link" href="regex_split.html" title="regex_split (deprecated)">
+<a name="boost_regex.ref.deprecated_interfaces.regex_split"></a><a href="regex_split.html" title="regex_split (deprecated)">
         regex_split (deprecated)</a>
 </h4></div></div></div>
 <p>
- The algorithm <a class="link" href="regex_split.html" title="regex_split (deprecated)"><code class="computeroutput"><span class="identifier">regex_split</span></code></a> has been deprecated
- in favor of the iterator <a class="link" href="../regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a> which has
+ The algorithm regex_split has been deprecated
+ in favor of the iterator regex_token_iterator which has
           a more flexible and powerful interface, as well as following the more usual
           standard library "pull" rather than "push" semantics.
         </p>
 <p>
- Code which uses <a class="link" href="regex_split.html" title="regex_split (deprecated)"><code class="computeroutput"><span class="identifier">regex_split</span></code></a> will continue to compile,
+ Code which uses regex_split will continue to compile,
           the following documentation is taken from a previous Boost.Regex version:
         </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
- Algorithm <a class="link" href="regex_split.html" title="regex_split (deprecated)"><code class="computeroutput"><span class="identifier">regex_split</span></code></a> performs a similar
+ Algorithm regex_split performs a similar
           operation to the perl split operation, and comes in three overloaded forms:
         </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Traits1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Alloc1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Traits2</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Traits1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Alloc1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Traits2</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">regex_split</span><span class="special">(</span><span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
                         <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">Traits1</span><span class="special">,</span> <span class="identifier">Alloc1</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                         <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">Traits2</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
@@ -90,8 +88,7 @@
           the input string into a series of tokens, and remove each token from the
           string <span class="emphasis"><em>s</em></span>:
         </p>
-<pre class="programlisting">
-<span class="keyword">unsigned</span> <span class="identifier">tokenise</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">list</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;&amp;</span> <span class="identifier">l</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span>
+<pre class="programlisting"><span class="keyword">unsigned</span> <span class="identifier">tokenise</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">list</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;&amp;</span> <span class="identifier">l</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span>
 <span class="special">{</span>
    <span class="keyword">return</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_split</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">l</span><span class="special">),</span> <span class="identifier">s</span><span class="special">);</span>
 <span class="special">}</span>
@@ -100,8 +97,7 @@
           Example: the following short program will extract all of the URL's from
           a html file, and print them out to cout:
         </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">list</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">list</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">fstream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/error_type.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/error_type.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/error_type.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>error_type</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="match_flag_type.html" title="match_flag_type">
@@ -24,18 +24,17 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.error_type"></a><a class="link" href="error_type.html" title="error_type"> error_type</a>
+<a name="boost_regex.ref.error_type"></a> error_type
 </h3></div></div></div>
 <a name="boost_regex.ref.error_type.synopsis"></a><h5>
-<a name="id2736880"></a>
- <a class="link" href="error_type.html#boost_regex.ref.error_type.synopsis">Synopsis</a>
+<a name="id602297"></a>
+ Synopsis
       </h5>
 <p>
         Type error type represents the different types of errors that can be raised
         by the library when parsing a regular expression.
       </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">regex_constants</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">regex_constants</span><span class="special">{</span>
 
 <span class="keyword">typedef</span> <span class="identifier">implementation</span><span class="special">-</span><span class="identifier">specific</span><span class="special">-</span><span class="identifier">type</span> <span class="identifier">error_type</span><span class="special">;</span>
 
@@ -58,8 +57,8 @@
 </span><span class="special">}</span> <span class="comment">// namespace boost
 </span></pre>
 <a name="boost_regex.ref.error_type.description"></a><h5>
-<a name="id2737390"></a>
- <a class="link" href="error_type.html#boost_regex.ref.error_type.description">Description</a>
+<a name="id602860"></a>
+ Description
       </h5>
 <p>
         The type <code class="computeroutput"><span class="identifier">error_type</span></code> is an

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/match_flag_type.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/match_flag_type.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/match_flag_type.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>match_flag_type</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="syntax_option_type/syntax_option_type_literal.html" title="Options for Literal Strings">
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.match_flag_type"></a><a class="link" href="match_flag_type.html" title="match_flag_type"> match_flag_type</a>
+<a name="boost_regex.ref.match_flag_type"></a> match_flag_type
 </h3></div></div></div>
 <p>
         The type <code class="computeroutput"><span class="identifier">match_flag_type</span></code>
         is an implementation specific bitmask type (see C++ std 17.3.2.1.2) that
         controls how a regular expression is matched against a character sequence.
- The behavior of the format flags is described in more detail in the <a class="link" href="../format.html" title="Search and Replace Format String Syntax">format syntax guide</a>.
+ The behavior of the format flags is described in more detail in the format syntax guide.
       </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">regex_constants</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">regex_constants</span><span class="special">{</span>
 
 <span class="keyword">typedef</span> <span class="identifier">implemenation</span><span class="special">-</span><span class="identifier">specific</span><span class="special">-</span><span class="identifier">bitmask</span><span class="special">-</span><span class="identifier">type</span> <span class="identifier">match_flag_type</span><span class="special">;</span>
 
@@ -70,8 +69,8 @@
 </span><span class="special">}</span> <span class="comment">// namespace boost
 </span></pre>
 <a name="boost_regex.ref.match_flag_type.description"></a><h5>
-<a name="id2736187"></a>
- <a class="link" href="match_flag_type.html#boost_regex.ref.match_flag_type.description">Description</a>
+<a name="id601531"></a>
+ Description
       </h5>
 <p>
         The type <code class="computeroutput"><span class="identifier">match_flag_type</span></code>
@@ -328,7 +327,7 @@
 <td>
               <p>
                 Specifies that the expression should be matched according to the
- POSIX <a class="link" href="../syntax/leftmost_longest_rule.html" title="The Leftmost Longest Rule">leftmost-longest
+ POSIX <a href="../syntax/leftmost_longest_rule.html" title="The Leftmost Longest Rule">leftmost-longest
                 rule</a>, regardless of what kind of expression was compiled.
                 Be warned that these rules do not work well with many Perl-specific
                 features such as non-greedy repeats.
@@ -344,7 +343,7 @@
 <td>
               <p>
                 Specifies that the expression should be matched according to the
- <a class="link" href="../syntax/perl_syntax.html#boost_regex.syntax.perl_syntax.what_gets_matched">Perl
+ <a href="../syntax/perl_syntax.html#boost_regex.syntax.perl_syntax.what_gets_matched">Perl
                 matching rules</a>, irrespective of what kind of expression was
                 compiled.
               </p>
@@ -359,7 +358,7 @@
 <td>
               <p>
                 Makes the expression behave as if it had no marked subexpressions,
- no matter how many capturing groups are actually present. The <a class="link" href="match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a>
+ no matter how many capturing groups are actually present. The match_results
                 class will only contain information about the overall match, and
                 not any sub-expressions.
               </p>
@@ -379,7 +378,7 @@
                 Specification, Chapter 15 part 5.4.11 String.prototype.replace. (FWD.1).
               </p>
               <p>
- This is functionally identical to the <a class="link" href="../format/perl_format.html" title="Perl Format String Syntax">Perl
+ This is functionally identical to the <a href="../format/perl_format.html" title="Perl Format String Syntax">Perl
                 format string rules</a>.
               </p>
               <p>
@@ -401,7 +400,7 @@
                 Specifies that when a regular expression match is to be replaced
                 by a new string, that the new string is constructed using the rules
                 used by the Unix sed utility in IEEE Std 1003.1-2001, Portable Operating
- SystemInterface (POSIX ), Shells and Utilities. See also the <a class="link" href="../format/sed_format.html" title="Sed Format String Syntax">Sed Format string reference</a>.
+ SystemInterface (POSIX ), Shells and Utilities. See also the Sed Format string reference.
               </p>
               </td>
 </tr>
@@ -414,7 +413,7 @@
 <td>
               <p>
                 Specifies that when a regular expression match is to be replaced
- by a new string, that the new string is constructed using <a class="link" href="../format/perl_format.html" title="Perl Format String Syntax">the
+ by a new string, that the new string is constructed using <a href="../format/perl_format.html" title="Perl Format String Syntax">the
                 same rules as Perl 5</a>.
               </p>
               </td>
@@ -442,7 +441,7 @@
 <td>
               <p>
                 Specifies that all syntax extensions are enabled, including conditional
- (?ddexpression1:expression2) replacements: see the <a class="link" href="../format/boost_format_syntax.html" title="Boost-Extended Format String Syntax">format
+ (?ddexpression1:expression2) replacements: see the <a href="../format/boost_format_syntax.html" title="Boost-Extended Format String Syntax">format
                 string guide</a> for more details.
               </p>
               </td>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/match_results.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/match_results.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/match_results.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>match_results</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="basic_regex.html" title="basic_regex">
@@ -24,14 +24,13 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.match_results"></a><a class="link" href="match_results.html" title="match_results"> match_results</a>
+<a name="boost_regex.ref.match_results"></a> match_results
 </h3></div></div></div>
 <a name="boost_regex.ref.match_results.synopsis"></a><h5>
-<a name="id2672984"></a>
- <a class="link" href="match_results.html#boost_regex.ref.match_results.synopsis">Synopsis</a>
+<a name="id531997"></a>
+ Synopsis
       </h5>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
         Regular expressions are different from many simple pattern-matching algorithms
@@ -40,14 +39,14 @@
         parenthesis (...). There has to be some method for reporting sub-expression
         matches back to the user: this is achieved this by defining a class <code class="computeroutput"><span class="identifier">match_results</span></code> that acts as an indexed collection
         of sub-expression matches, each sub-expression match being contained in an
- object of type <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>.
+ object of type sub_match.
       </p>
 <p>
         Template class <code class="computeroutput"><span class="identifier">match_results</span></code>
         denotes a collection of character sequences representing the result of a
         regular expression match. Objects of type <code class="computeroutput"><span class="identifier">match_results</span></code>
- are passed to the algorithms <a class="link" href="regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a> and <a class="link" href="regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>, and are returned by
- the iterator <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a>. Storage for the
+ are passed to the algorithms regex_match and regex_search, and are returned by
+ the iterator regex_iterator. Storage for the
         collection is allocated and freed as necessary by the member functions of
         class <code class="computeroutput"><span class="identifier">match_results</span></code>.
       </p>
@@ -62,8 +61,7 @@
         <code class="computeroutput"><span class="identifier">wcmatch</span></code>, <code class="computeroutput"><span class="identifier">smatch</span></code>,
         or <code class="computeroutput"><span class="identifier">wsmatch</span></code>:
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span>
          <span class="keyword">class</span> <span class="identifier">Allocator</span> <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">allocator</span><span class="special">&lt;</span><span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">match_results</span><span class="special">;</span>
 
@@ -89,63 +87,63 @@
    <span class="keyword">typedef</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">char_type</span><span class="special">&gt;</span> <span class="identifier">string_type</span><span class="special">;</span>
 
    <span class="comment">// construct/copy/destroy:
-</span> <a class="link" href="match_results.html#boost_regex.match_results.construct">explicit match_results</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Allocator</span><span class="special">&amp;</span> <span class="identifier">a</span> <span class="special">=</span> <span class="identifier">Allocator</span><span class="special">());</span>
- <a class="link" href="match_results.html#boost_regex.match_results.copy_construct">match_results</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">m</span><span class="special">);</span>
- <a class="link" href="match_results.html#boost_regex.match_results.assign">match_results&amp; operator=</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">m</span><span class="special">);</span>
+</span> explicit match_results<span class="special">(</span><span class="keyword">const</span> <span class="identifier">Allocator</span><span class="special">&amp;</span> <span class="identifier">a</span> <span class="special">=</span> <span class="identifier">Allocator</span><span class="special">());</span>
+ match_results<span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">m</span><span class="special">);</span>
+ match_results& operator=<span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">m</span><span class="special">);</span>
    <span class="special">~</span><span class="identifier">match_results</span><span class="special">();</span>
 
    <span class="comment">// size:
-</span> <span class="identifier">size_type</span> <a class="link" href="match_results.html#boost_regex.match_results.size">size</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">size_type</span> <a class="link" href="match_results.html#boost_regex.match_results.max_size">max_size</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">bool</span> <a class="link" href="match_results.html#boost_regex.match_results.empty">empty</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+</span> <span class="identifier">size_type</span> size<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">size_type</span> max_size<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">bool</span> empty<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
    <span class="comment">// element access:
-</span> <span class="identifier">difference_type</span> <a class="link" href="match_results.html#boost_regex.match_results.length">length</a><span class="special">(</span><span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">difference_type</span> <a class="link" href="match_results.html#boost_regex.match_results.position">position</a><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">string_type</span> <a class="link" href="match_results.html#boost_regex.match_results.str">str</a><span class="special">(</span><span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">const_reference</span> <a class="link" href="match_results.html#boost_regex.match_results.subscript">operator[]</a><span class="special">(</span><span class="keyword">int</span> <span class="identifier">n</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="identifier">const_reference</span> <a class="link" href="match_results.html#boost_regex.match_results.prefix">prefix</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
-
- <span class="identifier">const_reference</span> <a class="link" href="match_results.html#boost_regex.match_results.suffix">suffix</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">const_iterator</span> <a class="link" href="match_results.html#boost_regex.match_results.begin">begin</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">const_iterator</span> <a class="link" href="match_results.html#boost_regex.match_results.end">end</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+</span> <span class="identifier">difference_type</span> length<span class="special">(</span><span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">difference_type</span> position<span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">string_type</span> str<span class="special">(</span><span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">const_reference</span> operator[]<span class="special">(</span><span class="keyword">int</span> <span class="identifier">n</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="identifier">const_reference</span> prefix<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+
+ <span class="identifier">const_reference</span> suffix<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">const_iterator</span> begin<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">const_iterator</span> end<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
    <span class="comment">// format:
 </span> <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">&gt;</span>
- <span class="identifier">OutputIterator</span> <a class="link" href="match_results.html#boost_regex.match_results.format">format</a><span class="special">(</span><span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
+ <span class="identifier">OutputIterator</span> format<span class="special">(</span><span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
                         <span class="keyword">const</span> <span class="identifier">string_type</span><span class="special">&amp;</span> <span class="identifier">fmt</span><span class="special">,</span>
                         <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">format_default</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">string_type</span> <a class="link" href="match_results.html#boost_regex.match_results.format2">format</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">string_type</span><span class="special">&amp;</span> <span class="identifier">fmt</span><span class="special">,</span>
+ <span class="identifier">string_type</span> format<span class="special">(</span><span class="keyword">const</span> <span class="identifier">string_type</span><span class="special">&amp;</span> <span class="identifier">fmt</span><span class="special">,</span>
                      <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">format_default</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
 
- <span class="identifier">allocator_type</span> <a class="link" href="match_results.html#boost_regex.match_results.get_allocator">get_allocator</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">void</span> <a class="link" href="match_results.html#boost_regex.match_results.swap">swap</a><span class="special">(</span><span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
+ <span class="identifier">allocator_type</span> get_allocator<span class="special">()</span> <span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">void</span> swap<span class="special">(</span><span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
 
 <span class="preprocessor">#ifdef</span> <span class="identifier">BOOST_REGEX_MATCH_EXTRA</span>
    <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">value_type</span><span class="special">::</span><span class="identifier">capture_sequence_type</span> <span class="identifier">capture_sequence_type</span><span class="special">;</span>
- <span class="keyword">const</span> <span class="identifier">capture_sequence_type</span><span class="special">&amp;</span> <a class="link" href="match_results.html#boost_regex.match_results.captures">captures</a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">i</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">const</span> <span class="identifier">capture_sequence_type</span><span class="special">&amp;</span> captures<span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">i</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 <span class="preprocessor">#endif</span>
 
 <span class="special">};</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="match_results.html#boost_regex.match_results.op_eq">operator ==</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
+<span class="keyword">bool</span> operator == <span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m2</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="match_results.html#boost_regex.match_results.op_ne">operator !=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
+<span class="keyword">bool</span> operator != <span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m2</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span>
- <a class="link" href="match_results.html#boost_regex.match_results.op_stream">operator &lt;&lt;</a> <span class="special">(</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">os</span><span class="special">,</span>
+ operator << <span class="special">(</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">os</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">void</span> <a class="link" href="match_results.html#boost_regex.match_results.op_swap">swap</a><span class="special">(</span><span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
+<span class="keyword">void</span> swap<span class="special">(</span><span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
          <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m2</span><span class="special">);</span>
 </pre>
 <a name="boost_regex.ref.match_results.description"></a><h5>
-<a name="id2675612"></a>
- <a class="link" href="match_results.html#boost_regex.ref.match_results.description">Description</a>
+<a name="id534900"></a>
+ Description
       </h5>
 <p>
         In all <code class="computeroutput"><span class="identifier">match_results</span></code> constructors,
@@ -154,8 +152,7 @@
       </p>
 <a name="boost_regex.match_results.construct"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">match_results</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Allocator</span><span class="special">&amp;</span> <span class="identifier">a</span> <span class="special">=</span> <span class="identifier">Allocator</span><span class="special">());</span>
+<pre class="programlisting"><span class="identifier">match_results</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Allocator</span><span class="special">&amp;</span> <span class="identifier">a</span> <span class="special">=</span> <span class="identifier">Allocator</span><span class="special">());</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Constructs an object of class
@@ -220,8 +217,7 @@
 </table></div>
 <a name="boost_regex.match_results.copy_construct"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">match_results</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">m</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">match_results</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">m</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Constructs an object of class match_results,
@@ -229,8 +225,7 @@
       </p>
 <a name="boost_regex.match_results.assign"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">match_results</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">m</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">match_results</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">m</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Assigns m to *this. The postconditions
@@ -354,36 +349,32 @@
 </table></div>
 <a name="boost_regex.match_results.size"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">size_type</span> <span class="identifier">size</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">size_type</span> <span class="identifier">size</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: Returns the number of <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a> elements stored in *this;
+ <span class="bold"><strong>Effects</strong></span>: Returns the number of sub_match elements stored in *this;
         that is the number of marked sub-expressions in the regular expression that
         was matched plus one.
       </p>
 <a name="boost_regex.match_results.max_size"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">size_type</span> <span class="identifier">max_size</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">size_type</span> <span class="identifier">max_size</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the maximum number of
- <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ sub_match
         elements that can be stored in *this.
       </p>
 <a name="boost_regex.match_results.empty"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">bool</span> <span class="identifier">empty</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">bool</span> <span class="identifier">empty</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns size() == 0.
       </p>
 <a name="boost_regex.match_results.length"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">difference_type</span> <span class="identifier">length</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">difference_type</span> <span class="identifier">length</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the length of sub-expression
@@ -391,8 +382,7 @@
       </p>
 <a name="boost_regex.match_results.position"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">difference_type</span> <span class="identifier">position</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">difference_type</span> <span class="identifier">position</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the starting location of
@@ -403,8 +393,7 @@
       </p>
 <a name="boost_regex.match_results.str"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">string_type</span> <span class="identifier">str</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">string_type</span> <span class="identifier">str</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">sub</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns sub-expression <span class="emphasis"><em>sub</em></span>
@@ -412,43 +401,39 @@
       </p>
 <a name="boost_regex.match_results.subscript"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">const_reference</span> <span class="keyword">operator</span><span class="special">[](</span><span class="keyword">int</span> <span class="identifier">n</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">const_reference</span> <span class="keyword">operator</span><span class="special">[](</span><span class="keyword">int</span> <span class="identifier">n</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: Returns a reference to the <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ <span class="bold"><strong>Effects</strong></span>: Returns a reference to the sub_match
         object representing the character sequence that matched marked sub-expression
         <span class="emphasis"><em>n</em></span>. If <code class="computeroutput"><span class="identifier">n</span> <span class="special">==</span> <span class="number">0</span></code> then returns
- a reference to a <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a> object representing the
+ a reference to a sub_match object representing the
         character sequence that matched the whole regular expression. If <span class="emphasis"><em>n</em></span>
         is out of range, or if <span class="emphasis"><em>n</em></span> is an unmatched sub-expression,
- then returns a <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ then returns a sub_match
         object whose matched member is false.
       </p>
 <a name="boost_regex.match_results.prefix"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">const_reference</span> <span class="identifier">prefix</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">const_reference</span> <span class="identifier">prefix</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: Returns a reference to the <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ <span class="bold"><strong>Effects</strong></span>: Returns a reference to the sub_match
         object representing the character sequence from the start of the string being
         matched or searched, to the start of the match found.
       </p>
 <a name="boost_regex.match_results.suffix"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">const_reference</span> <span class="identifier">suffix</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">const_reference</span> <span class="identifier">suffix</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: Returns a reference to the <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ <span class="bold"><strong>Effects</strong></span>: Returns a reference to the sub_match
         object representing the character sequence from the end of the match found
         to the end of the string being matched or searched.
       </p>
 <a name="boost_regex.match_results.begin"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">const_iterator</span> <span class="identifier">begin</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">const_iterator</span> <span class="identifier">begin</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns a starting iterator that
@@ -456,8 +441,7 @@
       </p>
 <a name="boost_regex.match_results.end"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">const_iterator</span> <span class="identifier">end</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">const_iterator</span> <span class="identifier">end</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns a terminating iterator
@@ -465,8 +449,7 @@
       </p>
 <a name="boost_regex.match_results_format"></a><a name="boost_regex.match_results.format"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">&gt;</span>
 <span class="identifier">OutputIterator</span> <span class="identifier">format</span><span class="special">(</span><span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
                      <span class="keyword">const</span> <span class="identifier">string_type</span><span class="special">&amp;</span> <span class="identifier">fmt</span><span class="special">,</span>
                      <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">format_default</span><span class="special">);</span>
@@ -487,15 +470,14 @@
         Chapter 15 part 5.4.11 String.prototype.replace.
       </p>
 <p>
- See the <a class="link" href="../format.html" title="Search and Replace Format String Syntax">format syntax guide for more information</a>.
+ See the format syntax guide for more information.
       </p>
 <p>
         <span class="bold"><strong>Returns</strong></span>: out.
       </p>
 <a name="boost_regex.match_results.format2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">string_type</span> <span class="identifier">format</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">string_type</span><span class="special">&amp;</span> <span class="identifier">fmt</span><span class="special">,</span>
+<pre class="programlisting"><span class="identifier">string_type</span> <span class="identifier">format</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">string_type</span><span class="special">&amp;</span> <span class="identifier">fmt</span><span class="special">,</span>
                   <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">format_default</span><span class="special">);</span>
 </pre>
 <p>
@@ -508,12 +490,11 @@
         Chapter 15 part 5.4.11 String.prototype.replace.
       </p>
 <p>
- See the <a class="link" href="../format.html" title="Search and Replace Format String Syntax">format syntax guide for more information</a>.
+ See the format syntax guide for more information.
       </p>
 <a name="boost_regex.match_results.get_allocator"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">allocator_type</span> <span class="identifier">get_allocator</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">allocator_type</span> <span class="identifier">get_allocator</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns a copy of the Allocator
@@ -521,8 +502,7 @@
       </p>
 <a name="boost_regex.match_results.swap"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">void</span> <span class="identifier">swap</span><span class="special">(</span><span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">void</span> <span class="identifier">swap</span><span class="special">(</span><span class="identifier">match_results</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Swaps the contents of the two sequences.
@@ -537,8 +517,7 @@
       </p>
 <a name="boost_regex.match_results.capture_type"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">value_type</span><span class="special">::</span><span class="identifier">capture_sequence_type</span> <span class="identifier">capture_sequence_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">value_type</span><span class="special">::</span><span class="identifier">capture_sequence_type</span> <span class="identifier">capture_sequence_type</span><span class="special">;</span>
 </pre>
 <p>
         Defines an implementation-specific type that satisfies the requirements of
@@ -548,8 +527,7 @@
       </p>
 <a name="boost_regex.match_results.captures"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">const</span> <span class="identifier">capture_sequence_type</span><span class="special">&amp;</span> <span class="identifier">captures</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">i</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">const</span> <span class="identifier">capture_sequence_type</span><span class="special">&amp;</span> <span class="identifier">captures</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">i</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns a sequence containing all
@@ -561,7 +539,7 @@
 <p>
         <span class="bold"><strong>Preconditions</strong></span>: the library must be built
         and used with BOOST_REGEX_MATCH_EXTRA defined, and you must pass the flag
- match_extra to the regex matching functions ( <a class="link" href="regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>, <a class="link" href="regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>, <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a> or <a class="link" href="regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a>) in order for
+ match_extra to the regex matching functions ( regex_match, regex_search, regex_iterator or regex_token_iterator) in order for
         this member function to be defined and return useful information.
       </p>
 <p>
@@ -585,8 +563,7 @@
 </ul></div>
 <a name="boost_regex.match_results.op_eq"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m2</span><span class="special">);</span>
 </pre>
@@ -596,8 +573,7 @@
       </p>
 <a name="boost_regex.match_results.op_ne"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m2</span><span class="special">);</span>
 </pre>
@@ -607,8 +583,7 @@
       </p>
 <a name="boost_regex.match_results.op_stream"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span>
    <span class="keyword">operator</span> <span class="special">&lt;&lt;</span> <span class="special">(</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">os</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">);</span>
@@ -621,8 +596,7 @@
       </p>
 <a name="boost_regex.match_results.op_swap"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">void</span> <span class="identifier">swap</span><span class="special">(</span><span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
          <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m2</span><span class="special">);</span>
 </pre>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Interfacing With Non-Standard String Types</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="regex_traits.html" title="regex_traits">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.non_std_strings"></a><a class="link" href="non_std_strings.html" title="Interfacing With Non-Standard String Types"> Interfacing With Non-Standard
+<a name="boost_regex.ref.non_std_strings"></a><a href="non_std_strings.html" title="Interfacing With Non-Standard String Types"> Interfacing With Non-Standard
       String Types</a>
 </h3></div></div></div>
 <div class="toc"><dl>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Working With Unicode and ICU String Types</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../non_std_strings.html" title="Interfacing With Non-Standard String Types">
 <link rel="prev" href="../non_std_strings.html" title="Interfacing With Non-Standard String Types">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.non_std_strings.icu"></a><a class="link" href="icu.html" title="Working With Unicode and ICU String Types"> Working With
+<a name="boost_regex.ref.non_std_strings.icu"></a><a href="icu.html" title="Working With Unicode and ICU String Types"> Working With
         Unicode and ICU String Types</a>
 </h4></div></div></div>
 <div class="toc"><dl>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/intro.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/intro.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/intro.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Introduction to using Regex with ICU</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Boost.Regex">
 <link rel="up" href="../icu.html" title="Working With Unicode and ICU String Types">
 <link rel="prev" href="../icu.html" title="Working With Unicode and ICU String Types">
@@ -24,14 +24,13 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="boost_regex.ref.non_std_strings.icu.intro"></a><a class="link" href="intro.html" title="Introduction to using Regex with ICU"> Introduction
+<a name="boost_regex.ref.non_std_strings.icu.intro"></a><a href="intro.html" title="Introduction to using Regex with ICU"> Introduction
           to using Regex with ICU</a>
 </h5></div></div></div>
 <p>
             The header:
           </p>
-<pre class="programlisting">
-<span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">/</span><span class="identifier">icu</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">/</span><span class="identifier">icu</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
             contains the data types and algorithms necessary for working with regular
@@ -40,7 +39,7 @@
 <p>
             In order to use this header you will need the <a href="http://www.ibm.com/software/globalization/icu/" target="_top">ICU
             library</a>, and you will need to have built the Boost.Regex library
- with <a class="link" href="../../../install.html#boost_regex.install.building_with_unicode_and_icu_support">ICU
+ with <a href="../../../install.html#boost_regex.install.building_with_unicode_and_icu_support">ICU
             support enabled</a>.
           </p>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_algo.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_algo.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_algo.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Unicode Regular Expression Algorithms</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Boost.Regex">
 <link rel="up" href="../icu.html" title="Working With Unicode and ICU String Types">
 <link rel="prev" href="unicode_types.html" title="Unicode regular expression types">
@@ -24,11 +24,11 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="boost_regex.ref.non_std_strings.icu.unicode_algo"></a><a class="link" href="unicode_algo.html" title="Unicode Regular Expression Algorithms">
+<a name="boost_regex.ref.non_std_strings.icu.unicode_algo"></a><a href="unicode_algo.html" title="Unicode Regular Expression Algorithms">
           Unicode Regular Expression Algorithms</a>
 </h5></div></div></div>
 <p>
- The regular expression algorithms <a class="link" href="../../regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>, <a class="link" href="../../regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a> and <a class="link" href="../../regex_replace.html" title="regex_replace"><code class="computeroutput"><span class="identifier">regex_replace</span></code></a> all expect that
+ The regular expression algorithms regex_match, regex_search and regex_replace all expect that
             the character sequence upon which they operate, is encoded in the same
             character encoding as the regular expression object with which they are
             used. For Unicode regular expressions that behavior is undesirable: while
@@ -43,11 +43,11 @@
             on to the "real" algorithm.
           </p>
 <a name="boost_regex.ref.non_std_strings.icu.unicode_algo.u32regex_match"></a><h5>
-<a name="id2739621"></a>
- <a class="link" href="unicode_algo.html#boost_regex.ref.non_std_strings.icu.unicode_algo.u32regex_match">u32regex_match</a>
+<a name="id605295"></a>
+ u32regex_match
           </h5>
 <p>
- For each <a class="link" href="../../regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>
+ For each regex_match
             algorithm defined by <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>,
             then <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">/</span><span class="identifier">icu</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> defines an overloaded algorithm that
             takes the same arguments, but which is called <code class="computeroutput"><span class="identifier">u32regex_match</span></code>,
@@ -57,8 +57,7 @@
 <p>
             Example: match a password, encoded in a UTF-16 UnicodeString:
           </p>
-<pre class="programlisting">
-<span class="comment">//
+<pre class="programlisting"><span class="comment">//
 </span><span class="comment">// Find out if *password* meets our password requirements,
 </span><span class="comment">// as defined by the regular expression *requirements*.
 </span><span class="comment">//
@@ -70,8 +69,7 @@
 <p>
             Example: match a UTF-8 encoded filename:
           </p>
-<pre class="programlisting">
-<span class="comment">//
+<pre class="programlisting"><span class="comment">//
 </span><span class="comment">// Extract filename part of a path from a UTF-8 encoded std::string and return the result
 </span><span class="comment">// as another std::string:
 </span><span class="comment">//
@@ -91,11 +89,11 @@
 <span class="special">}</span>
 </pre>
 <a name="boost_regex.ref.non_std_strings.icu.unicode_algo.u32regex_search"></a><h5>
-<a name="id2740275"></a>
- <a class="link" href="unicode_algo.html#boost_regex.ref.non_std_strings.icu.unicode_algo.u32regex_search">u32regex_search</a>
+<a name="id606015"></a>
+ u32regex_search
           </h5>
 <p>
- For each <a class="link" href="../../regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>
+ For each regex_search
             algorithm defined by <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>,
             then <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">/</span><span class="identifier">icu</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> defines an overloaded algorithm that
             takes the same arguments, but which is called <code class="computeroutput"><span class="identifier">u32regex_search</span></code>,
@@ -105,8 +103,7 @@
 <p>
             Example: search for a character sequence in a specific language block:
           </p>
-<pre class="programlisting">
-<span class="identifier">UnicodeString</span> <span class="identifier">extract_greek</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">UnicodeString</span><span class="special">&amp;</span> <span class="identifier">text</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">UnicodeString</span> <span class="identifier">extract_greek</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">UnicodeString</span><span class="special">&amp;</span> <span class="identifier">text</span><span class="special">)</span>
 <span class="special">{</span>
    <span class="comment">// searches through some UTF-16 encoded text for a block encoded in Greek,
 </span> <span class="comment">// this expression is imperfect, but the best we can do for now - searching
@@ -131,11 +128,11 @@
 <span class="special">}</span>
 </pre>
 <a name="boost_regex.ref.non_std_strings.icu.unicode_algo.u32regex_replace"></a><h5>
-<a name="id2740815"></a>
- <a class="link" href="unicode_algo.html#boost_regex.ref.non_std_strings.icu.unicode_algo.u32regex_replace">u32regex_replace</a>
+<a name="id606608"></a>
+ u32regex_replace
           </h5>
 <p>
- For each <a class="link" href="../../regex_replace.html" title="regex_replace"><code class="computeroutput"><span class="identifier">regex_replace</span></code></a> algorithm defined
+ For each regex_replace algorithm defined
             by <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>, then <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">/</span><span class="identifier">icu</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
             defines an overloaded algorithm that takes the same arguments, but which
             is called <code class="computeroutput"><span class="identifier">u32regex_replace</span></code>,
@@ -149,8 +146,7 @@
 <p>
             Example: Credit card number reformatting:
           </p>
-<pre class="programlisting">
-<span class="comment">//
+<pre class="programlisting"><span class="comment">//
 </span><span class="comment">// Take a credit card number as a string of digits,
 </span><span class="comment">// and reformat it as a human readable string with "-"
 </span><span class="comment">// separating each group of four digit;,

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_iter.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_iter.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_iter.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Unicode Aware Regex Iterators</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Boost.Regex">
 <link rel="up" href="../icu.html" title="Working With Unicode and ICU String Types">
 <link rel="prev" href="unicode_algo.html" title="Unicode Regular Expression Algorithms">
@@ -24,23 +24,22 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="boost_regex.ref.non_std_strings.icu.unicode_iter"></a><a class="link" href="unicode_iter.html" title="Unicode Aware Regex Iterators">
+<a name="boost_regex.ref.non_std_strings.icu.unicode_iter"></a><a href="unicode_iter.html" title="Unicode Aware Regex Iterators">
           Unicode Aware Regex Iterators</a>
 </h5></div></div></div>
 <a name="boost_regex.ref.non_std_strings.icu.unicode_iter.u32regex_iterator"></a><h5>
-<a name="id2741240"></a>
- <a class="link" href="unicode_iter.html#boost_regex.ref.non_std_strings.icu.unicode_iter.u32regex_iterator">u32regex_iterator</a>
+<a name="id607067"></a>
+ u32regex_iterator
           </h5>
 <p>
             Type <code class="computeroutput"><span class="identifier">u32regex_iterator</span></code>
- is in all respects the same as <a class="link" href="../../regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a> except that since
+ is in all respects the same as regex_iterator except that since
             the regular expression type is always <code class="computeroutput"><span class="identifier">u32regex</span></code>
             it only takes one template parameter (the iterator type). It also calls
             <code class="computeroutput"><span class="identifier">u32regex_search</span></code> internally,
             allowing it to interface correctly with UTF-8, UTF-16, and UTF-32 data:
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">u32regex_iterator</span>
 <span class="special">{</span>
    <span class="comment">// for members see regex_iterator
@@ -55,8 +54,7 @@
             from a string, there are a series of non-member helper functions called
             make_u32regex_iterator:
           </p>
-<pre class="programlisting">
-<span class="identifier">u32regex_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*&gt;</span>
+<pre class="programlisting"><span class="identifier">u32regex_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*&gt;</span>
    <span class="identifier">make_u32regex_iterator</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">s</span><span class="special">,</span>
                           <span class="keyword">const</span> <span class="identifier">u32regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                           <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">);</span>
@@ -91,8 +89,7 @@
             Example: search for international currency symbols, along with their
             associated numeric value:
           </p>
-<pre class="programlisting">
-<span class="keyword">void</span> <span class="identifier">enumerate_currencies</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">text</span><span class="special">)</span>
+<pre class="programlisting"><span class="keyword">void</span> <span class="identifier">enumerate_currencies</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">text</span><span class="special">)</span>
 <span class="special">{</span>
    <span class="comment">// enumerate and print all the currency symbols, along
 </span> <span class="comment">// with any associated numeric values:
@@ -129,19 +126,18 @@
             Provided of course that the input is encoded as UTF-8.
           </p>
 <a name="boost_regex.ref.non_std_strings.icu.unicode_iter.u32regex_token_iterator"></a><h5>
-<a name="id2742828"></a>
- <a class="link" href="unicode_iter.html#boost_regex.ref.non_std_strings.icu.unicode_iter.u32regex_token_iterator">u32regex_token_iterator</a>
+<a name="id608814"></a>
+ u32regex_token_iterator
           </h5>
 <p>
             Type <code class="computeroutput"><span class="identifier">u32regex_token_iterator</span></code>
- is in all respects the same as <a class="link" href="../../regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a> except
+ is in all respects the same as regex_token_iterator except
             that since the regular expression type is always <code class="computeroutput"><span class="identifier">u32regex</span></code>
             it only takes one template parameter (the iterator type). It also calls
             <code class="computeroutput"><span class="identifier">u32regex_search</span></code> internally,
             allowing it to interface correctly with UTF-8, UTF-16, and UTF-32 data:
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">u32regex_token_iterator</span>
 <span class="special">{</span>
    <span class="comment">// for members see regex_token_iterator
@@ -156,8 +152,7 @@
             from a string, there are a series of non-member helper functions called
             <code class="computeroutput"><span class="identifier">make_u32regex_token_iterator</span></code>:
           </p>
-<pre class="programlisting">
-<span class="identifier">u32regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*&gt;</span>
+<pre class="programlisting"><span class="identifier">u32regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*&gt;</span>
    <span class="identifier">make_u32regex_token_iterator</span><span class="special">(</span>
          <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">s</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="identifier">u32regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">,</span>
@@ -198,8 +193,7 @@
             of marked sub-expression sub in regular expression <span class="emphasis"><em>e</em></span>,
             found in text <span class="emphasis"><em>s</em></span>, using match_flags <span class="emphasis"><em>m</em></span>.
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span><span class="special">&gt;</span>
 <span class="identifier">u32regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*&gt;</span>
    <span class="identifier">make_u32regex_token_iterator</span><span class="special">(</span>
          <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
@@ -244,8 +238,7 @@
             for each submatch in regular expression <span class="emphasis"><em>e</em></span>, found
             in text <span class="emphasis"><em>s</em></span>, using match_flags <span class="emphasis"><em>m</em></span>.
           </p>
-<pre class="programlisting">
-<span class="identifier">u32regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*&gt;</span>
+<pre class="programlisting"><span class="identifier">u32regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*&gt;</span>
    <span class="identifier">make_u32regex_token_iterator</span><span class="special">(</span>
          <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="identifier">u32regex</span><span class="special">&amp;</span> <span class="identifier">e</span><span class="special">,</span>
@@ -290,8 +283,7 @@
             Example: search for international currency symbols, along with their
             associated numeric value:
           </p>
-<pre class="programlisting">
-<span class="keyword">void</span> <span class="identifier">enumerate_currencies2</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">text</span><span class="special">)</span>
+<pre class="programlisting"><span class="keyword">void</span> <span class="identifier">enumerate_currencies2</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">text</span><span class="special">)</span>
 <span class="special">{</span>
    <span class="comment">// enumerate and print all the currency symbols, along
 </span> <span class="comment">// with any associated numeric values:

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_types.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_types.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/icu/unicode_types.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Unicode regular expression types</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Boost.Regex">
 <link rel="up" href="../icu.html" title="Working With Unicode and ICU String Types">
 <link rel="prev" href="intro.html" title="Introduction to using Regex with ICU">
@@ -24,21 +24,19 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="boost_regex.ref.non_std_strings.icu.unicode_types"></a><a class="link" href="unicode_types.html" title="Unicode regular expression types">
+<a name="boost_regex.ref.non_std_strings.icu.unicode_types"></a><a href="unicode_types.html" title="Unicode regular expression types">
           Unicode regular expression types</a>
 </h5></div></div></div>
 <p>
             Header <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">/</span><span class="identifier">icu</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> provides a regular expression traits
             class that handles UTF-32 characters:
           </p>
-<pre class="programlisting">
-<span class="keyword">class</span> <span class="identifier">icu_regex_traits</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">class</span> <span class="identifier">icu_regex_traits</span><span class="special">;</span>
 </pre>
 <p>
             and a regular expression type based upon that:
           </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">UChar32</span><span class="special">,</span><span class="identifier">icu_regex_traits</span><span class="special">&gt;</span> <span class="identifier">u32regex</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">UChar32</span><span class="special">,</span><span class="identifier">icu_regex_traits</span><span class="special">&gt;</span> <span class="identifier">u32regex</span><span class="special">;</span>
 </pre>
 <p>
             The type <code class="computeroutput"><span class="identifier">u32regex</span></code> is
@@ -53,8 +51,7 @@
             which allow regular expressions to be created from UTF-8, UTF-16, or
             UTF-32 encoded strings:
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">InputIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">InputIterator</span><span class="special">&gt;</span>
 <span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="identifier">InputIterator</span> <span class="identifier">i</span><span class="special">,</span>
                        <span class="identifier">InputIterator</span> <span class="identifier">j</span><span class="special">,</span>
                        <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">syntax_option_type</span> <span class="identifier">opt</span><span class="special">);</span>
@@ -65,8 +62,7 @@
             sequence is determined based upon sizeof(*i): 1 implies UTF-8, 2 implies
             UTF-16, and 4 implies UTF-32.
           </p>
-<pre class="programlisting">
-<span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
+<pre class="programlisting"><span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
                        <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">syntax_option_type</span> <span class="identifier">opt</span>
                            <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">perl</span><span class="special">);</span>
 </pre>
@@ -74,8 +70,7 @@
             <span class="bold"><strong>Effects</strong></span>: Creates a regular expression
             object from the Null-terminated UTF-8 characater sequence <span class="emphasis"><em>p</em></span>.
           </p>
-<pre class="programlisting">
-<span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">unsigned</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
+<pre class="programlisting"><span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">unsigned</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
                        <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">syntax_option_type</span> <span class="identifier">opt</span>
                            <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">perl</span><span class="special">);</span>
 </pre>
@@ -83,8 +78,7 @@
             <span class="bold"><strong>Effects</strong></span>: Creates a regular expression
             object from the Null-terminated UTF-8 characater sequence p.
           </p>
-<pre class="programlisting">
-<span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">wchar_t</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
+<pre class="programlisting"><span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">wchar_t</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
                        <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">syntax_option_type</span> <span class="identifier">opt</span>
                            <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">perl</span><span class="special">);</span>
 </pre>
@@ -94,8 +88,7 @@
             encoding of the sequence is determined based upon sizeof(wchar_t): 1
             implies UTF-8, 2 implies UTF-16, and 4 implies UTF-32.
           </p>
-<pre class="programlisting">
-<span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">UChar</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
+<pre class="programlisting"><span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">UChar</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
                        <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">syntax_option_type</span> <span class="identifier">opt</span>
                            <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">perl</span><span class="special">);</span>
 </pre>
@@ -103,8 +96,7 @@
             <span class="bold"><strong>Effects</strong></span>: Creates a regular expression
             object from the Null-terminated UTF-16 characater sequence p.
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">C</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">C</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">&gt;</span>
 <span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">C</span><span class="special">,</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">A</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                        <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">syntax_option_type</span> <span class="identifier">opt</span>
                            <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">perl</span><span class="special">);</span>
@@ -115,8 +107,7 @@
             based upon sizeof(C): 1 implies UTF-8, 2 implies UTF-16, and 4 implies
             UTF-32.
           </p>
-<pre class="programlisting">
-<span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">UnicodeString</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">,</span>
+<pre class="programlisting"><span class="identifier">u32regex</span> <span class="identifier">make_u32regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">UnicodeString</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                        <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">syntax_option_type</span> <span class="identifier">opt</span>
                            <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">perl</span><span class="special">);</span>
 </pre>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Using Boost Regex With MFC Strings</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../non_std_strings.html" title="Interfacing With Non-Standard String Types">
 <link rel="prev" href="icu/unicode_iter.html" title="Unicode Aware Regex Iterators">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.non_std_strings.mfc_strings"></a><a class="link" href="mfc_strings.html" title="Using Boost Regex With MFC Strings"> Using
+<a name="boost_regex.ref.non_std_strings.mfc_strings"></a><a href="mfc_strings.html" title="Using Boost Regex With MFC Strings"> Using
         Boost Regex With MFC Strings</a>
 </h4></div></div></div>
 <div class="toc"><dl>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_algo.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_algo.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_algo.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Overloaded Algorithms For MFC String Types</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Boost.Regex">
 <link rel="up" href="../mfc_strings.html" title="Using Boost Regex With MFC Strings">
 <link rel="prev" href="mfc_regex_create.html" title="Regular Expression Creation From an MFC String">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_algo"></a><a class="link" href="mfc_algo.html" title="Overloaded Algorithms For MFC String Types">
+<a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_algo"></a><a href="mfc_algo.html" title="Overloaded Algorithms For MFC String Types">
           Overloaded Algorithms For MFC String Types</a>
 </h5></div></div></div>
 <p>
@@ -34,21 +34,20 @@
             here they are anyway:
           </p>
 <a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_match"></a><h5>
-<a name="id2747514"></a>
- <a class="link" href="mfc_algo.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_match">regex_match</a>
+<a name="id613970"></a>
+ regex_match
           </h5>
 <p>
             There are two overloads, the first reports what matched in a match_results
             structure, the second does not.
           </p>
 <p>
- All the usual caveats for <a class="link" href="../../regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a> apply, in particular
+ All the usual caveats for regex_match apply, in particular
             the algorithm will only report a successful match if all of the input
- text matches the expression, if this isn't what you want then use <a class="link" href="../../regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>
+ text matches the expression, if this isn't what you want then use regex_search
             instead.
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span>
    <span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
    <span class="identifier">match_results</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">B</span><span class="special">*,</span> <span class="identifier">A</span><span class="special">&gt;&amp;</span> <span class="identifier">what</span><span class="special">,</span>
@@ -63,8 +62,7 @@
 <p>
             <span class="bold"><strong>Example:</strong></span>
           </p>
-<pre class="programlisting">
-<span class="comment">//
+<pre class="programlisting"><span class="comment">//
 </span><span class="comment">// Extract filename part of a path from a CString and return the result
 </span><span class="comment">// as another CString:
 </span><span class="comment">//
@@ -84,12 +82,11 @@
 <span class="special">}</span>
 </pre>
 <a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_match__second_overload_"></a><h5>
-<a name="id2748342"></a>
- <a class="link" href="mfc_algo.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_match__second_overload_">regex_match
+<a name="id614882"></a>
+ <a href="mfc_algo.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_match__second_overload_">regex_match
             (second overload)</a>
           </h5>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span>
    <span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
    <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">B</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
@@ -103,8 +100,7 @@
 <p>
             <span class="bold"><strong>Example:</strong></span>
           </p>
-<pre class="programlisting">
-<span class="comment">//
+<pre class="programlisting"><span class="comment">//
 </span><span class="comment">// Find out if *password* meets our password requirements,
 </span><span class="comment">// as defined by the regular expression *requirements*.
 </span><span class="comment">//
@@ -114,15 +110,14 @@
 <span class="special">}</span>
 </pre>
 <a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_search"></a><h5>
-<a name="id2748878"></a>
- <a class="link" href="mfc_algo.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_search">regex_search</a>
+<a name="id615473"></a>
+ regex_search
           </h5>
 <p>
- There are two additional overloads for <a class="link" href="../../regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>, the first reports
+ There are two additional overloads for regex_search, the first reports
             what matched the second does not:
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_search</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                   <span class="identifier">match_results</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*,</span> <span class="identifier">A</span><span class="special">&gt;&amp;</span> <span class="identifier">what</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
@@ -136,8 +131,7 @@
             <span class="bold"><strong>Example</strong></span>: Postcode extraction from an
             address string.
           </p>
-<pre class="programlisting">
-<span class="identifier">CString</span> <span class="identifier">extract_postcode</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">CString</span><span class="special">&amp;</span> <span class="identifier">address</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">CString</span> <span class="identifier">extract_postcode</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">CString</span><span class="special">&amp;</span> <span class="identifier">address</span><span class="special">)</span>
 <span class="special">{</span>
    <span class="comment">// searches throw address for a UK postcode and returns the result,
 </span> <span class="comment">// the expression used is by Phil A. on www.regxlib.com:
@@ -155,12 +149,11 @@
 <span class="special">}</span>
 </pre>
 <a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_search__second_overload_"></a><h5>
-<a name="id2749553"></a>
- <a class="link" href="mfc_algo.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_search__second_overload_">regex_search
+<a name="id616211"></a>
+ <a href="mfc_algo.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_search__second_overload_">regex_search
             (second overload)</a>
           </h5>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">inline</span> <span class="keyword">bool</span> <span class="identifier">regex_search</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">)</span>
@@ -171,15 +164,14 @@
             <span class="special">+</span> <span class="identifier">s</span><span class="special">.</span><span class="identifier">GetLength</span><span class="special">(),</span> <span class="identifier">e</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span></code>
           </p>
 <a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_replace"></a><h5>
-<a name="id2749918"></a>
- <a class="link" href="mfc_algo.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_algo.regex_replace">regex_replace</a>
+<a name="id616615"></a>
+ regex_replace
           </h5>
 <p>
- There are two additional overloads for <a class="link" href="../../regex_replace.html" title="regex_replace"><code class="computeroutput"><span class="identifier">regex_replace</span></code></a>, the first sends
+ There are two additional overloads for regex_replace, the first sends
             output to an output iterator, while the second creates a new string
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span>
          <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">OutputIterator</span> <span class="identifier">regex_replace</span><span class="special">(</span><span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
                            <span class="identifier">BidirectionalIterator</span> <span class="identifier">first</span><span class="special">,</span>
@@ -192,8 +184,7 @@
             <span class="bold"><strong>Effects</strong></span>: returns <code class="computeroutput"><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_replace</span><span class="special">(</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">e</span><span class="special">,</span> <span class="identifier">fmt</span><span class="special">.</span><span class="identifier">GetString</span><span class="special">(),</span>
             <span class="identifier">flags</span><span class="special">);</span></code>
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="identifier">charT</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span> <span class="identifier">regex_replace</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                            <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                            <span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">fmt</span><span class="special">,</span>
@@ -201,14 +192,13 @@
 </pre>
 <p>
             <span class="bold"><strong>Effects</strong></span>: returns a new string created
- using <a class="link" href="../../regex_replace.html" title="regex_replace"><code class="computeroutput"><span class="identifier">regex_replace</span></code></a>,
+ using regex_replace,
             and the same memory manager as string <span class="emphasis"><em>s</em></span>.
           </p>
 <p>
             <span class="bold"><strong>Example</strong></span>:
           </p>
-<pre class="programlisting">
-<span class="comment">//
+<pre class="programlisting"><span class="comment">//
 </span><span class="comment">// Take a credit card number as a string of digits,
 </span><span class="comment">// and reformat it as a human readable string with "-"
 </span><span class="comment">// separating each group of four digits:

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_intro.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_intro.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_intro.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Introduction to Boost.Regex and MFC Strings</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Boost.Regex">
 <link rel="up" href="../mfc_strings.html" title="Using Boost Regex With MFC Strings">
 <link rel="prev" href="../mfc_strings.html" title="Using Boost Regex With MFC Strings">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_intro"></a><a class="link" href="mfc_intro.html" title="Introduction to Boost.Regex and MFC Strings">
+<a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_intro"></a><a href="mfc_intro.html" title="Introduction to Boost.Regex and MFC Strings">
           Introduction to Boost.Regex and MFC Strings</a>
 </h5></div></div></div>
 <p>
@@ -38,8 +38,7 @@
             then you can substitute any of the following MFC/ATL types (all of which
             inherit from CSimpleStringT):
           </p>
-<pre class="programlisting">
-<span class="identifier">CString</span>
+<pre class="programlisting"><span class="identifier">CString</span>
 <span class="identifier">CStringA</span>
 <span class="identifier">CStringW</span>
 <span class="identifier">CAtlString</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_iter.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_iter.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_iter.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Iterating Over the Matches Within An MFC String</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Boost.Regex">
 <link rel="up" href="../mfc_strings.html" title="Using Boost Regex With MFC Strings">
 <link rel="prev" href="mfc_algo.html" title="Overloaded Algorithms For MFC String Types">
@@ -24,20 +24,19 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_iter"></a><a class="link" href="mfc_iter.html" title="Iterating Over the Matches Within An MFC String">
+<a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_iter"></a><a href="mfc_iter.html" title="Iterating Over the Matches Within An MFC String">
           Iterating Over the Matches Within An MFC String</a>
 </h5></div></div></div>
 <p>
             The following helper functions are provided to ease the conversion from
- an MFC/ATL string to a <a class="link" href="../../regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a> or <a class="link" href="../../regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a>:
+ an MFC/ATL string to a regex_iterator or regex_token_iterator:
           </p>
 <a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_iter.regex_iterator_creation_helper"></a><h5>
-<a name="id2750900"></a>
- <a class="link" href="mfc_iter.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_iter.regex_iterator_creation_helper">regex_iterator
+<a name="id617695"></a>
+ <a href="mfc_iter.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_iter.regex_iterator_creation_helper">regex_iterator
             creation helper</a>
           </h5>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">regex_iterator</span><span class="special">&lt;</span><span class="identifier">charT</span> <span class="keyword">const</span><span class="special">*&gt;</span>
    <span class="identifier">make_regex_iterator</span><span class="special">(</span>
       <span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
@@ -52,8 +51,7 @@
 <p>
             <span class="bold"><strong>Example</strong></span>:
           </p>
-<pre class="programlisting">
-<span class="keyword">void</span> <span class="identifier">enumerate_links</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">CString</span><span class="special">&amp;</span> <span class="identifier">html</span><span class="special">)</span>
+<pre class="programlisting"><span class="keyword">void</span> <span class="identifier">enumerate_links</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">CString</span><span class="special">&amp;</span> <span class="identifier">html</span><span class="special">)</span>
 <span class="special">{</span>
    <span class="comment">// enumerate and print all the links in some HTML text,
 </span> <span class="comment">// the expression used is by Andew Lee on www.regxlib.com:
@@ -70,12 +68,11 @@
 <span class="special">}</span>
 </pre>
 <a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_iter.regex_token_iterator_creation_helpers"></a><h5>
-<a name="id2751578"></a>
- <a class="link" href="mfc_iter.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_iter.regex_token_iterator_creation_helpers">regex_token_iterator
+<a name="id618444"></a>
+ <a href="mfc_iter.html#boost_regex.ref.non_std_strings.mfc_strings.mfc_iter.regex_token_iterator_creation_helpers">regex_token_iterator
             creation helpers</a>
           </h5>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="identifier">charT</span> <span class="keyword">const</span><span class="special">*&gt;</span>
    <span class="identifier">make_regex_token_iterator</span><span class="special">(</span>
       <span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
@@ -89,8 +86,7 @@
             <span class="identifier">sub</span><span class="special">,</span>
             <span class="identifier">f</span><span class="special">);</span></code>
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="identifier">charT</span> <span class="keyword">const</span><span class="special">*&gt;</span>
    <span class="identifier">make_regex_token_iterator</span><span class="special">(</span>
       <span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
@@ -104,8 +100,7 @@
             <span class="identifier">subs</span><span class="special">,</span>
             <span class="identifier">f</span><span class="special">);</span></code>
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="identifier">charT</span> <span class="keyword">const</span><span class="special">*&gt;</span>
    <span class="identifier">make_regex_token_iterator</span><span class="special">(</span>
       <span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
@@ -122,8 +117,7 @@
 <p>
             <span class="bold"><strong>Example</strong></span>:
           </p>
-<pre class="programlisting">
-<span class="keyword">void</span> <span class="identifier">enumerate_links2</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">CString</span><span class="special">&amp;</span> <span class="identifier">html</span><span class="special">)</span>
+<pre class="programlisting"><span class="keyword">void</span> <span class="identifier">enumerate_links2</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">CString</span><span class="special">&amp;</span> <span class="identifier">html</span><span class="special">)</span>
 <span class="special">{</span>
    <span class="comment">// enumerate and print all the links in some HTML text,
 </span> <span class="comment">// the expression used is by Andew Lee on www.regxlib.com:

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_create.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_create.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_create.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Regular Expression Creation From an MFC String</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Boost.Regex">
 <link rel="up" href="../mfc_strings.html" title="Using Boost Regex With MFC Strings">
 <link rel="prev" href="mfc_regex_types.html" title="Regex Types Used With MFC Strings">
@@ -24,15 +24,14 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_regex_create"></a><a class="link" href="mfc_regex_create.html" title="Regular Expression Creation From an MFC String">
+<a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_regex_create"></a><a href="mfc_regex_create.html" title="Regular Expression Creation From an MFC String">
           Regular Expression Creation From an MFC String</a>
 </h5></div></div></div>
 <p>
             The following helper function is available to assist in the creation
             of a regular expression from an MFC/ATL string type:
           </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span>
    <span class="identifier">make_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ATL</span><span class="special">::</span><span class="identifier">CSimpleStringT</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
             <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">syntax_option_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_types.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_types.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_types.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Regex Types Used With MFC Strings</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../../index.html" title="Boost.Regex">
 <link rel="up" href="../mfc_strings.html" title="Using Boost Regex With MFC Strings">
 <link rel="prev" href="mfc_intro.html" title="Introduction to Boost.Regex and MFC Strings">
@@ -24,15 +24,14 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_regex_types"></a><a class="link" href="mfc_regex_types.html" title="Regex Types Used With MFC Strings">
+<a name="boost_regex.ref.non_std_strings.mfc_strings.mfc_regex_types"></a><a href="mfc_regex_types.html" title="Regex Types Used With MFC Strings">
           Regex Types Used With MFC Strings</a>
 </h5></div></div></div>
 <p>
             The following typedefs are provided for the convenience of those working
             with TCHAR's:
           </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">TCHAR</span><span class="special">&gt;</span> <span class="identifier">tregex</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">TCHAR</span><span class="special">&gt;</span> <span class="identifier">tregex</span><span class="special">;</span>
 <span class="keyword">typedef</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">TCHAR</span> <span class="keyword">const</span><span class="special">*&gt;</span> <span class="identifier">tmatch</span><span class="special">;</span>
 <span class="keyword">typedef</span> <span class="identifier">regex_iterator</span><span class="special">&lt;</span><span class="identifier">TCHAR</span> <span class="keyword">const</span><span class="special">*&gt;</span> <span class="identifier">tregex_iterator</span><span class="special">;</span>
 <span class="keyword">typedef</span> <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="identifier">TCHAR</span> <span class="keyword">const</span><span class="special">*&gt;</span> <span class="identifier">tregex_token_iterator</span><span class="special">;</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/posix.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/posix.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/posix.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>POSIX Compatible C API's</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="non_std_strings/mfc_strings/mfc_iter.html" title="Iterating Over the Matches Within An MFC String">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.posix"></a><a class="link" href="posix.html" title="POSIX Compatible C API's"> POSIX Compatible C API's</a>
+<a name="boost_regex.ref.posix"></a> POSIX Compatible C API's
 </h3></div></div></div>
 <div class="note"><table border="0" summary="Note">
 <tr>
@@ -39,14 +39,12 @@
           as the names used are macros that expand to the actual function names.
         </p></td></tr>
 </table></div>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">cregex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">cregex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
         or:
       </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span>
 </pre>
 <p>
         The following functions are available for users who need a POSIX compatible
@@ -69,8 +67,7 @@
 <p>
         The functions are defined as:
       </p>
-<pre class="programlisting">
-<span class="keyword">extern</span> <span class="string">"C"</span> <span class="special">{</span>
+<pre class="programlisting"><span class="keyword">extern</span> <span class="string">"C"</span> <span class="special">{</span>
 
 <span class="keyword">struct</span> <span class="identifier">regex_tA</span><span class="special">;</span>
 <span class="keyword">struct</span> <span class="identifier">regex_tW</span><span class="special">;</span>
@@ -168,8 +165,8 @@
 <a name="regcomp"></a><p>
       </p>
 <a name="boost_regex.ref.posix.regcomp"></a><h5>
-<a name="id2754232"></a>
- <a class="link" href="posix.html#boost_regex.ref.posix.regcomp">regcomp</a>
+<a name="id621362"></a>
+ regcomp
       </h5>
 <p>
         <code class="computeroutput"><span class="identifier">regcomp</span></code> takes a pointer to
@@ -382,8 +379,8 @@
 <a name="regerror"></a><p>
       </p>
 <a name="boost_regex.ref.posix.regerror"></a><h5>
-<a name="id2754813"></a>
- <a class="link" href="posix.html#boost_regex.ref.posix.regerror">regerror</a>
+<a name="id622005"></a>
+ regerror
       </h5>
 <p>
         regerror takes the following parameters, it maps an error code to a human
@@ -470,8 +467,8 @@
 <a name="regexec"></a><p>
       </p>
 <a name="boost_regex.ref.posix.regexec"></a><h5>
-<a name="id2754980"></a>
- <a class="link" href="posix.html#boost_regex.ref.posix.regexec">regexec</a>
+<a name="id622188"></a>
+ regexec
       </h5>
 <p>
         regexec finds the first occurrence of expression e within string buf. If
@@ -540,8 +537,8 @@
 <a name="regfree"></a><p>
       </p>
 <a name="boost_regex.ref.posix.regfree"></a><h5>
-<a name="id2755108"></a>
- <a class="link" href="posix.html#boost_regex.ref.posix.regfree">regfree</a>
+<a name="id622329"></a>
+ regfree
       </h5>
 <p>
         <code class="computeroutput"><span class="identifier">regfree</span></code> frees all the memory

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_iterator.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_iterator.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_iterator.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>regex_iterator</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="regex_replace.html" title="regex_replace">
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.regex_iterator"></a><a class="link" href="regex_iterator.html" title="regex_iterator"> regex_iterator</a>
+<a name="boost_regex.ref.regex_iterator"></a> regex_iterator
 </h3></div></div></div>
 <p>
- The iterator type <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a> will enumerate all
+ The iterator type regex_iterator will enumerate all
         of the regular expression matches found in some sequence: dereferencing a
- <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a>
- yields a reference to a <a class="link" href="match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> object.
+ regex_iterator
+ yields a reference to a match_results object.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span>
          <span class="keyword">class</span> <span class="identifier">charT</span> <span class="special">=</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
          <span class="keyword">class</span> <span class="identifier">traits</span> <span class="special">=</span> <span class="identifier">regex_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span> <span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">regex_iterator</span>
@@ -46,18 +45,18 @@
    <span class="keyword">typedef</span> <span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> <span class="identifier">reference</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">forward_iterator_tag</span> <span class="identifier">iterator_category</span><span class="special">;</span>
    
- <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.construct1">regex_iterator</a><span class="special">();</span>
- <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.construct2">regex_iterator</a><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">b</span><span class="special">,</span>
+ regex_iterator<span class="special">();</span>
+ regex_iterator<span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">b</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">regex_type</span><span class="special">&amp;</span> <span class="identifier">re</span><span class="special">,</span>
                   <span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
- <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.construct3">regex_iterator</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;);</span>
- <span class="identifier">regex_iterator</span><span class="special">&amp;</span> <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.assign">operator=(</a><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;);</span>
- <span class="keyword">bool</span> <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.op_eq">operator==</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">bool</span> <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.op_ne">operator!=</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.op_deref">operator*</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.op_arrow">operator-&gt;</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">regex_iterator</span><span class="special">&amp;</span> <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.op_inc">operator++</a><span class="special">();</span>
- <span class="identifier">regex_iterator</span> <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.op_inc2">operator++</a><span class="special">(</span><span class="keyword">int</span><span class="special">);</span>
+ regex_iterator<span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;);</span>
+ <span class="identifier">regex_iterator</span><span class="special">&amp;</span> operator=(<span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;);</span>
+ <span class="keyword">bool</span> operator==<span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">bool</span> operator!=<span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> operator*<span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> operator-><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">regex_iterator</span><span class="special">&amp;</span> operator++<span class="special">();</span>
+ <span class="identifier">regex_iterator</span> operator++<span class="special">(</span><span class="keyword">int</span><span class="special">);</span>
 <span class="special">};</span>
 
 <span class="keyword">typedef</span> <span class="identifier">regex_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*&gt;</span> <span class="identifier">cregex_iterator</span><span class="special">;</span>
@@ -69,45 +68,43 @@
 <span class="preprocessor">#endif</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span> <span class="identifier">regex_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;</span>
- <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.make">make_regex_iterator</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
+ make_regex_iterator<span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                        <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">);</span>
                        
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">&gt;</span>
    <span class="identifier">regex_iterator</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;::</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;</span>
- <a class="link" href="regex_iterator.html#boost_regex.regex_iterator.make">make_regex_iterator</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">p</span><span class="special">,</span>
+ make_regex_iterator<span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">p</span><span class="special">,</span>
                           <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                           <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">);</span>
 </pre>
 <a name="boost_regex.ref.regex_iterator.description"></a><h5>
-<a name="id2717027"></a>
- <a class="link" href="regex_iterator.html#boost_regex.ref.regex_iterator.description">Description</a>
+<a name="id580462"></a>
+ Description
       </h5>
 <p>
- A <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a>
+ A regex_iterator
         is constructed from a pair of iterators, and enumerates all occurrences of
         a regular expression within that iterator range.
       </p>
 <a name="boost_regex.regex_iterator.construct1"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_iterator</span><span class="special">();</span>
+<pre class="programlisting"><span class="identifier">regex_iterator</span><span class="special">();</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: constructs an end of sequence
- <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a>.
+ regex_iterator.
       </p>
 <a name="boost_regex.regex_iterator.construct2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_iterator</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">b</span><span class="special">,</span>
+<pre class="programlisting"><span class="identifier">regex_iterator</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">b</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">regex_type</span><span class="special">&amp;</span> <span class="identifier">re</span><span class="special">,</span>
                <span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: constructs a <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a> that will enumerate
+ <span class="bold"><strong>Effects</strong></span>: constructs a regex_iterator that will enumerate
         all occurrences of the expression <span class="emphasis"><em>re</em></span>, within the sequence
- [a,b), and found using <a class="link" href="match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a> <span class="emphasis"><em>m</em></span>.
- The object <span class="emphasis"><em>re</em></span> must exist for the lifetime of the <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a>.
+ [a,b), and found using match_flag_type <span class="emphasis"><em>m</em></span>.
+ The object <span class="emphasis"><em>re</em></span> must exist for the lifetime of the regex_iterator.
       </p>
 <p>
         <span class="bold"><strong>Throws</strong></span>: <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">runtime_error</span></code>
@@ -119,8 +116,7 @@
       </p>
 <a name="boost_regex.regex_iterator.construct3"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_iterator</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">regex_iterator</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: constructs a copy of <code class="computeroutput"><span class="identifier">that</span></code>.
@@ -130,8 +126,7 @@
       </p>
 <a name="boost_regex.regex_iterator.assign"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_iterator</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;);</span>
+<pre class="programlisting"><span class="identifier">regex_iterator</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: sets <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code> equal to those in <code class="computeroutput"><span class="identifier">that</span></code>.
@@ -141,8 +136,7 @@
       </p>
 <a name="boost_regex.regex_iterator.op_eq"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">==(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">==(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns true if *this is equal
@@ -150,20 +144,18 @@
       </p>
 <a name="boost_regex.regex_iterator.op_ne"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">!=(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">!=(</span><span class="keyword">const</span> <span class="identifier">regex_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns <code class="computeroutput"><span class="special">!(*</span><span class="keyword">this</span> <span class="special">==</span> <span class="identifier">that</span><span class="special">)</span></code>.
       </p>
 <a name="boost_regex.regex_iterator.op_deref"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">*()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">*()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: dereferencing a <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a> object it yields
- a const reference to a <a class="link" href="match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> object, whose members
+ <span class="bold"><strong>Effects</strong></span>: dereferencing a regex_iterator object it yields
+ a const reference to a match_results object, whose members
         are set as follows:
       </p>
 <div class="informaltable"><table class="table">
@@ -383,22 +375,20 @@
 </table></div>
 <a name="boost_regex.regex_iterator.op_arrow"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> <span class="keyword">operator</span><span class="special">-&gt;()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> <span class="keyword">operator</span><span class="special">-&gt;()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns <code class="computeroutput"><span class="special">&amp;(*</span><span class="keyword">this</span><span class="special">)</span></code>.
       </p>
 <a name="boost_regex.regex_iterator.op_inc"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_iterator</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">++();</span>
+<pre class="programlisting"><span class="identifier">regex_iterator</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">++();</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: moves the iterator to the next
         match in the underlying sequence, or the end of sequence iterator if none
         if found. When the last match found matched a zero length string, then the
- <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a>
+ regex_iterator
         will find the next match as follows: if there exists a non-zero length match
         that starts at the same location as the last one, then returns it, otherwise
         starts looking for the next (possibly zero length) match from one position
@@ -417,8 +407,7 @@
       </p>
 <a name="boost_regex.regex_iterator.op_inc2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_iterator</span> <span class="keyword">operator</span><span class="special">++(</span><span class="keyword">int</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">regex_iterator</span> <span class="keyword">operator</span><span class="special">++(</span><span class="keyword">int</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: constructs a copy result of <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code>, then
@@ -429,8 +418,7 @@
       </p>
 <a name="boost_regex.regex_iterator.make"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="identifier">regex_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;</span>
    <span class="identifier">make_regex_iterator</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                      <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">);</span>
@@ -444,19 +432,18 @@
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns an iterator that enumerates
         all occurences of expression <span class="emphasis"><em>e</em></span> in text <span class="emphasis"><em>p</em></span>
- using <a class="link" href="match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>
+ using match_flag_type
         <span class="emphasis"><em>m</em></span>.
       </p>
 <a name="boost_regex.ref.regex_iterator.examples"></a><h5>
-<a name="id2719891"></a>
- <a class="link" href="regex_iterator.html#boost_regex.ref.regex_iterator.examples">Examples</a>
+<a name="id583597"></a>
+ Examples
       </h5>
 <p>
         The following example takes a C++ source file and builds up an index of class
         names, and the location of that class in the file.
       </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">map</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">fstream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_match.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_match.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_match.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>regex_match</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="sub_match.html" title="sub_match">
@@ -24,13 +24,12 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.regex_match"></a><a class="link" href="regex_match.html" title="regex_match"> regex_match</a>
+<a name="boost_regex.ref.regex_match"></a> regex_match
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
- The algorithm <a class="link" href="regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>
+ The algorithm regex_match
         determines whether a given regular expression matches <span class="bold"><strong>all</strong></span>
         of a given character sequence denoted by a pair of bidirectional-iterators,
         the algorithm is defined as follows, the main use of this function is data
@@ -43,13 +42,12 @@
 </tr>
 <tr><td align="left" valign="top"><p>
           Note that the result is true only if the expression matches the <span class="bold"><strong>whole</strong></span> of the input sequence. If you want to search
- for an expression somewhere within the sequence then use <a class="link" href="regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>. If you want to match
- a prefix of the character string then use <a class="link" href="regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a> with the flag match_continuous
+ for an expression somewhere within the sequence then use regex_search. If you want to match
+ a prefix of the character string then use regex_search with the flag match_continuous
           set.
         </p></td></tr>
 </table></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">last</span><span class="special">,</span>
                  <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                  <span class="keyword">const</span> <span class="identifier">basic_regex</span> <span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
@@ -82,11 +80,10 @@
                  <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
 </pre>
 <a name="boost_regex.ref.regex_match.description"></a><h5>
-<a name="id2702133"></a>
- <a class="link" href="regex_match.html#boost_regex.ref.regex_match.description">Description</a>
+<a name="id564067"></a>
+ Description
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">last</span><span class="special">,</span>
                  <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                  <span class="keyword">const</span> <span class="identifier">basic_regex</span> <span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
@@ -100,7 +97,7 @@
         <span class="bold"><strong>Effects</strong></span>: Determines whether there is an
         exact match between the regular expression <span class="emphasis"><em>e</em></span>, and all
         of the character sequence [first, last), parameter <span class="emphasis"><em>flags</em></span>
- (see <a class="link" href="match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>)
+ (see match_flag_type)
         is used to control how the expression is matched against the character sequence.
         Returns true if such a match exists, false otherwise.
       </p>
@@ -313,8 +310,7 @@
 </tr>
 </tbody>
 </table></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">last</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span> <span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
@@ -325,8 +321,7 @@
         and then returning the result of <code class="computeroutput"><span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">what</span><span class="special">,</span> <span class="identifier">e</span><span class="special">,</span>
         <span class="identifier">flags</span><span class="special">)</span></code>.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">str</span><span class="special">,</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span> <span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
@@ -336,8 +331,7 @@
         <span class="special">+</span> <span class="identifier">char_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;::</span><span class="identifier">length</span><span class="special">(</span><span class="identifier">str</span><span class="special">),</span>
         <span class="identifier">m</span><span class="special">,</span> <span class="identifier">e</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">)</span></code>.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span>
          <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                <span class="identifier">match_results</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;::</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
@@ -347,8 +341,7 @@
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">s</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">s</span><span class="special">.</span><span class="identifier">end</span><span class="special">(),</span> <span class="identifier">m</span><span class="special">,</span> <span class="identifier">e</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">)</span></code>.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">str</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span> <span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
@@ -358,8 +351,7 @@
         <span class="special">+</span> <span class="identifier">char_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;::</span><span class="identifier">length</span><span class="special">(</span><span class="identifier">str</span><span class="special">),</span>
         <span class="identifier">e</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">)</span></code>.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">basic_regex</span> <span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
@@ -368,14 +360,13 @@
         <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">s</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">s</span><span class="special">.</span><span class="identifier">end</span><span class="special">(),</span> <span class="identifier">e</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">)</span></code>.
       </p>
 <a name="boost_regex.ref.regex_match.examples"></a><h5>
-<a name="id2705023"></a>
- <a class="link" href="regex_match.html#boost_regex.ref.regex_match.examples">Examples</a>
+<a name="id567246"></a>
+ Examples
       </h5>
 <p>
         The following example processes an ftp response:
       </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">stdlib</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">stdlib</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_replace.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_replace.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_replace.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>regex_replace</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="regex_search.html" title="regex_search">
@@ -24,23 +24,21 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.regex_replace"></a><a class="link" href="regex_replace.html" title="regex_replace"> regex_replace</a>
+<a name="boost_regex.ref.regex_replace"></a> regex_replace
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
- The algorithm <a class="link" href="regex_replace.html" title="regex_replace"><code class="computeroutput"><span class="identifier">regex_replace</span></code></a> searches through a
+ The algorithm regex_replace searches through a
         string finding all the matches to the regular expression: for each match
- it then calls <a class="link" href="match_results.html#boost_regex.match_results_format"><code class="computeroutput"><span class="identifier">match_results</span><span class="special">&lt;&gt;::</span><span class="identifier">format</span></code></a> to format the string and
+ it then calls match_results<>::format to format the string and
         sends the result to the output iterator. Sections of text that do not match
         are copied to the output unchanged only if the <span class="emphasis"><em>flags</em></span>
         parameter does not have the flag <code class="computeroutput"><span class="identifier">format_no_copy</span></code>
         set. If the flag <code class="computeroutput"><span class="identifier">format_first_only</span></code>
         is set then only the first occurrence is replaced rather than all occurrences.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">OutputIterator</span> <span class="identifier">regex_replace</span><span class="special">(</span><span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
                              <span class="identifier">BidirectionalIterator</span> <span class="identifier">first</span><span class="special">,</span>
                              <span class="identifier">BidirectionalIterator</span> <span class="identifier">last</span><span class="special">,</span>
@@ -55,11 +53,10 @@
                                   <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
 </pre>
 <a name="boost_regex.ref.regex_replace.description"></a><h5>
-<a name="id2711652"></a>
- <a class="link" href="regex_replace.html#boost_regex.ref.regex_replace.description">Description</a>
+<a name="id574547"></a>
+ Description
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">OutputIterator</span> <span class="identifier">regex_replace</span><span class="special">(</span><span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
                              <span class="identifier">BidirectionalIterator</span> <span class="identifier">first</span><span class="special">,</span>
                              <span class="identifier">BidirectionalIterator</span> <span class="identifier">last</span><span class="special">,</span>
@@ -86,61 +83,53 @@
 <p>
         The manner in which the format string <span class="emphasis"><em>fmt</em></span> is interpretted,
         along with the rules used for finding matches, are determined by the flags
- set in <span class="emphasis"><em>flags</em></span>: see <a class="link" href="match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>.
+ set in <span class="emphasis"><em>flags</em></span>: see match_flag_type.
       </p>
 <p>
- <span class="bold"><strong>Effects</strong></span>: Constructs an <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a> object:
+ <span class="bold"><strong>Effects</strong></span>: Constructs an regex_iterator object:
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_iterator</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="identifier">regex_iterator</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
                                           <span class="identifier">i</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">e</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">),</span>
 </pre>
 <p>
         and uses <span class="emphasis"><em>i</em></span> to enumerate through all of the matches
- <span class="emphasis"><em>m</em></span> of type <a class="link" href="match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span></code>
+ <span class="emphasis"><em>m</em></span> of type match_results <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span></code>
         that occur within the sequence [first, last).
       </p>
 <p>
         If no such matches are found and
       </p>
-<pre class="programlisting">
-<span class="special">!(</span><span class="identifier">flags</span> <span class="special">&amp;</span> <span class="identifier">format_no_copy</span><span class="special">)</span>
+<pre class="programlisting"><span class="special">!(</span><span class="identifier">flags</span> <span class="special">&amp;</span> <span class="identifier">format_no_copy</span><span class="special">)</span>
 </pre>
 <p>
         then calls
       </p>
-<pre class="programlisting">
-<span class="identifier">std</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">out</span><span class="special">).</span>
+<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">out</span><span class="special">).</span>
 </pre>
 <p>
         Otherwise, for each match found, if
       </p>
-<pre class="programlisting">
-<span class="special">!(</span><span class="identifier">flags</span> <span class="special">&amp;</span> <span class="identifier">format_no_copy</span><span class="special">)</span>
+<pre class="programlisting"><span class="special">!(</span><span class="identifier">flags</span> <span class="special">&amp;</span> <span class="identifier">format_no_copy</span><span class="special">)</span>
 </pre>
 <p>
         calls
       </p>
-<pre class="programlisting">
-<span class="identifier">std</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span><span class="identifier">m</span><span class="special">.</span><span class="identifier">prefix</span><span class="special">().</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">m</span><span class="special">.</span><span class="identifier">prefix</span><span class="special">().</span><span class="identifier">last</span><span class="special">,</span> <span class="identifier">out</span><span class="special">),</span>
+<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span><span class="identifier">m</span><span class="special">.</span><span class="identifier">prefix</span><span class="special">().</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">m</span><span class="special">.</span><span class="identifier">prefix</span><span class="special">().</span><span class="identifier">last</span><span class="special">,</span> <span class="identifier">out</span><span class="special">),</span>
 </pre>
 <p>
         and then calls
       </p>
-<pre class="programlisting">
-<span class="identifier">m</span><span class="special">.</span><span class="identifier">format</span><span class="special">(</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">fmt</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">).</span>
+<pre class="programlisting"><span class="identifier">m</span><span class="special">.</span><span class="identifier">format</span><span class="special">(</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">fmt</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">).</span>
 </pre>
 <p>
         Finally if
       </p>
-<pre class="programlisting">
-<span class="special">!(</span><span class="identifier">flags</span> <span class="special">&amp;</span> <span class="identifier">format_no_copy</span><span class="special">)</span>
+<pre class="programlisting"><span class="special">!(</span><span class="identifier">flags</span> <span class="special">&amp;</span> <span class="identifier">format_no_copy</span><span class="special">)</span>
 </pre>
 <p>
         calls
       </p>
-<pre class="programlisting">
-<span class="identifier">std</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span><span class="identifier">last_m</span><span class="special">.</span><span class="identifier">suffix</span><span class="special">().</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last_m</span><span class="special">,</span><span class="identifier">suffix</span><span class="special">().</span><span class="identifier">last</span><span class="special">,</span> <span class="identifier">out</span><span class="special">)</span>
+<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span><span class="identifier">last_m</span><span class="special">.</span><span class="identifier">suffix</span><span class="special">().</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last_m</span><span class="special">,</span><span class="identifier">suffix</span><span class="special">().</span><span class="identifier">last</span><span class="special">,</span> <span class="identifier">out</span><span class="special">)</span>
 </pre>
 <p>
         where <span class="emphasis"><em>last_m</em></span> is a copy of the last match found.
@@ -161,8 +150,7 @@
 <p>
         <span class="bold"><strong>Returns</strong></span>: out.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">&gt;</span>
 <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span> <span class="identifier">regex_replace</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                                   <span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;&amp;</span> <span class="identifier">fmt</span><span class="special">,</span>
@@ -175,15 +163,14 @@
         and then returns <code class="computeroutput"><span class="identifier">result</span></code>.
       </p>
 <a name="boost_regex.ref.regex_replace.examples"></a><h5>
-<a name="id2713068"></a>
- <a class="link" href="regex_replace.html#boost_regex.ref.regex_replace.examples">Examples</a>
+<a name="id576096"></a>
+ Examples
       </h5>
 <p>
         The following example takes C/C++ source code as input, and outputs syntax
         highlighted HTML code.
       </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">fstream</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">fstream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">sstream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">&gt;</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_search.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_search.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_search.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>regex_search</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="regex_match.html" title="regex_match">
@@ -24,20 +24,18 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.regex_search"></a><a class="link" href="regex_search.html" title="regex_search"> regex_search</a>
+<a name="boost_regex.ref.regex_search"></a> regex_search
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
- The algorithm <a class="link" href="regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a> will search a range
+ The algorithm regex_search will search a range
         denoted by a pair of bidirectional-iterators for a given regular expression.
         The algorithm uses various heuristics to reduce the search time by only checking
         for a match if a match could conceivably start at that position. The algorithm
         is defined as follows:
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span>
          <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_search</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">last</span><span class="special">,</span>
                   <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
@@ -75,11 +73,10 @@
                   <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
 </pre>
 <a name="boost_regex.ref.regex_search.description"></a><h5>
-<a name="id2707029"></a>
- <a class="link" href="regex_search.html#boost_regex.ref.regex_search.description">Description</a>
+<a name="id569456"></a>
+ Description
       </h5>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_search</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">last</span><span class="special">,</span>
                   <span class="identifier">match_results</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
@@ -308,8 +305,7 @@
 </tr>
 </tbody>
 </table></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_search</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">str</span><span class="special">,</span> <span class="identifier">match_results</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                   <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
@@ -319,8 +315,7 @@
         <span class="special">+</span> <span class="identifier">char_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;::</span><span class="identifier">length</span><span class="special">(</span><span class="identifier">str</span><span class="special">),</span>
         <span class="identifier">m</span><span class="special">,</span> <span class="identifier">e</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">)</span></code>.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span>
          <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_search</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                   <span class="identifier">match_results</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;::</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
@@ -330,8 +325,7 @@
 <p>
         <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">regex_search</span><span class="special">(</span><span class="identifier">s</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">s</span><span class="special">.</span><span class="identifier">end</span><span class="special">(),</span> <span class="identifier">m</span><span class="special">,</span> <span class="identifier">e</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">)</span></code>.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">iterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">iterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_search</span><span class="special">(</span><span class="identifier">iterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">iterator</span> <span class="identifier">last</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                   <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
@@ -342,8 +336,7 @@
         and then returning the result of <code class="computeroutput"><span class="identifier">regex_search</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">what</span><span class="special">,</span> <span class="identifier">e</span><span class="special">,</span>
         <span class="identifier">flags</span><span class="special">)</span></code>.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_search</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">str</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                   <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
@@ -353,8 +346,7 @@
         <span class="special">+</span> <span class="identifier">char_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;::</span><span class="identifier">length</span><span class="special">(</span><span class="identifier">str</span><span class="special">),</span>
         <span class="identifier">e</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">)</span></code>.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="identifier">regex_search</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
                   <span class="identifier">match_flag_type</span> <span class="identifier">flags</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
@@ -363,8 +355,8 @@
         <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">regex_search</span><span class="special">(</span><span class="identifier">s</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">s</span><span class="special">.</span><span class="identifier">end</span><span class="special">(),</span> <span class="identifier">e</span><span class="special">,</span> <span class="identifier">flags</span><span class="special">)</span></code>.
       </p>
 <a name="boost_regex.ref.regex_search.examples"></a><h5>
-<a name="id2709993"></a>
- <a class="link" href="regex_search.html#boost_regex.ref.regex_search.examples">Examples</a>
+<a name="id572722"></a>
+ Examples
       </h5>
 <p>
         The following example, takes the contents of a file in the form of a string,
@@ -373,8 +365,7 @@
         is implemented, for example it could easily be modified to work with the
         SGI rope class, which uses a non-contiguous storage strategy.
       </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">string</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">map</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_token_iterator.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_token_iterator.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_token_iterator.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>regex_token_iterator</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="regex_iterator.html" title="regex_iterator">
@@ -24,23 +24,22 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.regex_token_iterator"></a><a class="link" href="regex_token_iterator.html" title="regex_token_iterator"> regex_token_iterator</a>
+<a name="boost_regex.ref.regex_token_iterator"></a> regex_token_iterator
 </h3></div></div></div>
 <p>
- The template class <a class="link" href="regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a> is an iterator
+ The template class regex_token_iterator is an iterator
         adapter; that is to say it represents a new view of an existing iterator
         sequence, by enumerating all the occurrences of a regular expression within
         that sequence, and presenting one or more character sequence for each match
- found. Each position enumerated by the iterator is a <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a> object that represents
+ found. Each position enumerated by the iterator is a sub_match object that represents
         what matched a particular sub-expression within the regular expression. When
- class <a class="link" href="regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a> is used to
+ class regex_token_iterator is used to
         enumerate a single sub-expression with index -1, then the iterator performs
         field splitting: that is to say it enumerates one character sequence for
         each section of the character container sequence that does not match the
         regular expression specified.
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span>
          <span class="keyword">class</span> <span class="identifier">charT</span> <span class="special">=</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
          <span class="keyword">class</span> <span class="identifier">traits</span> <span class="special">=</span> <span class="identifier">regex_traits</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">&gt;</span> <span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">regex_token_iterator</span>
@@ -53,31 +52,31 @@
    <span class="keyword">typedef</span> <span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> <span class="identifier">reference</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">forward_iterator_tag</span> <span class="identifier">iterator_category</span><span class="special">;</span>
    
- <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.construct1">regex_token_iterator</a><span class="special">();</span>
- <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.construct2">regex_token_iterator</a><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
+ regex_token_iterator<span class="special">();</span>
+ regex_token_iterator<span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
                         <span class="identifier">BidirectionalIterator</span> <span class="identifier">b</span><span class="special">,</span>
                         <span class="keyword">const</span> <span class="identifier">regex_type</span><span class="special">&amp;</span> <span class="identifier">re</span><span class="special">,</span>
                         <span class="keyword">int</span> <span class="identifier">submatch</span> <span class="special">=</span> <span class="number">0</span><span class="special">,</span>
                         <span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
- <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.construct3">regex_token_iterator</a><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
+ regex_token_iterator<span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
                         <span class="identifier">BidirectionalIterator</span> <span class="identifier">b</span><span class="special">,</span>
                         <span class="keyword">const</span> <span class="identifier">regex_type</span><span class="special">&amp;</span> <span class="identifier">re</span><span class="special">,</span>
                         <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;&amp;</span> <span class="identifier">submatches</span><span class="special">,</span>
                         <span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
    <span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span><span class="special">&gt;</span>
- <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.construct4">regex_token_iterator</a><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
+ regex_token_iterator<span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
                         <span class="identifier">BidirectionalIterator</span> <span class="identifier">b</span><span class="special">,</span>
                         <span class="keyword">const</span> <span class="identifier">regex_type</span><span class="special">&amp;</span> <span class="identifier">re</span><span class="special">,</span>
                         <span class="keyword">const</span> <span class="keyword">int</span> <span class="special">(&amp;</span><span class="identifier">submatches</span><span class="special">)[</span><span class="identifier">N</span><span class="special">],</span>
                         <span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">match_default</span><span class="special">);</span>
- <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.construct5">regex_token_iterator</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;);</span>
- <span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.assign">operator=</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;);</span>
- <span class="keyword">bool</span> <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.op_eq">operator==</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">bool</span> <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.op_ne">operator!=</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.op_deref">operator*</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.op_arrow">operator-&gt;</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.op_inc1">operator++</a><span class="special">();</span>
- <span class="identifier">regex_token_iterator</span> <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.op_inc2">operator++</a><span class="special">(</span><span class="keyword">int</span><span class="special">);</span>
+ regex_token_iterator<span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;);</span>
+ <span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> operator=<span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;);</span>
+ <span class="keyword">bool</span> operator==<span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">bool</span> operator!=<span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> operator*<span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> operator-><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> operator++<span class="special">();</span>
+ <span class="identifier">regex_token_iterator</span> operator++<span class="special">(</span><span class="keyword">int</span><span class="special">);</span>
 <span class="special">};</span>
 
 <span class="keyword">typedef</span> <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*&gt;</span> <span class="identifier">cregex_token_iterator</span><span class="special">;</span>
@@ -89,7 +88,7 @@
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;</span>
- <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.make">make_regex_token_iterator</a><span class="special">(</span>
+ make_regex_token_iterator<span class="special">(</span>
          <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
          <span class="keyword">int</span> <span class="identifier">submatch</span> <span class="special">=</span> <span class="number">0</span><span class="special">,</span>
@@ -97,7 +96,7 @@
                              
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;::</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;</span>
- <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.make">make_regex_token_iterator</a><span class="special">(</span>
+ make_regex_token_iterator<span class="special">(</span>
          <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">p</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
          <span class="keyword">int</span> <span class="identifier">submatch</span> <span class="special">=</span> <span class="number">0</span><span class="special">,</span>
@@ -105,7 +104,7 @@
                              
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;</span>
-<a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.make">make_regex_token_iterator</a><span class="special">(</span>
+make_regex_token_iterator<span class="special">(</span>
          <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="keyword">int</span> <span class="special">(&amp;</span><span class="identifier">submatch</span><span class="special">)[</span><span class="identifier">N</span><span class="special">],</span>
@@ -113,7 +112,7 @@
                             
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;::</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;</span>
- <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.make">make_regex_token_iterator</a><span class="special">(</span>
+ make_regex_token_iterator<span class="special">(</span>
          <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">p</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="keyword">int</span> <span class="special">(&amp;</span><span class="identifier">submatch</span><span class="special">)[</span><span class="identifier">N</span><span class="special">],</span>
@@ -121,7 +120,7 @@
                              
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;</span>
- <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.make">make_regex_token_iterator</a><span class="special">(</span>
+ make_regex_token_iterator<span class="special">(</span>
          <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;&amp;</span> <span class="identifier">submatch</span><span class="special">,</span>
@@ -130,28 +129,26 @@
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span>
       <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;::</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;</span>
- <a class="link" href="regex_token_iterator.html#boost_regex.regex_token_iterator.make">make_regex_token_iterator</a><span class="special">(</span>
+ make_regex_token_iterator<span class="special">(</span>
          <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">&gt;&amp;</span> <span class="identifier">p</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">e</span><span class="special">,</span>
          <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;&amp;</span> <span class="identifier">submatch</span><span class="special">,</span>
          <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">);</span>
 </pre>
 <a name="boost_regex.ref.regex_token_iterator.description"></a><h5>
-<a name="id2725160"></a>
- <a class="link" href="regex_token_iterator.html#boost_regex.ref.regex_token_iterator.description">Description</a>
+<a name="id589414"></a>
+ Description
       </h5>
 <a name="boost_regex.regex_token_iterator.construct1"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_token_iterator</span><span class="special">();</span>
+<pre class="programlisting"><span class="identifier">regex_token_iterator</span><span class="special">();</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: constructs an end of sequence iterator.
       </p>
 <a name="boost_regex.regex_token_iterator.construct2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_token_iterator</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
+<pre class="programlisting"><span class="identifier">regex_token_iterator</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
                      <span class="identifier">BidirectionalIterator</span> <span class="identifier">b</span><span class="special">,</span>
                      <span class="keyword">const</span> <span class="identifier">regex_type</span><span class="special">&amp;</span> <span class="identifier">re</span><span class="special">,</span>
                      <span class="keyword">int</span> <span class="identifier">submatch</span> <span class="special">=</span> <span class="number">0</span><span class="special">,</span>
@@ -162,10 +159,10 @@
         for the lifetime of the iterator constructed from it.
       </p>
 <p>
- <span class="bold"><strong>Effects</strong></span>: constructs a <a class="link" href="regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a> that will enumerate
+ <span class="bold"><strong>Effects</strong></span>: constructs a regex_token_iterator that will enumerate
         one string for each regular expression match of the expression <span class="emphasis"><em>re</em></span>
         found within the sequence [a,b), using match flags <span class="emphasis"><em>m</em></span>
- (see <a class="link" href="match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>).
+ (see match_flag_type).
         The string enumerated is the sub-expression <span class="emphasis"><em>submatch</em></span>
         for each match found; if <span class="emphasis"><em>submatch</em></span> is -1, then enumerates
         all the text sequences that did not match the expression <span class="emphasis"><em>re</em></span>
@@ -181,8 +178,7 @@
       </p>
 <a name="boost_regex.regex_token_iterator.construct3"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_token_iterator</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
+<pre class="programlisting"><span class="identifier">regex_token_iterator</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
                      <span class="identifier">BidirectionalIterator</span> <span class="identifier">b</span><span class="special">,</span>
                      <span class="keyword">const</span> <span class="identifier">regex_type</span><span class="special">&amp;</span> <span class="identifier">re</span><span class="special">,</span>
                      <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;&amp;</span> <span class="identifier">submatches</span><span class="special">,</span>
@@ -194,11 +190,11 @@
         for the lifetime of the iterator constructed from it.
       </p>
 <p>
- <span class="bold"><strong>Effects</strong></span>: constructs a <a class="link" href="regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a> that will enumerate
+ <span class="bold"><strong>Effects</strong></span>: constructs a regex_token_iterator that will enumerate
         <code class="computeroutput"><span class="identifier">submatches</span><span class="special">.</span><span class="identifier">size</span><span class="special">()</span></code>
         strings for each regular expression match of the expression <span class="emphasis"><em>re</em></span>
         found within the sequence [a,b), using match flags <span class="emphasis"><em>m</em></span>
- (see <a class="link" href="match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>).
+ (see match_flag_type).
         For each match found one string will be enumerated for each sub-expression
         index contained within submatches vector; if <code class="computeroutput"><span class="identifier">submatches</span><span class="special">[</span><span class="number">0</span><span class="special">]</span></code>
         is -1, then the first string enumerated for each match will be all of the
@@ -216,8 +212,7 @@
       </p>
 <a name="boost_regex.regex_token_iterator.construct4"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> <span class="identifier">a</span><span class="special">,</span>
                      <span class="identifier">BidirectionalIterator</span> <span class="identifier">b</span><span class="special">,</span>
                      <span class="keyword">const</span> <span class="identifier">regex_type</span><span class="special">&amp;</span> <span class="identifier">re</span><span class="special">,</span>
@@ -229,10 +224,10 @@
         for the lifetime of the iterator constructed from it.
       </p>
 <p>
- <span class="bold"><strong>Effects</strong></span>: constructs a <a class="link" href="regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a> that will enumerate
+ <span class="bold"><strong>Effects</strong></span>: constructs a regex_token_iterator that will enumerate
         <span class="emphasis"><em>R</em></span> strings for each regular expression match of the expression
         <span class="emphasis"><em>re</em></span> found within the sequence [a,b), using match flags
- <span class="emphasis"><em>m</em></span> (see <a class="link" href="match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>). For each match
+ <span class="emphasis"><em>m</em></span> (see match_flag_type). For each match
         found one string will be enumerated for each sub-expression index contained
         within the <span class="emphasis"><em>submatches</em></span> array; if <code class="computeroutput"><span class="identifier">submatches</span><span class="special">[</span><span class="number">0</span><span class="special">]</span></code>
         is -1, then the first string enumerated for each match will be all of the
@@ -250,8 +245,7 @@
       </p>
 <a name="boost_regex.regex_token_iterator.construct5"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_token_iterator</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">regex_token_iterator</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: constructs a copy of <code class="computeroutput"><span class="identifier">that</span></code>.
@@ -261,8 +255,7 @@
       </p>
 <a name="boost_regex.regex_token_iterator.assign"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <span class="identifier">that</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: sets <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code> to be equal to <code class="computeroutput"><span class="identifier">that</span></code>.
@@ -272,24 +265,21 @@
       </p>
 <a name="boost_regex.regex_token_iterator.op_eq"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">==(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">==(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns true if <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code> is the same position as <code class="computeroutput"><span class="identifier">that</span></code>.
       </p>
 <a name="boost_regex.regex_token_iterator.op_ne"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">!=(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">!=(</span><span class="keyword">const</span> <span class="identifier">regex_token_iterator</span><span class="special">&amp;)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns <code class="computeroutput"><span class="special">!(*</span><span class="keyword">this</span> <span class="special">==</span> <span class="identifier">that</span><span class="special">)</span></code>.
       </p>
 <a name="boost_regex.regex_token_iterator.op_deref"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">*()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">*()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns the current character sequence
@@ -297,16 +287,14 @@
       </p>
 <a name="boost_regex.regex_token_iterator.op_arrow"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> <span class="keyword">operator</span><span class="special">-&gt;()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> <span class="keyword">operator</span><span class="special">-&gt;()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns <code class="computeroutput"><span class="special">&amp;(*</span><span class="keyword">this</span><span class="special">)</span></code>.
       </p>
 <a name="boost_regex.regex_token_iterator.op_inc1"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">++();</span>
+<pre class="programlisting"><span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">++();</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: Moves on to the next character
@@ -325,8 +313,7 @@
       </p>
 <a name="boost_regex.regex_token_iterator.op_inc2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">++(</span><span class="keyword">int</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">regex_token_iterator</span><span class="special">&amp;</span> <span class="keyword">operator</span><span class="special">++(</span><span class="keyword">int</span><span class="special">);</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: constructs a copy result of <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code>, then
@@ -337,8 +324,7 @@
       </p>
 <a name="boost_regex.regex_token_iterator.make"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">&gt;</span>
 <span class="identifier">regex_token_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*,</span> <span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;</span>
    <span class="identifier">make_regex_token_iterator</span><span class="special">(</span>
          <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span>
@@ -389,22 +375,21 @@
          <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> <span class="identifier">m</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">);</span>
 </pre>
 <p>
- <span class="bold"><strong>Effects</strong></span>: returns a <a class="link" href="regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a> that enumerates
- one <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ <span class="bold"><strong>Effects</strong></span>: returns a regex_token_iterator that enumerates
+ one sub_match
         for each value in <span class="emphasis"><em>submatch</em></span> for each occurrence of regular
         expression <span class="emphasis"><em>e</em></span> in string <span class="emphasis"><em>p</em></span>, matched
- using <a class="link" href="match_flag_type.html" title="match_flag_type"><code class="computeroutput"><span class="identifier">match_flag_type</span></code></a>
+ using match_flag_type
         <span class="emphasis"><em>m</em></span>.
       </p>
 <a name="boost_regex.ref.regex_token_iterator.examples"></a><h5>
-<a name="id2729003"></a>
- <a class="link" href="regex_token_iterator.html#boost_regex.ref.regex_token_iterator.examples">Examples</a>
+<a name="id593630"></a>
+ Examples
       </h5>
 <p>
         The following example takes a string and splits it into a series of tokens:
       </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 
 <span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">std</span><span class="special">;</span>
@@ -442,8 +427,7 @@
         The following example takes a html file and outputs a list of all the linked
         files:
       </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">fstream</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">fstream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_traits.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_traits.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/regex_traits.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>regex_traits</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="error_type.html" title="error_type">
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.regex_traits"></a><a class="link" href="regex_traits.html" title="regex_traits"> regex_traits</a>
+<a name="boost_regex.ref.regex_traits"></a> regex_traits
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">implementationT</span> <span class="special">=</span> <span class="identifier">sensible_default_choice</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">regex_traits</span> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">implementationT</span>
@@ -47,8 +46,8 @@
 <span class="special">}</span> <span class="comment">// namespace boost
 </span></pre>
 <a name="boost_regex.ref.regex_traits.description"></a><h5>
-<a name="id2738005"></a>
- <a class="link" href="regex_traits.html#boost_regex.ref.regex_traits.description">Description</a>
+<a name="id603542"></a>
+ Description
       </h5>
 <p>
         The class <code class="computeroutput"><span class="identifier">regex_traits</span></code> is
@@ -87,7 +86,7 @@
         </li>
 </ul></div>
 <p>
- All these traits classes fulfil the <a class="link" href="concepts/traits_concept.html" title="Traits Class Requirements">traits
+ All these traits classes fulfil the <a href="concepts/traits_concept.html" title="Traits Class Requirements">traits
         class requirements</a>.
       </p>
 </div>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/sub_match.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/sub_match.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/sub_match.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>sub_match</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="match_results.html" title="match_results">
@@ -24,39 +24,38 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.sub_match"></a><a class="link" href="sub_match.html" title="sub_match"> sub_match</a>
+<a name="boost_regex.ref.sub_match"></a> sub_match
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 </pre>
 <p>
         Regular expressions are different from many simple pattern-matching algorithms
         in that as well as finding an overall match they can also produce sub-expression
         matches: each sub-expression being delimited in the pattern by a pair of
         parenthesis (...). There has to be some method for reporting sub-expression
- matches back to the user: this is achieved this by defining a class <a class="link" href="match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a>
+ matches back to the user: this is achieved this by defining a class match_results
         that acts as an indexed collection of sub-expression matches, each sub-expression
- match being contained in an object of type <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>.
+ match being contained in an object of type sub_match.
       </p>
 <p>
- Objects of type <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
- may only be obtained by subscripting an object of type <a class="link" href="match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a>.
+ Objects of type sub_match
+ may only be obtained by subscripting an object of type match_results.
       </p>
 <p>
- Objects of type <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ Objects of type sub_match
         may be compared to objects of type <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span></code>,
         or <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span></code> or <code class="computeroutput"><span class="keyword">const</span>
         <span class="identifier">charT</span></code>.
       </p>
 <p>
- Objects of type <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ Objects of type sub_match
         may be added to objects of type <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span></code>,
         or <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span></code> or <code class="computeroutput"><span class="keyword">const</span>
         <span class="identifier">charT</span></code>, to produce a new <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span></code>
         object.
       </p>
 <p>
- When the marked sub-expression denoted by an object of type <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a> participated in a regular
+ When the marked sub-expression denoted by an object of type sub_match participated in a regular
         expression match then member <span class="emphasis"><em>matched</em></span> evaluates to <span class="emphasis"><em>true</em></span>,
         and members <span class="emphasis"><em>first</em></span> and <span class="emphasis"><em>second</em></span> denote
         the range of characters [first,second) which formed that match. Otherwise
@@ -65,25 +64,24 @@
         values.
       </p>
 <p>
- When the marked sub-expression denoted by an object of type <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a> was repeated, then the
- <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ When the marked sub-expression denoted by an object of type sub_match was repeated, then the
+ sub_match
         object represents the match obtained by the <span class="emphasis"><em>last</em></span> repeat.
         The complete set of all the captures obtained for all the repeats, may be
         accessed via the captures() member function (Note: this has serious performance
         implications, you have to explicitly enable this feature).
       </p>
 <p>
- If an object of type <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a> represents sub-expression
+ If an object of type sub_match represents sub-expression
         0 - that is to say the whole match - then member <span class="emphasis"><em>matched</em></span>
- is always <span class="emphasis"><em>true</em></span>, unless a <a class="link" href="../partial_matches.html" title="Partial Matches">partial
+ is always <span class="emphasis"><em>true</em></span>, unless a <a href="../partial_matches.html" title="Partial Matches">partial
         match</a> was obtained as a result of the flag <code class="computeroutput"><span class="identifier">match_partial</span></code>
         being passed to a regular expression algorithm, in which case member <span class="emphasis"><em>matched</em></span>
         is <span class="emphasis"><em>false</em></span>, and members <span class="emphasis"><em>first</em></span> and
         <span class="emphasis"><em>second</em></span> represent the character range that formed the
         partial match.
       </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">sub_match</span><span class="special">;</span>
@@ -97,44 +95,44 @@
 <span class="keyword">class</span> <span class="identifier">sub_match</span> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>
- <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <a class="link" href="sub_match.html#boost_regex.sub_match.value_type">value_type</a><span class="special">;</span>
- <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">difference_type</span> <a class="link" href="sub_match.html#boost_regex.sub_match.diff_type">difference_type</a><span class="special">;</span>
- <span class="keyword">typedef</span> <span class="identifier">BidirectionalIterator</span> <a class="link" href="sub_match.html#boost_regex.sub_match.it_type">iterator</a><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> value_type<span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">difference_type</span> difference_type<span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">BidirectionalIterator</span> iterator<span class="special">;</span>
 
- <span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.matched">matched</a><span class="special">;</span>
+ <span class="keyword">bool</span> matched<span class="special">;</span>
 
- <span class="identifier">difference_type</span> <a class="link" href="sub_match.html#boost_regex.sub_match.length">length</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
- <a class="link" href="sub_match.html#boost_regex.sub_match.cast">operator basic_string&lt;value_type&gt;</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
- <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;</span> <a class="link" href="sub_match.html#boost_regex.sub_match.str">str</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">difference_type</span> length<span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+ operator basic_string<value_type><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;</span> str<span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 
- <span class="keyword">int</span> <a class="link" href="sub_match.html#boost_regex.sub_match.compare1">compare</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">int</span> <a class="link" href="sub_match.html#boost_regex.sub_match.compare2">compare</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
- <span class="keyword">int</span> <a class="link" href="sub_match.html#boost_regex.sub_match.compare3">compare</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">int</span> compare<span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">int</span> compare<span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">int</span> compare<span class="special">(</span><span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 <span class="preprocessor">#ifdef</span> <span class="identifier">BOOST_REGEX_MATCH_EXTRA</span>
- <span class="keyword">typedef</span> <span class="identifier">implementation</span><span class="special">-</span><span class="keyword">private</span> <a class="link" href="sub_match.html#boost_regex.sub_match.cap_seq_type">capture_sequence_type</a><span class="special">;</span>
- <span class="keyword">const</span> <span class="identifier">capture_sequence_type</span><span class="special">&amp;</span> <a class="link" href="sub_match.html#boost_regex.sub_match.captures">captures</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">implementation</span><span class="special">-</span><span class="keyword">private</span> capture_sequence_type<span class="special">;</span>
+ <span class="keyword">const</span> <span class="identifier">capture_sequence_type</span><span class="special">&amp;</span> captures<span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 <span class="preprocessor">#endif</span>
 <span class="special">};</span>
 <span class="comment">//
 </span><span class="comment">// comparisons to another sub_match:
 </span><span class="comment">//
 </span><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare1">operator ==</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator == <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare2">operator !=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator != <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare3">operator &lt;</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator < <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare4">operator &lt;=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator <= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare5">operator &gt;=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator >= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare6">operator &gt;</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator > <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 
@@ -142,63 +140,63 @@
 </span><span class="comment">// comparisons to a basic_string:
 </span><span class="comment">//
 </span><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare7">operator ==</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
+<span class="keyword">bool</span> operator == <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare8">operator != </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
+<span class="keyword">bool</span> operator != <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare9">operator &lt;</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
+<span class="keyword">bool</span> operator < <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare10">operator &gt;</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
+<span class="keyword">bool</span> operator > <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare11">operator &gt;= </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
+<span class="keyword">bool</span> operator >= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare12">operator &lt;= </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
+<span class="keyword">bool</span> operator <= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare13">operator == </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator == <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare14">operator != </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator != <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare15">operator &lt; </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator < <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                        <span class="identifier">traits</span><span class="special">,</span>
                                        <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare16">operator &gt; </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator > <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                        <span class="identifier">traits</span><span class="special">,</span>
                                        <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare17">operator &gt;= </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator >= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                        <span class="identifier">traits</span><span class="special">,</span>
                                        <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare18">operator &lt;= </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator <= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
@@ -207,117 +205,117 @@
 </span><span class="comment">// comparisons to a pointer to a character array:
 </span><span class="comment">//
 </span><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare19">operator == </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator == <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare20">operator != </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator != <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare21">operator &lt; </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator < <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare22">operator &gt; </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator > <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare23">operator &gt;= </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator >= <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare24">operator &lt;= </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator <= <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare25">operator == </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator == <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare26">operator != </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator != <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare27">operator &lt; </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator < <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare28">operator &gt; </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator > <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare29">operator &gt;= </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator >= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare30">operator &lt;= </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator <= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="comment">//
 </span><span class="comment">// comparisons to a single character:
 </span><span class="comment">//
 </span><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare31">operator == </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator == <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare32">operator != </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator != <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare33">operator &lt; </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator < <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare34">operator &gt; </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator > <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare35">operator &gt;= </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator >= <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare36">operator &lt;= </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator <= <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare37">operator == </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator == <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare38">operator != </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator != <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare39">operator &lt; </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator < <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare40">operator &gt; </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator > <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare41">operator &gt;= </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator >= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
-<span class="keyword">bool</span> <a class="link" href="sub_match.html#boost_regex.sub_match.op_compare42">operator &lt;= </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+<span class="keyword">bool</span> operator <= <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 <span class="comment">//
 </span><span class="comment">// addition operators:
 </span><span class="comment">//
 </span><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
- <a class="link" href="sub_match.html#boost_regex.sub_match.op_add1">operator + </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
+ operator + <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                        <span class="identifier">traits</span><span class="special">,</span>
                                        <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
- <a class="link" href="sub_match.html#boost_regex.sub_match.op_add2">operator + </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
+ operator + <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                        <span class="identifier">traits</span><span class="special">,</span>
                                        <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">&gt;</span>
- <a class="link" href="sub_match.html#boost_regex.sub_match.op_add3">operator + </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">s</span><span class="special">,</span>
+ operator + <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">s</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">&gt;</span>
- <a class="link" href="sub_match.html#boost_regex.sub_match.op_add4">operator + </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
+ operator + <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span> <span class="special">*</span> <span class="identifier">s</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">&gt;</span>
- <a class="link" href="sub_match.html#boost_regex.sub_match.op_add5">operator + </a><span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">,</span>
+ operator + <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">&gt;</span>
- <a class="link" href="sub_match.html#boost_regex.sub_match.op_add6">operator + </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
+ operator + <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">&gt;</span>
- <a class="link" href="sub_match.html#boost_regex.sub_match.op_add7">operator + </a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
+ operator + <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m2</span><span class="special">);</span>
 
 <span class="comment">//
@@ -325,63 +323,57 @@
 </span><span class="comment">//
 </span><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span>
- <a class="link" href="sub_match.html#boost_regex.sub_match.op_stream">operator &lt;&lt; </a><span class="special">(</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">os</span><span class="special">,</span>
+ operator << <span class="special">(</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">os</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">);</span>
 
 <span class="special">}</span> <span class="comment">// namespace boost
 </span></pre>
 <a name="boost_regex.ref.sub_match.description"></a><h5>
-<a name="id2688030"></a>
- <a class="link" href="sub_match.html#boost_regex.ref.sub_match.description">Description</a>
+<a name="id548588"></a>
+ Description
       </h5>
 <a name="boost_regex.ref.sub_match.members"></a><h6>
-<a name="id2688051"></a>
- <a class="link" href="sub_match.html#boost_regex.ref.sub_match.members">Members</a>
+<a name="id548612"></a>
+ Members
       </h6>
 <a name="boost_regex.sub_match.value_type"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="identifier">value_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="identifier">value_type</span><span class="special">;</span>
 </pre>
 <p>
         The type pointed to by the iterators.
       </p>
 <a name="boost_regex.sub_match.diff_type"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">&gt;::</span><span class="identifier">difference_type</span> <span class="identifier">difference_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">&gt;::</span><span class="identifier">difference_type</span> <span class="identifier">difference_type</span><span class="special">;</span>
 </pre>
 <p>
         A type that represents the difference between two iterators.
       </p>
 <a name="boost_regex.sub_match.it_type"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">iterator</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">BidirectionalIterator</span> <span class="identifier">iterator</span><span class="special">;</span>
 </pre>
 <p>
         The iterator type.
       </p>
 <a name="boost_regex.sub_match.first"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">iterator</span> <span class="identifier">first</span>
+<pre class="programlisting"><span class="identifier">iterator</span> <span class="identifier">first</span>
 </pre>
 <p>
         An iterator denoting the position of the start of the match.
       </p>
 <a name="boost_regex.sub_match.second"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">iterator</span> <span class="identifier">second</span>
+<pre class="programlisting"><span class="identifier">iterator</span> <span class="identifier">second</span>
 </pre>
 <p>
         An iterator denoting the position of the end of the match.
       </p>
 <a name="boost_regex.sub_match.matched"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">bool</span> <span class="identifier">matched</span>
+<pre class="programlisting"><span class="keyword">bool</span> <span class="identifier">matched</span>
 </pre>
 <p>
         A Boolean value denoting whether this sub-expression participated in the
@@ -389,8 +381,7 @@
       </p>
 <a name="boost_regex.sub_match.length"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">static</span> <span class="identifier">difference_type</span> <span class="identifier">length</span><span class="special">();</span>
+<pre class="programlisting"><span class="keyword">static</span> <span class="identifier">difference_type</span> <span class="identifier">length</span><span class="special">();</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns the length of this matched
@@ -398,16 +389,14 @@
       </p>
 <a name="boost_regex.sub_match.cast"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">operator</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">operator</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: converts <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code> into a string: returns <code class="computeroutput"><span class="special">(</span><span class="identifier">matched</span> <span class="special">?</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">second</span><span class="special">)</span> <span class="special">:</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;())</span></code>.
       </p>
 <a name="boost_regex.sub_match.str"></a><p>
       </p>
-<pre class="programlisting">
-<span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;</span> <span class="identifier">str</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;</span> <span class="identifier">str</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns a string representation
@@ -417,8 +406,7 @@
       </p>
 <a name="boost_regex.sub_match.compare1"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">int</span> <span class="identifier">compare</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">int</span> <span class="identifier">compare</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: performs a lexical comparison to
@@ -426,8 +414,7 @@
       </p>
 <a name="boost_regex.sub_match.compare2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">int</span> <span class="identifier">compare</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">int</span> <span class="identifier">compare</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;&amp;</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: compares <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code> to the string <span class="emphasis"><em>s</em></span>:
@@ -435,8 +422,7 @@
       </p>
 <a name="boost_regex.sub_match.compare3"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">int</span> <span class="identifier">compare</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">int</span> <span class="identifier">compare</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">*</span> <span class="identifier">s</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: compares <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code> to the null-terminated string <span class="emphasis"><em>s</em></span>:
@@ -444,8 +430,7 @@
       </p>
 <a name="boost_regex.sub_match.cap_seq_type"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="identifier">implementation</span><span class="special">-</span><span class="keyword">private</span> <span class="identifier">capture_sequence_type</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">implementation</span><span class="special">-</span><span class="keyword">private</span> <span class="identifier">capture_sequence_type</span><span class="special">;</span>
 </pre>
 <p>
         Defines an implementation-specific type that satisfies the requirements of
@@ -455,8 +440,7 @@
       </p>
 <a name="boost_regex.sub_match.captures"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">const</span> <span class="identifier">capture_sequence_type</span><span class="special">&amp;</span> <span class="identifier">captures</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">const</span> <span class="identifier">capture_sequence_type</span><span class="special">&amp;</span> <span class="identifier">captures</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
 </pre>
 <p>
         <span class="bold"><strong>Effects</strong></span>: returns a sequence containing all
@@ -466,7 +450,7 @@
         <span class="bold"><strong>Preconditions</strong></span>: the library must be built
         and used with BOOST_REGEX_MATCH_EXTRA defined, and you must pass the flag
         <code class="computeroutput"><span class="identifier">match_extra</span></code> to the regex
- matching functions ( <a class="link" href="regex_match.html" title="regex_match"><code class="computeroutput"><span class="identifier">regex_match</span></code></a>, <a class="link" href="regex_search.html" title="regex_search"><code class="computeroutput"><span class="identifier">regex_search</span></code></a>, <a class="link" href="regex_iterator.html" title="regex_iterator"><code class="computeroutput"><span class="identifier">regex_iterator</span></code></a> or <a class="link" href="regex_token_iterator.html" title="regex_token_iterator"><code class="computeroutput"><span class="identifier">regex_token_iterator</span></code></a>) in order for
+ matching functions ( regex_match, regex_search, regex_iterator or regex_token_iterator) in order for
         this member #function to be defined and return useful information.
       </p>
 <p>
@@ -489,14 +473,13 @@
         </li>
 </ul></div>
 <a name="boost_regex.ref.sub_match.sub_match_non_member_operators"></a><h6>
-<a name="id2689497"></a>
- <a class="link" href="sub_match.html#boost_regex.ref.sub_match.sub_match_non_member_operators">sub_match
+<a name="id550186"></a>
+ <a href="sub_match.html#boost_regex.ref.sub_match.sub_match_non_member_operators">sub_match
         non-member operators</a>
       </h6>
 <a name="boost_regex.sub_match.op_compare1"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -506,8 +489,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -517,8 +499,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare3"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -528,8 +509,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare4"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -539,8 +519,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare5"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -550,8 +529,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare6"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -561,8 +539,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare7"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                                           <span class="identifier">traits</span><span class="special">,</span>
                                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
@@ -574,8 +551,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare8"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                                           <span class="identifier">traits</span><span class="special">,</span>
                                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
@@ -587,8 +563,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare9"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                          <span class="identifier">traits</span><span class="special">,</span>
                                          <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
@@ -600,8 +575,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare10"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                                          <span class="identifier">traits</span><span class="special">,</span>
                                                          <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
@@ -613,8 +587,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare11"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
@@ -626,8 +599,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare12"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
                                           <span class="identifier">Allocator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
@@ -639,8 +611,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare13"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
@@ -652,8 +623,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare14"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
@@ -665,8 +635,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare15"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                        <span class="identifier">traits</span><span class="special">,</span>
@@ -678,8 +647,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare16"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                  <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                          <span class="identifier">traits</span><span class="special">,</span>
@@ -691,8 +659,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare17"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
@@ -704,8 +671,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare18"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                           <span class="identifier">traits</span><span class="special">,</span>
@@ -717,8 +683,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare19"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -728,8 +693,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare20"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -739,8 +703,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare21"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -750,8 +713,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare22"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -761,8 +723,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare23"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;=</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -772,8 +733,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare24"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;=</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -783,8 +743,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare25"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -794,8 +753,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare26"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -805,8 +763,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare27"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -816,8 +773,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare28"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -827,8 +783,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare29"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -838,8 +793,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare30"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -849,8 +803,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare31"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -860,8 +813,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare32"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -871,8 +823,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare33"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -882,8 +833,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare34"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -893,8 +843,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare35"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;=</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -904,8 +853,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare36"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;=</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -915,8 +863,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare37"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -926,8 +873,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare38"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -937,8 +883,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare39"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -948,8 +893,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare40"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -959,8 +903,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare41"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&gt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -970,8 +913,7 @@
       </p>
 <a name="boost_regex.sub_match.op_compare42"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">&lt;=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
                   <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
 </pre>
@@ -980,14 +922,13 @@
         <span class="special">&lt;=</span> <span class="identifier">rhs</span></code>.
       </p>
 <p>
- The addition operators for <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a> allow you to add a <a class="link" href="sub_match.html" title="sub_match"><code class="computeroutput"><span class="identifier">sub_match</span></code></a>
+ The addition operators for sub_match allow you to add a sub_match
         to any type to which you can add a <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></code>
         and obtain a new string as the result.
       </p>
 <a name="boost_regex.sub_match.op_add1"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
    <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
                                        <span class="identifier">traits</span><span class="special">,</span>
@@ -1000,8 +941,7 @@
       </p>
 <a name="boost_regex.sub_match.op_add2"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">&gt;</span>
    <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">,</span>
@@ -1014,8 +954,7 @@
       </p>
 <a name="boost_regex.sub_match.op_add3"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">&gt;</span>
    <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">s</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">);</span>
@@ -1026,8 +965,7 @@
       </p>
 <a name="boost_regex.sub_match.op_add4"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">&gt;</span>
    <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span> <span class="special">*</span> <span class="identifier">s</span><span class="special">);</span>
@@ -1038,8 +976,7 @@
       </p>
 <a name="boost_regex.sub_match.op_add5"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">&gt;</span>
    <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">);</span>
@@ -1050,8 +987,7 @@
       </p>
 <a name="boost_regex.sub_match.op_add6"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">&gt;</span>
    <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">,</span>
                <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
@@ -1062,8 +998,7 @@
       </p>
 <a name="boost_regex.sub_match.op_add7"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;::</span><span class="identifier">value_type</span><span class="special">&gt;</span>
    <span class="keyword">operator</span> <span class="special">+</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m1</span><span class="special">,</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m2</span><span class="special">);</span>
@@ -1073,13 +1008,12 @@
         <span class="special">+</span> <span class="identifier">m2</span><span class="special">.</span><span class="identifier">str</span><span class="special">()</span></code>.
       </p>
 <a name="boost_regex.ref.sub_match.stream_inserter"></a><h6>
-<a name="id2700398"></a>
- <a class="link" href="sub_match.html#boost_regex.ref.sub_match.stream_inserter">Stream inserter</a>
+<a name="id562155"></a>
+ Stream inserter
       </h6>
 <a name="boost_regex.sub_match.op_stream"></a><p>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalIterator</span><span class="special">&gt;</span>
 <span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span>
    <span class="keyword">operator</span> <span class="special">&lt;&lt;</span> <span class="special">(</span><span class="identifier">basic_ostream</span><span class="special">&lt;</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">&gt;&amp;</span> <span class="identifier">os</span>
                <span class="keyword">const</span> <span class="identifier">sub_match</span><span class="special">&lt;</span><span class="identifier">BidirectionalIterator</span><span class="special">&gt;&amp;</span> <span class="identifier">m</span><span class="special">);</span>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>syntax_option_type</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../ref.html" title="Reference">
 <link rel="prev" href="bad_expression.html" title="bad_expression">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.ref.syntax_option_type"></a><a class="link" href="syntax_option_type.html" title="syntax_option_type"> syntax_option_type</a>
+<a name="boost_regex.ref.syntax_option_type"></a> syntax_option_type
 </h3></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"><a href="syntax_option_type/syntax_option_type_synopsis.html">

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_basic.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_basic.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_basic.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Options for POSIX Basic Regular Expressions</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax_option_type.html" title="syntax_option_type">
 <link rel="prev" href="syntax_option_type_extended.html" title="Options for POSIX Extended Regular Expressions">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.syntax_option_type.syntax_option_type_basic"></a><a class="link" href="syntax_option_type_basic.html" title="Options for POSIX Basic Regular Expressions">
+<a name="boost_regex.ref.syntax_option_type.syntax_option_type_basic"></a><a href="syntax_option_type_basic.html" title="Options for POSIX Basic Regular Expressions">
         Options for POSIX Basic Regular Expressions</a>
 </h4></div></div></div>
 <p>
@@ -69,7 +69,7 @@
 <td>
                 <p>
                   Specifies that the grammar recognized by the regular expression
- engine is the same as that used by <a class="link" href="../../syntax/basic_syntax.html" title="POSIX Basic Regular Expression Syntax">POSIX
+ engine is the same as that used by <a href="../../syntax/basic_syntax.html" title="POSIX Basic Regular Expression Syntax">POSIX
                   basic regular expressions</a> in IEEE Std 1003.1-2001, Portable
                   Operating System Interface (POSIX ), Base Definitions and Headers,
                   Section 9, Regular Expressions (FWD.1).
@@ -112,7 +112,7 @@
                   Section 4, Utilit\ies, grep (FWD.1).
                 </p>
                 <p>
- That is to say, the same as <a class="link" href="../../syntax/basic_syntax.html" title="POSIX Basic Regular Expression Syntax">POSIX
+ That is to say, the same as <a href="../../syntax/basic_syntax.html" title="POSIX Basic Regular Expression Syntax">POSIX
                   basic syntax</a>, but with the newline character acting as an
                   alternation character; the expression is treated as a newline separated
                   list of alternatives.
@@ -132,7 +132,7 @@
                 </td>
 <td>
                 <p>
- Specifies that the grammar recognised is the superset of the <a class="link" href="../../syntax/basic_syntax.html" title="POSIX Basic Regular Expression Syntax">POSIX-Basic syntax</a>
+ Specifies that the grammar recognised is the superset of the POSIX-Basic syntax
                   used by the emacs program.
                 </p>
                 </td>
@@ -199,7 +199,7 @@
                 <p>
                   Specifies that when a regular expression is matched against a character
                   container sequence, then no sub-expression matches are to be stored
- in the supplied <a class="link" href="../match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> structure.
+ in the supplied match_results structure.
                 </p>
                 </td>
 </tr>
@@ -238,7 +238,7 @@
 <td>
                 <p>
                   Specifies that character ranges of the form <code class="computeroutput"><span class="special">[</span><span class="identifier">a</span><span class="special">-</span><span class="identifier">b</span><span class="special">]</span></code>
- should be locale sensitive. This bit is on by default for <a class="link" href="../../syntax/basic_syntax.html" title="POSIX Basic Regular Expression Syntax">POSIX-Basic regular expressions</a>,
+ should be locale sensitive. This bit is on by default for POSIX-Basic regular expressions,
                   but can be unset to force ranges to be compared by code point only.
                 </p>
                 </td>
@@ -295,7 +295,7 @@
                 <p>
                   When set this makes the escape character ordinary inside lists,
                   so that <code class="computeroutput"><span class="special">[\</span><span class="identifier">b</span><span class="special">]</span></code> would match either '\' or 'b'.
- This bit is on by default for <a class="link" href="../../syntax/basic_syntax.html" title="POSIX Basic Regular Expression Syntax">POSIX-basic
+ This bit is on by default for <a href="../../syntax/basic_syntax.html" title="POSIX Basic Regular Expression Syntax">POSIX-basic
                   regular expressions</a>, but can be unset to force escapes to
                   be recognised inside lists.
                 </p>
@@ -368,7 +368,7 @@
                 </td>
 <td>
                 <p>
- Prevents <a class="link" href="../basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> from throwing
+ Prevents basic_regex from throwing
                   an exception when an invalid expression is encountered.
                 </p>
                 </td>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_extended.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_extended.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_extended.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Options for POSIX Extended Regular Expressions</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax_option_type.html" title="syntax_option_type">
 <link rel="prev" href="syntax_option_type_perl.html" title="Options for Perl Regular Expressions">
@@ -24,11 +24,11 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.syntax_option_type.syntax_option_type_extended"></a><a class="link" href="syntax_option_type_extended.html" title="Options for POSIX Extended Regular Expressions">
+<a name="boost_regex.ref.syntax_option_type.syntax_option_type_extended"></a><a href="syntax_option_type_extended.html" title="Options for POSIX Extended Regular Expressions">
         Options for POSIX Extended Regular Expressions</a>
 </h4></div></div></div>
 <p>
- Exactly one of the following must always be set for <a class="link" href="../../syntax/basic_extended.html" title="POSIX Extended Regular Expression Syntax">POSIX
+ Exactly one of the following must always be set for <a href="../../syntax/basic_extended.html" title="POSIX Extended Regular Expression Syntax">POSIX
           extended regular expressions</a>:
         </p>
 <div class="informaltable"><table class="table">
@@ -75,7 +75,7 @@
                   (FWD.1).
                 </p>
                 <p>
- Refer to the <a class="link" href="../../syntax/basic_extended.html" title="POSIX Extended Regular Expression Syntax">POSIX
+ Refer to the <a href="../../syntax/basic_extended.html" title="POSIX Extended Regular Expression Syntax">POSIX
                   extended regular expression guide</a> for more information.
                 </p>
                 <p>
@@ -106,7 +106,7 @@
                   grep (FWD.1).
                 </p>
                 <p>
- That is to say, the same as <a class="link" href="../../syntax/basic_extended.html" title="POSIX Extended Regular Expression Syntax">POSIX
+ That is to say, the same as <a href="../../syntax/basic_extended.html" title="POSIX Extended Regular Expression Syntax">POSIX
                   extended syntax</a>, but with the newline character acting as
                   an alternation character in addition to "|".
                 </p>
@@ -131,7 +131,7 @@
                   and Utilities, Section 4, awk (FWD.1).
                 </p>
                 <p>
- That is to say: the same as <a class="link" href="../../syntax/basic_extended.html" title="POSIX Extended Regular Expression Syntax">POSIX
+ That is to say: the same as <a href="../../syntax/basic_extended.html" title="POSIX Extended Regular Expression Syntax">POSIX
                   extended syntax</a>, but with escape sequences in character
                   classes permitted.
                 </p>
@@ -207,7 +207,7 @@
                 <p>
                   Specifies that when a regular expression is matched against a character
                   container sequence, then no sub-expression matches are to be stored
- in the supplied <a class="link" href="../match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> structure.
+ in the supplied match_results structure.
                 </p>
                 </td>
 </tr>
@@ -323,7 +323,7 @@
                 </td>
 <td>
                 <p>
- Prevents <a class="link" href="../basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> from throwing
+ Prevents basic_regex from throwing
                   an exception when an invalid expression is encountered.
                 </p>
                 </td>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_literal.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_literal.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_literal.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Options for Literal Strings</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax_option_type.html" title="syntax_option_type">
 <link rel="prev" href="syntax_option_type_basic.html" title="Options for POSIX Basic Regular Expressions">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.syntax_option_type.syntax_option_type_literal"></a><a class="link" href="syntax_option_type_literal.html" title="Options for Literal Strings">
+<a name="boost_regex.ref.syntax_option_type.syntax_option_type_literal"></a><a href="syntax_option_type_literal.html" title="Options for Literal Strings">
         Options for Literal Strings</a>
 </h4></div></div></div>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_overview.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_overview.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_overview.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Overview of syntax_option_type</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax_option_type.html" title="syntax_option_type">
 <link rel="prev" href="syntax_option_type_synopsis.html" title="syntax_option_type Synopsis">
@@ -24,13 +24,13 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.syntax_option_type.syntax_option_type_overview"></a><a class="link" href="syntax_option_type_overview.html" title="Overview of syntax_option_type">
+<a name="boost_regex.ref.syntax_option_type.syntax_option_type_overview"></a><a href="syntax_option_type_overview.html" title="Overview of syntax_option_type">
         Overview of syntax_option_type</a>
 </h4></div></div></div>
 <p>
- The type <a class="link" href="../syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> is an implementation
+ The type syntax_option_type is an implementation
           specific bitmask type (see C++ standard 17.3.2.1.2). Setting its elements
- has the effects listed in the table below, a valid value of type <a class="link" href="../syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a>
+ has the effects listed in the table below, a valid value of type syntax_option_type
           will always have exactly one of the elements <code class="computeroutput"><span class="identifier">normal</span></code>,
           <code class="computeroutput"><span class="identifier">basic</span></code>, <code class="computeroutput"><span class="identifier">extended</span></code>,
           <code class="computeroutput"><span class="identifier">awk</span></code>, <code class="computeroutput"><span class="identifier">grep</span></code>,
@@ -39,23 +39,20 @@
         </p>
 <p>
           Note that for convenience all the constants listed here are duplicated
- within the scope of class template <a class="link" href="../basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>, so you can use any
+ within the scope of class template basic_regex, so you can use any
           of:
         </p>
-<pre class="programlisting">
-<span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">constant_name</span>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">constant_name</span>
 </pre>
 <p>
           or
         </p>
-<pre class="programlisting">
-<span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">constant_name</span>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">constant_name</span>
 </pre>
 <p>
           or
         </p>
-<pre class="programlisting">
-<span class="identifier">boost</span><span class="special">::</span><span class="identifier">wregex</span><span class="special">::</span><span class="identifier">constant_name</span>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">wregex</span><span class="special">::</span><span class="identifier">constant_name</span>
 </pre>
 <p>
           in an interchangeable manner.

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_perl.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_perl.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_perl.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Options for Perl Regular Expressions</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax_option_type.html" title="syntax_option_type">
 <link rel="prev" href="syntax_option_type_overview.html" title="Overview of syntax_option_type">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.syntax_option_type.syntax_option_type_perl"></a><a class="link" href="syntax_option_type_perl.html" title="Options for Perl Regular Expressions">
+<a name="boost_regex.ref.syntax_option_type.syntax_option_type_perl"></a><a href="syntax_option_type_perl.html" title="Options for Perl Regular Expressions">
         Options for Perl Regular Expressions</a>
 </h4></div></div></div>
 <p>
@@ -73,7 +73,7 @@
                   part 10, RegExp (Regular Expression) Objects (FWD.1).
                 </p>
                 <p>
- This is functionally identical to the <a class="link" href="../../syntax/perl_syntax.html" title="Perl Regular Expression Syntax">Perl
+ This is functionally identical to the <a href="../../syntax/perl_syntax.html" title="Perl Regular Expression Syntax">Perl
                   regular expression syntax</a>.
                 </p>
                 <p>
@@ -211,7 +211,7 @@
                 <p>
                   Specifies that when a regular expression is matched against a character
                   container sequence, then no sub-expression matches are to be stored
- in the supplied <a class="link" href="../match_results.html" title="match_results"><code class="computeroutput"><span class="identifier">match_results</span></code></a> structure.
+ in the supplied match_results structure.
                 </p>
                 </td>
 </tr>
@@ -286,7 +286,7 @@
                 </td>
 <td>
                 <p>
- Prevents <a class="link" href="../basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> from throwing
+ Prevents basic_regex from throwing
                   an exception when an invalid expression is encountered.
                 </p>
                 </td>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_synopsis.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_synopsis.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_synopsis.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>syntax_option_type Synopsis</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax_option_type.html" title="syntax_option_type">
 <link rel="prev" href="../syntax_option_type.html" title="syntax_option_type">
@@ -24,18 +24,17 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.ref.syntax_option_type.syntax_option_type_synopsis"></a><a class="link" href="syntax_option_type_synopsis.html" title="syntax_option_type Synopsis">
+<a name="boost_regex.ref.syntax_option_type.syntax_option_type_synopsis"></a><a href="syntax_option_type_synopsis.html" title="syntax_option_type Synopsis">
         syntax_option_type Synopsis</a>
 </h4></div></div></div>
 <p>
- Type <a class="link" href="../syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a>
+ Type syntax_option_type
           is an implementation specific bitmask type that controls how a regular
           expression string is to be interpreted. For convenience note that all the
           constants listed here, are also duplicated within the scope of class template
- <a class="link" href="../basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>.
+ basic_regex.
         </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">std</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">regex_constants</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">std</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">regex_constants</span><span class="special">{</span>
 
 <span class="keyword">typedef</span> <span class="identifier">implementation</span><span class="special">-</span><span class="identifier">specific</span><span class="special">-</span><span class="identifier">bitmask</span><span class="special">-</span><span class="identifier">type</span> <span class="identifier">syntax_option_type</span><span class="special">;</span>
 

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Regular Expression Syntax</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Regex">
 <link rel="up" href="../index.html" title="Boost.Regex">
 <link rel="prev" href="partial_matches.html" title="Partial Matches">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_regex.syntax"></a><a class="link" href="syntax.html" title="Regular Expression Syntax"> Regular Expression Syntax</a>
+<a name="boost_regex.syntax"></a> Regular Expression Syntax
 </h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"><a href="syntax/perl_syntax.html"> Perl Regular Expression
@@ -63,15 +63,15 @@
     </p>
 <div class="itemizedlist"><ul type="disc">
 <li>
-<a class="link" href="syntax/perl_syntax.html" title="Perl Regular Expression Syntax">Perl (this is the default
+<a href="syntax/perl_syntax.html" title="Perl Regular Expression Syntax">Perl (this is the default
         behavior)</a>.
       </li>
 <li>
-<a class="link" href="syntax/basic_extended.html" title="POSIX Extended Regular Expression Syntax">POSIX extended (including
+<a href="syntax/basic_extended.html" title="POSIX Extended Regular Expression Syntax">POSIX extended (including
         the egrep and awk variations)</a>.
       </li>
 <li>
-<a class="link" href="syntax/basic_syntax.html" title="POSIX Basic Regular Expression Syntax">POSIX Basic (including the
+<a href="syntax/basic_syntax.html" title="POSIX Basic Regular Expression Syntax">POSIX Basic (including the
         grep and emacs variations)</a>.
       </li>
 </ul></div>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/basic_extended.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/basic_extended.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/basic_extended.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>POSIX Extended Regular Expression Syntax</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax.html" title="Regular Expression Syntax">
 <link rel="prev" href="perl_syntax.html" title="Perl Regular Expression Syntax">
@@ -24,12 +24,12 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.syntax.basic_extended"></a><a class="link" href="basic_extended.html" title="POSIX Extended Regular Expression Syntax"> POSIX Extended Regular
+<a name="boost_regex.syntax.basic_extended"></a><a href="basic_extended.html" title="POSIX Extended Regular Expression Syntax"> POSIX Extended Regular
       Expression Syntax</a>
 </h3></div></div></div>
 <a name="boost_regex.syntax.basic_extended.synopsis"></a><h4>
-<a name="id2647939"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.synopsis">Synopsis</a>
+<a name="id504344"></a>
+ Synopsis
       </h4>
 <p>
         The POSIX-Extended regular expression syntax is supported by the POSIX C
@@ -38,8 +38,7 @@
         the flag <code class="computeroutput"><span class="identifier">extended</span></code> to the
         regex constructor, for example:
       </p>
-<pre class="programlisting">
-<span class="comment">// e1 is a case sensitive POSIX-Extended expression:
+<pre class="programlisting"><span class="comment">// e1 is a case sensitive POSIX-Extended expression:
 </span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e1</span><span class="special">(</span><span class="identifier">my_expression</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">extended</span><span class="special">);</span>
 <span class="comment">// e2 a case insensitive POSIX-Extended expression:
 </span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e2</span><span class="special">(</span><span class="identifier">my_expression</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">extended</span><span class="special">|</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">icase</span><span class="special">);</span>
@@ -47,8 +46,8 @@
 <a name="boost_regex.posix_extended_syntax"></a><p>
       </p>
 <a name="boost_regex.syntax.basic_extended.posix_extended_syntax"></a><h4>
-<a name="id2648180"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.posix_extended_syntax">POSIX
+<a name="id504609"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.posix_extended_syntax">POSIX
         Extended Syntax</a>
       </h4>
 <p>
@@ -57,8 +56,8 @@
       </p>
 <pre class="programlisting">.[{()\*+?|^$</pre>
 <a name="boost_regex.syntax.basic_extended.wildcard_"></a><h5>
-<a name="id2648215"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.wildcard_">Wildcard:</a>
+<a name="id504649"></a>
+ Wildcard:
       </h5>
 <p>
         The single character '.' when used outside of a character set will match
@@ -75,8 +74,8 @@
         </li>
 </ul></div>
 <a name="boost_regex.syntax.basic_extended.anchors_"></a><h5>
-<a name="id2648276"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.anchors_">Anchors:</a>
+<a name="id504717"></a>
+ Anchors:
       </h5>
 <p>
         A '^' character shall match the start of a line when used as the first character
@@ -87,8 +86,8 @@
         of an expression, or the last character of a sub-expression.
       </p>
 <a name="boost_regex.syntax.basic_extended.marked_sub_expressions_"></a><h5>
-<a name="id2648309"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.marked_sub_expressions_">Marked
+<a name="id504752"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.marked_sub_expressions_">Marked
         sub-expressions:</a>
       </h5>
 <p>
@@ -99,8 +98,8 @@
         to by a back-reference.
       </p>
 <a name="boost_regex.syntax.basic_extended.repeats_"></a><h5>
-<a name="id2648360"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.repeats_">Repeats:</a>
+<a name="id504809"></a>
+ Repeats:
       </h5>
 <p>
         Any atom (a single character, a marked sub-expression, or a character class)
@@ -165,31 +164,28 @@
 <p>
         Will match either of:
       </p>
-<pre class="programlisting">
-<span class="identifier">aa</span>
+<pre class="programlisting"><span class="identifier">aa</span>
 <span class="identifier">aaa</span>
 </pre>
 <p>
         But neither of:
       </p>
-<pre class="programlisting">
-<span class="identifier">a</span>
+<pre class="programlisting"><span class="identifier">a</span>
 <span class="identifier">aaaa</span>
 </pre>
 <p>
         It is an error to use a repeat operator, if the preceding construct can not
         be repeated, for example:
       </p>
-<pre class="programlisting">
-<span class="identifier">a</span><span class="special">(*)</span>
+<pre class="programlisting"><span class="identifier">a</span><span class="special">(*)</span>
 </pre>
 <p>
         Will raise an error, as there is nothing for the <code class="computeroutput"><span class="special">*</span></code>
         operator to be applied to.
       </p>
 <a name="boost_regex.syntax.basic_extended.back_references_"></a><h5>
-<a name="id2648772"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.back_references_">Back references:</a>
+<a name="id505256"></a>
+ Back references:
       </h5>
 <p>
         An escape character followed by a digit <span class="emphasis"><em>n</em></span>, where <span class="emphasis"><em>n</em></span>
@@ -200,14 +196,12 @@
 <p>
         Will match the string:
       </p>
-<pre class="programlisting">
-<span class="identifier">aaabbaaa</span>
+<pre class="programlisting"><span class="identifier">aaabbaaa</span>
 </pre>
 <p>
         But not the string:
       </p>
-<pre class="programlisting">
-<span class="identifier">aaabba</span>
+<pre class="programlisting"><span class="identifier">aaabba</span>
 </pre>
 <div class="caution"><table border="0" summary="Caution">
 <tr>
@@ -220,8 +214,8 @@
         </p></td></tr>
 </table></div>
 <a name="boost_regex.syntax.basic_extended.alternation"></a><h5>
-<a name="id2648861"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.alternation">Alternation</a>
+<a name="id505351"></a>
+ Alternation
       </h5>
 <p>
         The <code class="computeroutput"><span class="special">|</span></code> operator will match either
@@ -233,8 +227,8 @@
         will match either of "abd" or "abef".
       </p>
 <a name="boost_regex.syntax.basic_extended.character_sets_"></a><h5>
-<a name="id2648955"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.character_sets_">Character
+<a name="id505454"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.character_sets_">Character
         sets:</a>
       </h5>
 <p>
@@ -246,8 +240,8 @@
         A bracket expression may contain any combination of the following:
       </p>
 <a name="boost_regex.syntax.basic_extended.single_characters_"></a><h6>
-<a name="id2648987"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.single_characters_">Single
+<a name="id505490"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.single_characters_">Single
         characters:</a>
       </h6>
 <p>
@@ -255,8 +249,8 @@
         or 'c'.
       </p>
 <a name="boost_regex.syntax.basic_extended.character_ranges_"></a><h6>
-<a name="id2649034"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.character_ranges_">Character
+<a name="id505541"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.character_ranges_">Character
         ranges:</a>
       </h6>
 <p>
@@ -266,13 +260,13 @@
         within the range <span class="emphasis"><em>y</em></span> to <span class="emphasis"><em>z</em></span>, if it
         collates within that range; this results in locale specific behavior . This
         behavior can be turned off by unsetting the <code class="computeroutput"><span class="identifier">collate</span></code>
- <a class="link" href="../ref/syntax_option_type.html" title="syntax_option_type">option flag</a> - in
+ option flag - in
         which case whether a character appears within a range is determined by comparing
         the code points of the characters only.
       </p>
 <a name="boost_regex.syntax.basic_extended.negation_"></a><h6>
-<a name="id2649123"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.negation_">Negation:</a>
+<a name="id505642"></a>
+ Negation:
       </h6>
 <p>
         If the bracket-expression begins with the ^ character, then it matches the
@@ -280,18 +274,18 @@
         range <code class="computeroutput"><span class="identifier">a</span><span class="special">-</span><span class="identifier">c</span></code>.
       </p>
 <a name="boost_regex.syntax.basic_extended.character_classes_"></a><h6>
-<a name="id2649198"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.character_classes_">Character
+<a name="id505724"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.character_classes_">Character
         classes:</a>
       </h6>
 <p>
         An expression of the form <code class="computeroutput"><span class="special">[[:</span><span class="identifier">name</span><span class="special">:]]</span></code>
         matches the named character class "name", for example <code class="computeroutput"><span class="special">[[:</span><span class="identifier">lower</span><span class="special">:]]</span></code> matches any lower case character. See
- <a class="link" href="character_classes.html" title="Character Class Names">character class names</a>.
+ character class names.
       </p>
 <a name="boost_regex.syntax.basic_extended.collating_elements_"></a><h6>
-<a name="id2649273"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.collating_elements_">Collating
+<a name="id505806"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.collating_elements_">Collating
         Elements:</a>
       </h6>
 <p>
@@ -310,24 +304,23 @@
         match either one of the characters 'abc^'.
       </p>
 <p>
- As an extension, a collating element may also be specified via its <a class="link" href="collating_names.html" title="Collating Names">symbolic name</a>, for example:
+ As an extension, a collating element may also be specified via its symbolic name, for example:
       </p>
-<pre class="programlisting">
-<span class="special">[[.</span><span class="identifier">NUL</span><span class="special">.]]</span>
+<pre class="programlisting"><span class="special">[[.</span><span class="identifier">NUL</span><span class="special">.]]</span>
 </pre>
 <p>
         matches a NUL character.
       </p>
 <a name="boost_regex.syntax.basic_extended.equivalence_classes_"></a><h6>
-<a name="id2649421"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.equivalence_classes_">Equivalence
+<a name="id505968"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.equivalence_classes_">Equivalence
         classes:</a>
       </h6>
 <p>
         An expression of the form <code class="computeroutput"><span class="special">[[=</span><span class="identifier">col</span><span class="special">=]]</span></code>,
         matches any character or collating element whose primary sort key is the
         same as that for collating element <span class="emphasis"><em>col</em></span>, as with colating
- elements the name <span class="emphasis"><em>col</em></span> may be a <a class="link" href="collating_names.html" title="Collating Names">symbolic
+ elements the name <span class="emphasis"><em>col</em></span> may be a <a href="collating_names.html" title="Collating Names">symbolic
         name</a>. A primary sort key is one that ignores case, accentation, or
         locale-specific tailorings; so for example <code class="computeroutput"><span class="special">[[=</span><span class="identifier">a</span><span class="special">=]]</span></code> matches
         any of the characters: a, À, Á, Â, Ã, Ä, Å, A, à, á, â, ã, ä and å. Unfortunately implementation
@@ -336,16 +329,16 @@
         or even all locales on one platform.
       </p>
 <a name="boost_regex.syntax.basic_extended.combinations_"></a><h6>
-<a name="id2649518"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.combinations_">Combinations:</a>
+<a name="id506072"></a>
+ Combinations:
       </h6>
 <p>
         All of the above can be combined in one character set declaration, for example:
         <code class="computeroutput"><span class="special">[[:</span><span class="identifier">digit</span><span class="special">:]</span><span class="identifier">a</span><span class="special">-</span><span class="identifier">c</span><span class="special">[.</span><span class="identifier">NUL</span><span class="special">.]]</span></code>.
       </p>
 <a name="boost_regex.syntax.basic_extended.escapes"></a><h5>
-<a name="id2649589"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.escapes">Escapes</a>
+<a name="id506152"></a>
+ Escapes
       </h5>
 <p>
         The POSIX standard defines no escape sequences for POSIX-Extended regular
@@ -370,8 +363,8 @@
         extensions are also supported by Boost.Regex:
       </p>
 <a name="boost_regex.syntax.basic_extended.escapes_matching_a_specific_character"></a><h6>
-<a name="id2649652"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.escapes_matching_a_specific_character">Escapes
+<a name="id506222"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.escapes_matching_a_specific_character">Escapes
         matching a specific character</a>
       </h6>
 <p>
@@ -559,8 +552,8 @@
 </tbody>
 </table></div>
 <a name="boost_regex.syntax.basic_extended._quot_single_character_quot__character_classes_"></a><h6>
-<a name="id2649964"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended._quot_single_character_quot__character_classes_">"Single
+<a name="id506569"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended._quot_single_character_quot__character_classes_">"Single
         character" character classes:</a>
       </h6>
 <p>
@@ -713,8 +706,8 @@
 </tbody>
 </table></div>
 <a name="boost_regex.syntax.basic_extended.character_properties"></a><h6>
-<a name="id2650537"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.character_properties">Character
+<a name="id507201"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.character_properties">Character
         Properties</a>
       </h6>
 <p>
@@ -820,8 +813,8 @@
         matches any "digit" character, as does <code class="computeroutput"><span class="special">\</span><span class="identifier">p</span><span class="special">{</span><span class="identifier">digit</span><span class="special">}</span></code>.
       </p>
 <a name="boost_regex.syntax.basic_extended.word_boundaries"></a><h6>
-<a name="id2650903"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.word_boundaries">Word Boundaries</a>
+<a name="id507602"></a>
+ Word Boundaries
       </h6>
 <p>
         The following escape sequences match the boundaries of words:
@@ -895,8 +888,8 @@
 </tbody>
 </table></div>
 <a name="boost_regex.syntax.basic_extended.buffer_boundaries"></a><h6>
-<a name="id2651077"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.buffer_boundaries">Buffer
+<a name="id507795"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.buffer_boundaries">Buffer
         boundaries</a>
       </h6>
 <p>
@@ -986,8 +979,8 @@
 </tbody>
 </table></div>
 <a name="boost_regex.syntax.basic_extended.continuation_escape"></a><h6>
-<a name="id2651291"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.continuation_escape">Continuation
+<a name="id508030"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.continuation_escape">Continuation
         Escape</a>
       </h6>
 <p>
@@ -998,8 +991,8 @@
         match to start where the last one ended.
       </p>
 <a name="boost_regex.syntax.basic_extended.quoting_escape"></a><h6>
-<a name="id2651337"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.quoting_escape">Quoting
+<a name="id508079"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.quoting_escape">Quoting
         escape</a>
       </h6>
 <p>
@@ -1008,13 +1001,12 @@
         as literals, until either the end of the regular expression or <code class="computeroutput"><span class="special">\</span><span class="identifier">E</span></code> is found.
         For example the expression: <code class="computeroutput"><span class="special">\</span><span class="identifier">Q</span><span class="special">\*+\</span><span class="identifier">Ea</span><span class="special">+</span></code> would match either of:
       </p>
-<pre class="programlisting">
-<span class="special">\*+</span><span class="identifier">a</span>
+<pre class="programlisting"><span class="special">\*+</span><span class="identifier">a</span>
 <span class="special">\*+</span><span class="identifier">aaa</span>
 </pre>
 <a name="boost_regex.syntax.basic_extended.unicode_escapes"></a><h6>
-<a name="id2651450"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.unicode_escapes">Unicode
+<a name="id508203"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.unicode_escapes">Unicode
         escapes</a>
       </h6>
 <div class="informaltable"><table class="table">
@@ -1064,8 +1056,8 @@
 </tbody>
 </table></div>
 <a name="boost_regex.syntax.basic_extended.any_other_escape"></a><h6>
-<a name="id2651570"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.any_other_escape">Any other
+<a name="id508336"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.any_other_escape">Any other
         escape</a>
       </h6>
 <p>
@@ -1073,8 +1065,8 @@
         \@ matches a literal '@'.
       </p>
 <a name="boost_regex.syntax.basic_extended.operator_precedence"></a><h5>
-<a name="id2651597"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.operator_precedence">Operator
+<a name="id508366"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.operator_precedence">Operator
         precedence</a>
       </h5>
 <p>
@@ -1109,32 +1101,31 @@
 </li>
 </ol></div>
 <a name="boost_regex.syntax.basic_extended.what_gets_matched"></a><h5>
-<a name="id2651770"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.what_gets_matched">What
+<a name="id508555"></a>
+ <a href="basic_extended.html#boost_regex.syntax.basic_extended.what_gets_matched">What
         Gets Matched</a>
       </h5>
 <p>
         When there is more that one way to match a regular expression, the "best"
- possible match is obtained using the <a class="link" href="leftmost_longest_rule.html" title="The Leftmost Longest Rule">leftmost-longest
+ possible match is obtained using the <a href="leftmost_longest_rule.html" title="The Leftmost Longest Rule">leftmost-longest
         rule</a>.
       </p>
 <a name="boost_regex.syntax.basic_extended.variations"></a><h4>
-<a name="id2651805"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.variations">Variations</a>
+<a name="id508595"></a>
+ Variations
       </h4>
 <a name="boost_regex.syntax.basic_extended.egrep"></a><h5>
-<a name="id2651826"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.egrep">Egrep</a>
+<a name="id508618"></a>
+ Egrep
       </h5>
 <p>
- When an expression is compiled with the <a class="link" href="../ref/syntax_option_type.html" title="syntax_option_type">flag
+ When an expression is compiled with the <a href="../ref/syntax_option_type.html" title="syntax_option_type">flag
         <code class="computeroutput"><span class="identifier">egrep</span></code></a> set, then the
- expression is treated as a newline separated list of <a class="link" href="basic_extended.html#boost_regex.posix_extended_syntax">POSIX-Extended
+ expression is treated as a newline separated list of <a href="basic_extended.html#boost_regex.posix_extended_syntax">POSIX-Extended
         expressions</a>, a match is found if any of the expressions in the list
         match, for example:
       </p>
-<pre class="programlisting">
-<span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e</span><span class="special">(</span><span class="string">"abc\ndef"</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">egrep</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e</span><span class="special">(</span><span class="string">"abc\ndef"</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">egrep</span><span class="special">);</span>
 </pre>
 <p>
         will match either of the POSIX-Basic expressions "abc" or "def".
@@ -1145,11 +1136,11 @@
         used with the -E option.
       </p>
 <a name="boost_regex.syntax.basic_extended.awk"></a><h5>
-<a name="id2651971"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.awk">awk</a>
+<a name="id508776"></a>
+ awk
       </h5>
 <p>
- In addition to the <a class="link" href="basic_extended.html#boost_regex.posix_extended_syntax">POSIX-Extended
+ In addition to the <a href="basic_extended.html#boost_regex.posix_extended_syntax">POSIX-Extended
         features</a> the escape character is special inside a character class
         declaration.
       </p>
@@ -1159,21 +1150,21 @@
         these by default anyway.
       </p>
 <a name="boost_regex.syntax.basic_extended.options"></a><h4>
-<a name="id2652012"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.options">Options</a>
+<a name="id508822"></a>
+ Options
       </h4>
 <p>
- There are a <a class="link" href="../ref/syntax_option_type/syntax_option_type_extended.html" title="Options for POSIX Extended Regular Expressions">variety
+ There are a <a href="../ref/syntax_option_type/syntax_option_type_extended.html" title="Options for POSIX Extended Regular Expressions">variety
         of flags</a> that may be combined with the <code class="computeroutput"><span class="identifier">extended</span></code>
         and <code class="computeroutput"><span class="identifier">egrep</span></code> options when constructing
- the regular expression, in particular note that the <a class="link" href="../ref/syntax_option_type/syntax_option_type_extended.html" title="Options for POSIX Extended Regular Expressions"><code class="computeroutput"><span class="identifier">newline_alt</span></code></a> option alters the syntax,
- while the <a class="link" href="../ref/syntax_option_type/syntax_option_type_extended.html" title="Options for POSIX Extended Regular Expressions"><code class="computeroutput"><span class="identifier">collate</span></code>, <code class="computeroutput"><span class="identifier">nosubs</span></code>
+ the regular expression, in particular note that the newline_alt option alters the syntax,
+ while the <a href="../ref/syntax_option_type/syntax_option_type_extended.html" title="Options for POSIX Extended Regular Expressions"><code class="computeroutput"><span class="identifier">collate</span></code>, <code class="computeroutput"><span class="identifier">nosubs</span></code>
         and <code class="computeroutput"><span class="identifier">icase</span></code> options</a>
         modify how the case and locale sensitivity are to be applied.
       </p>
 <a name="boost_regex.syntax.basic_extended.references"></a><h4>
-<a name="id2652132"></a>
- <a class="link" href="basic_extended.html#boost_regex.syntax.basic_extended.references">References</a>
+<a name="id508952"></a>
+ References
       </h4>
 <p>
         <a href="http://www.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap09.html" target="_top">IEEE

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/basic_syntax.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/basic_syntax.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/basic_syntax.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>POSIX Basic Regular Expression Syntax</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax.html" title="Regular Expression Syntax">
 <link rel="prev" href="basic_extended.html" title="POSIX Extended Regular Expression Syntax">
@@ -24,21 +24,20 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.syntax.basic_syntax"></a><a class="link" href="basic_syntax.html" title="POSIX Basic Regular Expression Syntax"> POSIX Basic Regular
+<a name="boost_regex.syntax.basic_syntax"></a><a href="basic_syntax.html" title="POSIX Basic Regular Expression Syntax"> POSIX Basic Regular
       Expression Syntax</a>
 </h3></div></div></div>
 <a name="boost_regex.syntax.basic_syntax.synopsis"></a><h4>
-<a name="id2652204"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.synopsis">Synopsis</a>
+<a name="id509034"></a>
+ Synopsis
       </h4>
 <p>
         The POSIX-Basic regular expression syntax is used by the Unix utility <code class="computeroutput"><span class="identifier">sed</span></code>, and variations are used by <code class="computeroutput"><span class="identifier">grep</span></code> and <code class="computeroutput"><span class="identifier">emacs</span></code>.
         You can construct POSIX basic regular expressions in Boost.Regex by passing
         the flag <code class="computeroutput"><span class="identifier">basic</span></code> to the regex
- constructor (see <a class="link" href="../ref/syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a>), for example:
+ constructor (see syntax_option_type), for example:
       </p>
-<pre class="programlisting">
-<span class="comment">// e1 is a case sensitive POSIX-Basic expression:
+<pre class="programlisting"><span class="comment">// e1 is a case sensitive POSIX-Basic expression:
 </span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e1</span><span class="special">(</span><span class="identifier">my_expression</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">basic</span><span class="special">);</span>
 <span class="comment">// e2 a case insensitive POSIX-Basic expression:
 </span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e2</span><span class="special">(</span><span class="identifier">my_expression</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">basic</span><span class="special">|</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">icase</span><span class="special">);</span>
@@ -46,8 +45,8 @@
 <a name="boost_regex.posix_basic"></a><p>
       </p>
 <a name="boost_regex.syntax.basic_syntax.posix_basic_syntax"></a><h4>
-<a name="id2652471"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.posix_basic_syntax">POSIX
+<a name="id509325"></a>
+ <a href="basic_syntax.html#boost_regex.syntax.basic_syntax.posix_basic_syntax">POSIX
         Basic Syntax</a>
       </h4>
 <p>
@@ -56,8 +55,8 @@
       </p>
 <pre class="programlisting">.[\*^$</pre>
 <a name="boost_regex.syntax.basic_syntax.wildcard_"></a><h5>
-<a name="id2652505"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.wildcard_">Wildcard:</a>
+<a name="id509364"></a>
+ Wildcard:
       </h5>
 <p>
         The single character '.' when used outside of a character set will match
@@ -74,8 +73,8 @@
         </li>
 </ul></div>
 <a name="boost_regex.syntax.basic_syntax.anchors_"></a><h5>
-<a name="id2652567"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.anchors_">Anchors:</a>
+<a name="id509433"></a>
+ Anchors:
       </h5>
 <p>
         A '^' character shall match the start of a line when used as the first character
@@ -86,8 +85,8 @@
         of an expression, or the last character of a sub-expression.
       </p>
 <a name="boost_regex.syntax.basic_syntax.marked_sub_expressions_"></a><h5>
-<a name="id2652601"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.marked_sub_expressions_">Marked
+<a name="id509469"></a>
+ <a href="basic_syntax.html#boost_regex.syntax.basic_syntax.marked_sub_expressions_">Marked
         sub-expressions:</a>
       </h5>
 <p>
@@ -98,8 +97,8 @@
         by a back-reference.
       </p>
 <a name="boost_regex.syntax.basic_syntax.repeats_"></a><h5>
-<a name="id2652652"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.repeats_">Repeats:</a>
+<a name="id509526"></a>
+ Repeats:
       </h5>
 <p>
         Any atom (a single character, a marked sub-expression, or a character class)
@@ -156,8 +155,8 @@
         to.
       </p>
 <a name="boost_regex.syntax.basic_syntax.back_references_"></a><h5>
-<a name="id2652877"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.back_references_">Back references:</a>
+<a name="id509770"></a>
+ Back references:
       </h5>
 <p>
         An escape character followed by a digit <span class="emphasis"><em>n</em></span>, where <span class="emphasis"><em>n</em></span>
@@ -174,8 +173,8 @@
       </p>
 <pre class="programlisting">aaabba</pre>
 <a name="boost_regex.syntax.basic_syntax.character_sets_"></a><h5>
-<a name="id2652945"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.character_sets_">Character
+<a name="id509844"></a>
+ <a href="basic_syntax.html#boost_regex.syntax.basic_syntax.character_sets_">Character
         sets:</a>
       </h5>
 <p>
@@ -187,8 +186,8 @@
         A bracket expression may contain any combination of the following:
       </p>
 <a name="boost_regex.syntax.basic_syntax.single_characters_"></a><h6>
-<a name="id2652978"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.single_characters_">Single
+<a name="id509880"></a>
+ <a href="basic_syntax.html#boost_regex.syntax.basic_syntax.single_characters_">Single
         characters:</a>
       </h6>
 <p>
@@ -196,8 +195,8 @@
         or 'c'.
       </p>
 <a name="boost_regex.syntax.basic_syntax.character_ranges_"></a><h6>
-<a name="id2653023"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.character_ranges_">Character
+<a name="id509930"></a>
+ <a href="basic_syntax.html#boost_regex.syntax.basic_syntax.character_ranges_">Character
         ranges:</a>
       </h6>
 <p>
@@ -212,8 +211,8 @@
         of the characters only.
       </p>
 <a name="boost_regex.syntax.basic_syntax.negation_"></a><h6>
-<a name="id2653104"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.negation_">Negation:</a>
+<a name="id510022"></a>
+ Negation:
       </h6>
 <p>
         If the bracket-expression begins with the ^ character, then it matches the
@@ -221,18 +220,18 @@
         range a-c.
       </p>
 <a name="boost_regex.syntax.basic_syntax.character_classes_"></a><h6>
-<a name="id2653161"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.character_classes_">Character
+<a name="id510083"></a>
+ <a href="basic_syntax.html#boost_regex.syntax.basic_syntax.character_classes_">Character
         classes:</a>
       </h6>
 <p>
         An expression of the form <code class="computeroutput"><span class="special">[[:</span><span class="identifier">name</span><span class="special">:]]</span></code>
         matches the named character class "name", for example <code class="computeroutput"><span class="special">[[:</span><span class="identifier">lower</span><span class="special">:]]</span></code> matches any lower case character. See
- <a class="link" href="character_classes.html" title="Character Class Names">character class names</a>.
+ character class names.
       </p>
 <a name="boost_regex.syntax.basic_syntax.collating_elements_"></a><h6>
-<a name="id2653236"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.collating_elements_">Collating
+<a name="id510166"></a>
+ <a href="basic_syntax.html#boost_regex.syntax.basic_syntax.collating_elements_">Collating
         Elements:</a>
       </h6>
 <p>
@@ -256,19 +255,19 @@
       </p>
 <pre class="programlisting">[[.NUL.]]</pre>
 <p>
- matches a 'NUL' character. See <a class="link" href="collating_names.html" title="Collating Names">collating
+ matches a 'NUL' character. See <a href="collating_names.html" title="Collating Names">collating
         element names</a>.
       </p>
 <a name="boost_regex.syntax.basic_syntax.equivalence_classes_"></a><h6>
-<a name="id2653370"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.equivalence_classes_">Equivalence
+<a name="id510315"></a>
+ <a href="basic_syntax.html#boost_regex.syntax.basic_syntax.equivalence_classes_">Equivalence
         classes:</a>
       </h6>
 <p>
         An expression of theform <code class="computeroutput"><span class="special">[[=</span><span class="identifier">col</span><span class="special">=]]</span></code>,
         matches any character or collating element whose primary sort key is the
         same as that for collating element <span class="emphasis"><em>col</em></span>, as with collating
- elements the name <span class="emphasis"><em>col</em></span> may be a <a class="link" href="collating_names.html" title="Collating Names">collating
+ elements the name <span class="emphasis"><em>col</em></span> may be a <a href="collating_names.html" title="Collating Names">collating
         symbolic name</a>. A primary sort key is one that ignores case, accentation,
         or locale-specific tailorings; so for example <code class="computeroutput"><span class="special">[[=</span><span class="identifier">a</span><span class="special">=]]</span></code> matches
         any of the characters: a, À, Á, Â, Ã, Ä, Å, A, à, á, â, ã, ä and å. Unfortunately implementation
@@ -277,16 +276,16 @@
         or even all locales on one platform.
       </p>
 <a name="boost_regex.syntax.basic_syntax.combinations_"></a><h6>
-<a name="id2653467"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.combinations_">Combinations:</a>
+<a name="id510419"></a>
+ Combinations:
       </h6>
 <p>
         All of the above can be combined in one character set declaration, for example:
         <code class="computeroutput"><span class="special">[[:</span><span class="identifier">digit</span><span class="special">:]</span><span class="identifier">a</span><span class="special">-</span><span class="identifier">c</span><span class="special">[.</span><span class="identifier">NUL</span><span class="special">.]].</span></code>
       </p>
 <a name="boost_regex.syntax.basic_syntax.escapes"></a><h5>
-<a name="id2653538"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.escapes">Escapes</a>
+<a name="id510497"></a>
+ Escapes
       </h5>
 <p>
         With the exception of the escape sequences \{, \}, \(, and \), which are
@@ -300,46 +299,45 @@
         will match either a literal '\' or a '^'.
       </p>
 <a name="boost_regex.syntax.basic_syntax.what_gets_matched"></a><h4>
-<a name="id2653590"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.what_gets_matched">What Gets
+<a name="id510554"></a>
+ <a href="basic_syntax.html#boost_regex.syntax.basic_syntax.what_gets_matched">What Gets
         Matched</a>
       </h4>
 <p>
         When there is more that one way to match a regular expression, the "best"
- possible match is obtained using the <a class="link" href="leftmost_longest_rule.html" title="The Leftmost Longest Rule">leftmost-longest
+ possible match is obtained using the <a href="leftmost_longest_rule.html" title="The Leftmost Longest Rule">leftmost-longest
         rule</a>.
       </p>
 <a name="boost_regex.syntax.basic_syntax.variations"></a><h4>
-<a name="id2653624"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.variations">Variations</a>
+<a name="id510594"></a>
+ Variations
       </h4>
 <a name="boost_regex.grep_syntax"></a><p>
       </p>
 <a name="boost_regex.syntax.basic_syntax.grep"></a><h5>
-<a name="id2653655"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.grep">Grep</a>
+<a name="id510626"></a>
+ Grep
       </h5>
 <p>
         When an expression is compiled with the flag <code class="computeroutput"><span class="identifier">grep</span></code>
- set, then the expression is treated as a newline separated list of <a class="link" href="basic_syntax.html#boost_regex.posix_basic">POSIX-Basic expressions</a>, a match
+ set, then the expression is treated as a newline separated list of POSIX-Basic expressions, a match
         is found if any of the expressions in the list match, for example:
       </p>
-<pre class="programlisting">
-<span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e</span><span class="special">(</span><span class="string">"abc\ndef"</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">grep</span><span class="special">);</span>
+<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e</span><span class="special">(</span><span class="string">"abc\ndef"</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">grep</span><span class="special">);</span>
 </pre>
 <p>
- will match either of the <a class="link" href="basic_syntax.html#boost_regex.posix_basic">POSIX-Basic
+ will match either of the <a href="basic_syntax.html#boost_regex.posix_basic">POSIX-Basic
         expressions</a> "abc" or "def".
       </p>
 <p>
         As its name suggests, this behavior is consistent with the Unix utility grep.
       </p>
 <a name="boost_regex.syntax.basic_syntax.emacs"></a><h5>
-<a name="id2653787"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.emacs">emacs</a>
+<a name="id510770"></a>
+ emacs
       </h5>
 <p>
- In addition to the <a class="link" href="basic_syntax.html#boost_regex.posix_basic">POSIX-Basic features</a>
+ In addition to the POSIX-Basic features
         the following characters are also special:
       </p>
 <div class="informaltable"><table class="table">
@@ -608,29 +606,29 @@
 </table></div>
 <p>
         Finally, you should note that emacs style regular expressions are matched
- according to the <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.what_gets_matched">Perl
+ according to the <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.what_gets_matched">Perl
         "depth first search" rules</a>. Emacs expressions are matched
         this way because they contain Perl-like extensions, that do not interact
- well with the <a class="link" href="leftmost_longest_rule.html" title="The Leftmost Longest Rule">POSIX-style
+ well with the <a href="leftmost_longest_rule.html" title="The Leftmost Longest Rule">POSIX-style
         leftmost-longest rule</a>.
       </p>
 <a name="boost_regex.syntax.basic_syntax.options"></a><h4>
-<a name="id2654230"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.options">Options</a>
+<a name="id511266"></a>
+ Options
       </h4>
 <p>
- There are a <a class="link" href="../ref/syntax_option_type/syntax_option_type_basic.html" title="Options for POSIX Basic Regular Expressions">variety
+ There are a <a href="../ref/syntax_option_type/syntax_option_type_basic.html" title="Options for POSIX Basic Regular Expressions">variety
         of flags</a> that may be combined with the <code class="computeroutput"><span class="identifier">basic</span></code>
         and <code class="computeroutput"><span class="identifier">grep</span></code> options when constructing
- the regular expression, in particular note that the <a class="link" href="../ref/syntax_option_type/syntax_option_type_basic.html" title="Options for POSIX Basic Regular Expressions"><code class="computeroutput"><span class="identifier">newline_alt</span></code>, <code class="computeroutput"><span class="identifier">no_char_classes</span></code>,
+ the regular expression, in particular note that the <a href="../ref/syntax_option_type/syntax_option_type_basic.html" title="Options for POSIX Basic Regular Expressions"><code class="computeroutput"><span class="identifier">newline_alt</span></code>, <code class="computeroutput"><span class="identifier">no_char_classes</span></code>,
         <code class="computeroutput"><span class="identifier">no</span><span class="special">-</span><span class="identifier">intervals</span></code>, <code class="computeroutput"><span class="identifier">bk_plus_qm</span></code>
         and <code class="computeroutput"><span class="identifier">bk_plus_vbar</span></code></a> options
- all alter the syntax, while the <a class="link" href="../ref/syntax_option_type/syntax_option_type_basic.html" title="Options for POSIX Basic Regular Expressions"><code class="computeroutput"><span class="identifier">collate</span></code> and <code class="computeroutput"><span class="identifier">icase</span></code>
+ all alter the syntax, while the <a href="../ref/syntax_option_type/syntax_option_type_basic.html" title="Options for POSIX Basic Regular Expressions"><code class="computeroutput"><span class="identifier">collate</span></code> and <code class="computeroutput"><span class="identifier">icase</span></code>
         options</a> modify how the case and locale sensitivity are to be applied.
       </p>
 <a name="boost_regex.syntax.basic_syntax.references"></a><h4>
-<a name="id2654387"></a>
- <a class="link" href="basic_syntax.html#boost_regex.syntax.basic_syntax.references">References</a>
+<a name="id511438"></a>
+ References
       </h4>
 <p>
         <a href="http://www.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap09.html" target="_top">IEEE

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Character Class Names</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax.html" title="Regular Expression Syntax">
 <link rel="prev" href="basic_syntax.html" title="POSIX Basic Regular Expression Syntax">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.syntax.character_classes"></a><a class="link" href="character_classes.html" title="Character Class Names"> Character Class
+<a name="boost_regex.syntax.character_classes"></a><a href="character_classes.html" title="Character Class Names"> Character Class
       Names</a>
 </h3></div></div></div>
 <div class="toc"><dl>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes/optional_char_class_names.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes/optional_char_class_names.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes/optional_char_class_names.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Character classes that are supported by Unicode Regular Expressions</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../character_classes.html" title="Character Class Names">
 <link rel="prev" href="std_char_clases.html" title="Character Classes that are Always Supported">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.syntax.character_classes.optional_char_class_names"></a><a class="link" href="optional_char_class_names.html" title="Character classes that are supported by Unicode Regular Expressions">
+<a name="boost_regex.syntax.character_classes.optional_char_class_names"></a><a href="optional_char_class_names.html" title="Character classes that are supported by Unicode Regular Expressions">
         Character classes that are supported by Unicode Regular Expressions</a>
 </h4></div></div></div>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes/std_char_clases.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes/std_char_clases.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/character_classes/std_char_clases.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Character Classes that are Always Supported</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../character_classes.html" title="Character Class Names">
 <link rel="prev" href="../character_classes.html" title="Character Class Names">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.syntax.character_classes.std_char_clases"></a><a class="link" href="std_char_clases.html" title="Character Classes that are Always Supported">
+<a name="boost_regex.syntax.character_classes.std_char_clases"></a><a href="std_char_clases.html" title="Character Classes that are Always Supported">
         Character Classes that are Always Supported</a>
 </h4></div></div></div>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Collating Names</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax.html" title="Regular Expression Syntax">
 <link rel="prev" href="character_classes/optional_char_class_names.html" title="Character classes that are supported by Unicode Regular Expressions">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.syntax.collating_names"></a><a class="link" href="collating_names.html" title="Collating Names"> Collating Names</a>
+<a name="boost_regex.syntax.collating_names"></a> Collating Names
 </h3></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"> Digraphs</span></dt>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/digraphs.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/digraphs.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/digraphs.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Digraphs</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../collating_names.html" title="Collating Names">
 <link rel="prev" href="../collating_names.html" title="Collating Names">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.syntax.collating_names.digraphs"></a><a class="link" href="digraphs.html" title="Digraphs"> Digraphs</a>
+<a name="boost_regex.syntax.collating_names.digraphs"></a> Digraphs
 </h4></div></div></div>
 <p>
           The following are treated as valid digraphs when used as a collating name:

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/named_unicode.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/named_unicode.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/named_unicode.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Named Unicode Characters</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../collating_names.html" title="Collating Names">
 <link rel="prev" href="posix_symbolic_names.html" title="POSIX Symbolic Names">
@@ -24,11 +24,11 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.syntax.collating_names.named_unicode"></a><a class="link" href="named_unicode.html" title="Named Unicode Characters">
+<a name="boost_regex.syntax.collating_names.named_unicode"></a><a href="named_unicode.html" title="Named Unicode Characters">
         Named Unicode Characters</a>
 </h4></div></div></div>
 <p>
- When using <a class="link" href="../../unicode.html" title="Unicode and Boost.Regex">Unicode aware regular expressions</a>
+ When using Unicode aware regular expressions
           (with the <code class="computeroutput"><span class="identifier">u32regex</span></code> type),
           all the normal symbolic names for Unicode characters (those given in Unidata.txt)
           are recognised. So for example:

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/posix_symbolic_names.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/posix_symbolic_names.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/collating_names/posix_symbolic_names.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>POSIX Symbolic Names</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Boost.Regex">
 <link rel="up" href="../collating_names.html" title="Collating Names">
 <link rel="prev" href="digraphs.html" title="Digraphs">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_regex.syntax.collating_names.posix_symbolic_names"></a><a class="link" href="posix_symbolic_names.html" title="POSIX Symbolic Names">
+<a name="boost_regex.syntax.collating_names.posix_symbolic_names"></a><a href="posix_symbolic_names.html" title="POSIX Symbolic Names">
         POSIX Symbolic Names</a>
 </h4></div></div></div>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/leftmost_longest_rule.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/leftmost_longest_rule.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/leftmost_longest_rule.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>The Leftmost Longest Rule</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax.html" title="Regular Expression Syntax">
 <link rel="prev" href="collating_names/named_unicode.html" title="Named Unicode Characters">
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.syntax.leftmost_longest_rule"></a><a class="link" href="leftmost_longest_rule.html" title="The Leftmost Longest Rule"> The Leftmost
+<a name="boost_regex.syntax.leftmost_longest_rule"></a><a href="leftmost_longest_rule.html" title="The Leftmost Longest Rule"> The Leftmost
       Longest Rule</a>
 </h3></div></div></div>
 <p>

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/perl_syntax.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/perl_syntax.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/syntax/perl_syntax.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Perl Regular Expression Syntax</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Boost.Regex">
 <link rel="up" href="../syntax.html" title="Regular Expression Syntax">
 <link rel="prev" href="../syntax.html" title="Regular Expression Syntax">
@@ -24,30 +24,29 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_regex.syntax.perl_syntax"></a><a class="link" href="perl_syntax.html" title="Perl Regular Expression Syntax"> Perl Regular Expression
+<a name="boost_regex.syntax.perl_syntax"></a><a href="perl_syntax.html" title="Perl Regular Expression Syntax"> Perl Regular Expression
       Syntax</a>
 </h3></div></div></div>
 <a name="boost_regex.syntax.perl_syntax.synopsis"></a><h4>
-<a name="id2642330"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.synopsis">Synopsis</a>
+<a name="id497764"></a>
+ Synopsis
       </h4>
 <p>
         The Perl regular expression syntax is based on that used by the programming
         language Perl . Perl regular expressions are the default behavior in Boost.Regex
         or you can pass the flag <code class="computeroutput"><span class="identifier">perl</span></code>
- to the <a class="link" href="../ref/basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>
+ to the basic_regex
         constructor, for example:
       </p>
-<pre class="programlisting">
-<span class="comment">// e1 is a case sensitive Perl regular expression:
+<pre class="programlisting"><span class="comment">// e1 is a case sensitive Perl regular expression:
 </span><span class="comment">// since Perl is the default option there's no need to explicitly specify the syntax used here:
 </span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e1</span><span class="special">(</span><span class="identifier">my_expression</span><span class="special">);</span>
 <span class="comment">// e2 a case insensitive Perl regular expression:
 </span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span> <span class="identifier">e2</span><span class="special">(</span><span class="identifier">my_expression</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">perl</span><span class="special">|</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex</span><span class="special">::</span><span class="identifier">icase</span><span class="special">);</span>
 </pre>
 <a name="boost_regex.syntax.perl_syntax.perl_regular_expression_syntax"></a><h4>
-<a name="id2642512"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.perl_regular_expression_syntax">Perl
+<a name="id497985"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.perl_regular_expression_syntax">Perl
         Regular Expression Syntax</a>
       </h4>
 <p>
@@ -56,8 +55,8 @@
       </p>
 <pre class="programlisting">.[{()\*+?|^$</pre>
 <a name="boost_regex.syntax.perl_syntax.wildcard"></a><h5>
-<a name="id2642543"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.wildcard">Wildcard</a>
+<a name="id498023"></a>
+ Wildcard
       </h5>
 <p>
         The single character '.' when used outside of a character set will match
@@ -65,19 +64,19 @@
       </p>
 <div class="itemizedlist"><ul type="disc">
 <li>
- The NULL character when the <a class="link" href="../ref/match_flag_type.html" title="match_flag_type">flag
- <code class="computeroutput"><span class="identifier">match_no_dot_null</span></code></a>
+ The NULL character when the <a href="../ref/match_flag_type.html" title="match_flag_type">flag
+ <code class="computeroutput"><span class="identifier">match_not_dot_null</span></code></a>
           is passed to the matching algorithms.
         </li>
 <li>
- The newline character when the <a class="link" href="../ref/match_flag_type.html" title="match_flag_type">flag
+ The newline character when the <a href="../ref/match_flag_type.html" title="match_flag_type">flag
           <code class="computeroutput"><span class="identifier">match_not_dot_newline</span></code></a>
           is passed to the matching algorithms.
         </li>
 </ul></div>
 <a name="boost_regex.syntax.perl_syntax.anchors"></a><h5>
-<a name="id2642608"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.anchors">Anchors</a>
+<a name="id498104"></a>
+ Anchors
       </h5>
 <p>
         A '^' character shall match the start of a line.
@@ -86,8 +85,8 @@
         A '$' character shall match the end of a line.
       </p>
 <a name="boost_regex.syntax.perl_syntax.marked_sub_expressions"></a><h5>
-<a name="id2642634"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.marked_sub_expressions">Marked
+<a name="id498138"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.marked_sub_expressions">Marked
         sub-expressions</a>
       </h5>
 <p>
@@ -98,8 +97,8 @@
         to by a back-reference.
       </p>
 <a name="boost_regex.syntax.perl_syntax.non_marking_grouping"></a><h5>
-<a name="id2642680"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.non_marking_grouping">Non-marking
+<a name="id498193"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.non_marking_grouping">Non-marking
         grouping</a>
       </h5>
 <p>
@@ -112,8 +111,8 @@
         out any separate sub-expressions.
       </p>
 <a name="boost_regex.syntax.perl_syntax.repeats"></a><h5>
-<a name="id2642751"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.repeats">Repeats</a>
+<a name="id498282"></a>
+ Repeats
       </h5>
 <p>
         Any atom (a single character, a marked sub-expression, or a character class)
@@ -126,8 +125,7 @@
         preceding atom zero or more times, for example the expression <code class="computeroutput"><span class="identifier">a</span><span class="special">*</span><span class="identifier">b</span></code>
         will match any of the following:
       </p>
-<pre class="programlisting">
-<span class="identifier">b</span>
+<pre class="programlisting"><span class="identifier">b</span>
 <span class="identifier">ab</span>
 <span class="identifier">aaaaaaaab</span>
 </pre>
@@ -136,30 +134,26 @@
         preceding atom one or more times, for example the expression <code class="computeroutput"><span class="identifier">a</span><span class="special">+</span><span class="identifier">b</span></code>
         will match any of the following:
       </p>
-<pre class="programlisting">
-<span class="identifier">ab</span>
+<pre class="programlisting"><span class="identifier">ab</span>
 <span class="identifier">aaaaaaaab</span>
 </pre>
 <p>
         But will not match:
       </p>
-<pre class="programlisting">
-<span class="identifier">b</span>
+<pre class="programlisting"><span class="identifier">b</span>
 </pre>
 <p>
         The <code class="computeroutput"><span class="special">?</span></code> operator will match the
         preceding atom zero or one times, for example the expression ca?b will match
         any of the following:
       </p>
-<pre class="programlisting">
-<span class="identifier">cb</span>
+<pre class="programlisting"><span class="identifier">cb</span>
 <span class="identifier">cab</span>
 </pre>
 <p>
         But will not match:
       </p>
-<pre class="programlisting">
-<span class="identifier">caab</span>
+<pre class="programlisting"><span class="identifier">caab</span>
 </pre>
 <p>
         An atom can also be repeated with a bounded repeat:
@@ -183,31 +177,28 @@
 <p>
         Will match either of:
       </p>
-<pre class="programlisting">
-<span class="identifier">aa</span>
+<pre class="programlisting"><span class="identifier">aa</span>
 <span class="identifier">aaa</span>
 </pre>
 <p>
         But neither of:
       </p>
-<pre class="programlisting">
-<span class="identifier">a</span>
+<pre class="programlisting"><span class="identifier">a</span>
 <span class="identifier">aaaa</span>
 </pre>
 <p>
         It is an error to use a repeat operator, if the preceding construct can not
         be repeated, for example:
       </p>
-<pre class="programlisting">
-<span class="identifier">a</span><span class="special">(*)</span>
+<pre class="programlisting"><span class="identifier">a</span><span class="special">(*)</span>
 </pre>
 <p>
         Will raise an error, as there is nothing for the <code class="computeroutput"><span class="special">*</span></code>
         operator to be applied to.
       </p>
 <a name="boost_regex.syntax.perl_syntax.non_greedy_repeats"></a><h5>
-<a name="id2643149"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.non_greedy_repeats">Non greedy
+<a name="id498755"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.non_greedy_repeats">Non greedy
         repeats</a>
       </h5>
 <p>
@@ -237,8 +228,8 @@
         input as possible.
       </p>
 <a name="boost_regex.syntax.perl_syntax.back_references"></a><h5>
-<a name="id2643270"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.back_references">Back references</a>
+<a name="id498900"></a>
+ Back references
       </h5>
 <p>
         An escape character followed by a digit <span class="emphasis"><em>n</em></span>, where <span class="emphasis"><em>n</em></span>
@@ -249,18 +240,16 @@
 <p>
         Will match the string:
       </p>
-<pre class="programlisting">
-<span class="identifier">aaabbaaa</span>
+<pre class="programlisting"><span class="identifier">aaabbaaa</span>
 </pre>
 <p>
         But not the string:
       </p>
-<pre class="programlisting">
-<span class="identifier">aaabba</span>
+<pre class="programlisting"><span class="identifier">aaabba</span>
 </pre>
 <a name="boost_regex.syntax.perl_syntax.alternation"></a><h5>
-<a name="id2643340"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.alternation">Alternation</a>
+<a name="id498983"></a>
+ Alternation
       </h5>
 <p>
         The <code class="computeroutput"><span class="special">|</span></code> operator will match either
@@ -288,8 +277,8 @@
         <code class="computeroutput"><span class="special">(?:</span><span class="identifier">abc</span><span class="special">)??</span></code> has exactly the same effect.
       </p>
 <a name="boost_regex.syntax.perl_syntax.character_sets"></a><h5>
-<a name="id2643496"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.character_sets">Character sets</a>
+<a name="id499172"></a>
+ Character sets
       </h5>
 <p>
         A character set is a bracket-expression starting with <code class="computeroutput"><span class="special">[</span></code>
@@ -301,16 +290,16 @@
         A bracket expression may contain any combination of the following:
       </p>
 <a name="boost_regex.syntax.perl_syntax.single_characters"></a><h6>
-<a name="id2643544"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.single_characters">Single characters</a>
+<a name="id499230"></a>
+ Single characters
       </h6>
 <p>
         For example <code class="computeroutput"><span class="special">[</span><span class="identifier">abc</span><span class="special">]</span></code>, will match any of the characters 'a', 'b',
         or 'c'.
       </p>
 <a name="boost_regex.syntax.perl_syntax.character_ranges"></a><h6>
-<a name="id2643584"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.character_ranges">Character
+<a name="id499281"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.character_ranges">Character
         ranges</a>
       </h6>
 <p>
@@ -318,12 +307,12 @@
         will match any single character in the range 'a' to 'c'. By default, for
         Perl regular expressions, a character x is within the range y to z, if the
         code point of the character lies within the codepoints of the endpoints of
- the range. Alternatively, if you set the <a class="link" href="../ref/syntax_option_type/syntax_option_type_perl.html" title="Options for Perl Regular Expressions"><code class="computeroutput"><span class="identifier">collate</span></code> flag</a> when constructing the
+ the range. Alternatively, if you set the collate flag when constructing the
         regular expression, then ranges are locale sensitive.
       </p>
 <a name="boost_regex.syntax.perl_syntax.negation"></a><h6>
-<a name="id2643651"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.negation">Negation</a>
+<a name="id499361"></a>
+ Negation
       </h6>
 <p>
         If the bracket-expression begins with the ^ character, then it matches the
@@ -331,18 +320,18 @@
         range <code class="computeroutput"><span class="identifier">a</span><span class="special">-</span><span class="identifier">c</span></code>.
       </p>
 <a name="boost_regex.syntax.perl_syntax.character_classes"></a><h6>
-<a name="id2643720"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.character_classes">Character
+<a name="id499444"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.character_classes">Character
         classes</a>
       </h6>
 <p>
         An expression of the form <code class="computeroutput"><span class="special">[[:</span><span class="identifier">name</span><span class="special">:]]</span></code>
         matches the named character class "name", for example <code class="computeroutput"><span class="special">[[:</span><span class="identifier">lower</span><span class="special">:]]</span></code> matches any lower case character. See
- <a class="link" href="character_classes.html" title="Character Class Names">character class names</a>.
+ character class names.
       </p>
 <a name="boost_regex.syntax.perl_syntax.collating_elements"></a><h6>
-<a name="id2643785"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.collating_elements">Collating
+<a name="id499527"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.collating_elements">Collating
         Elements</a>
       </h6>
 <p>
@@ -356,25 +345,24 @@
         a single collating element in the current locale.
       </p>
 <p>
- As an extension, a collating element may also be specified via it's <a class="link" href="collating_names.html" title="Collating Names">symbolic name</a>, for example:
+ As an extension, a collating element may also be specified via it's symbolic name, for example:
       </p>
-<pre class="programlisting">
-<span class="special">[[.</span><span class="identifier">NUL</span><span class="special">.]]</span>
+<pre class="programlisting"><span class="special">[[.</span><span class="identifier">NUL</span><span class="special">.]]</span>
 </pre>
 <p>
         matches a <code class="computeroutput"><span class="special">\</span><span class="number">0</span></code>
         character.
       </p>
 <a name="boost_regex.syntax.perl_syntax.equivalence_classes"></a><h6>
-<a name="id2643908"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.equivalence_classes">Equivalence
+<a name="id499675"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.equivalence_classes">Equivalence
         classes</a>
       </h6>
 <p>
         An expression of the form <code class="computeroutput"><span class="special">[[=</span><span class="identifier">col</span><span class="special">=]]</span></code>,
         matches any character or collating element whose primary sort key is the
         same as that for collating element <span class="emphasis"><em>col</em></span>, as with collating
- elements the name <span class="emphasis"><em>col</em></span> may be a <a class="link" href="collating_names.html" title="Collating Names">symbolic
+ elements the name <span class="emphasis"><em>col</em></span> may be a <a href="collating_names.html" title="Collating Names">symbolic
         name</a>. A primary sort key is one that ignores case, accentation, or
         locale-specific tailorings; so for example <code class="computeroutput"><span class="special">[[=</span><span class="identifier">a</span><span class="special">=]]</span></code> matches
         any of the characters: a, À, Á, Â, Ã, Ä, Å, A, à, á, â, ã, ä and å. Unfortunately implementation
@@ -383,8 +371,8 @@
         or even all locales on one platform.
       </p>
 <a name="boost_regex.syntax.perl_syntax.escaped_characters"></a><h6>
-<a name="id2643994"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.escaped_characters">Escaped
+<a name="id499778"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.escaped_characters">Escaped
         Characters</a>
       </h6>
 <p>
@@ -395,16 +383,16 @@
         is <span class="emphasis"><em>not</em></span> a "word" character.
       </p>
 <a name="boost_regex.syntax.perl_syntax.combinations"></a><h6>
-<a name="id2644077"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.combinations">Combinations</a>
+<a name="id499884"></a>
+ Combinations
       </h6>
 <p>
         All of the above can be combined in one character set declaration, for example:
         <code class="computeroutput"><span class="special">[[:</span><span class="identifier">digit</span><span class="special">:]</span><span class="identifier">a</span><span class="special">-</span><span class="identifier">c</span><span class="special">[.</span><span class="identifier">NUL</span><span class="special">.]]</span></code>.
       </p>
 <a name="boost_regex.syntax.perl_syntax.escapes"></a><h5>
-<a name="id2644142"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.escapes">Escapes</a>
+<a name="id499962"></a>
+ Escapes
       </h5>
 <p>
         Any special character preceded by an escape shall match itself.
@@ -588,7 +576,7 @@
               </td>
 <td>
               <p>
- Matches the single character which has the <a class="link" href="collating_names.html" title="Collating Names">symbolic
+ Matches the single character which has the <a href="collating_names.html" title="Collating Names">symbolic
                 name</a> <span class="emphasis"><em>name</em></span>. For example <code class="computeroutput"><span class="special">\</span><span class="identifier">N</span><span class="special">{</span><span class="identifier">newline</span><span class="special">}</span></code> matches the single character \n.
               </p>
               </td>
@@ -596,8 +584,8 @@
 </tbody>
 </table></div>
 <a name="boost_regex.syntax.perl_syntax._quot_single_character_quot__character_classes_"></a><h6>
-<a name="id2644746"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax._quot_single_character_quot__character_classes_">"Single
+<a name="id500675"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax._quot_single_character_quot__character_classes_">"Single
         character" character classes:</a>
       </h6>
 <p>
@@ -750,13 +738,13 @@
 </tbody>
 </table></div>
 <a name="boost_regex.syntax.perl_syntax.character_properties"></a><h6>
-<a name="id2645277"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.character_properties">Character
+<a name="id501307"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.character_properties">Character
         Properties</a>
       </h6>
 <p>
         The character property names in the following table are all equivalent to
- the <a class="link" href="character_classes.html" title="Character Class Names">names used in character
+ the <a href="character_classes.html" title="Character Class Names">names used in character
         classes</a>.
       </p>
 <div class="informaltable"><table class="table">
@@ -858,8 +846,8 @@
         matches any "digit" character, as does <code class="computeroutput"><span class="special">\</span><span class="identifier">p</span><span class="special">{</span><span class="identifier">digit</span><span class="special">}</span></code>.
       </p>
 <a name="boost_regex.syntax.perl_syntax.word_boundaries"></a><h6>
-<a name="id2645624"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.word_boundaries">Word Boundaries</a>
+<a name="id501717"></a>
+ Word Boundaries
       </h6>
 <p>
         The following escape sequences match the boundaries of words:
@@ -880,8 +868,8 @@
         Matches only when not at a word boundary.
       </p>
 <a name="boost_regex.syntax.perl_syntax.buffer_boundaries"></a><h6>
-<a name="id2645707"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.buffer_boundaries">Buffer boundaries</a>
+<a name="id501818"></a>
+ Buffer boundaries
       </h6>
 <p>
         The following match only at buffer boundaries: a "buffer" in this
@@ -905,8 +893,8 @@
         to the regular expression <code class="computeroutput"><span class="special">\</span><span class="identifier">n</span><span class="special">*\</span><span class="identifier">z</span></code>
       </p>
 <a name="boost_regex.syntax.perl_syntax.continuation_escape"></a><h6>
-<a name="id2645777"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.continuation_escape">Continuation
+<a name="id501902"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.continuation_escape">Continuation
         Escape</a>
       </h6>
 <p>
@@ -917,8 +905,8 @@
         match to start where the last one ended.
       </p>
 <a name="boost_regex.syntax.perl_syntax.quoting_escape"></a><h6>
-<a name="id2645817"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.quoting_escape">Quoting escape</a>
+<a name="id501952"></a>
+ Quoting escape
       </h6>
 <p>
         The escape sequence <code class="computeroutput"><span class="special">\</span><span class="identifier">Q</span></code>
@@ -926,13 +914,12 @@
         as literals, until either the end of the regular expression or \E is found.
         For example the expression: <code class="computeroutput"><span class="special">\</span><span class="identifier">Q</span><span class="special">\*+\</span><span class="identifier">Ea</span><span class="special">+</span></code> would match either of:
       </p>
-<pre class="programlisting">
-<span class="special">\*+</span><span class="identifier">a</span>
+<pre class="programlisting"><span class="special">\*+</span><span class="identifier">a</span>
 <span class="special">\*+</span><span class="identifier">aaa</span>
 </pre>
 <a name="boost_regex.syntax.perl_syntax.unicode_escapes"></a><h6>
-<a name="id2645906"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.unicode_escapes">Unicode escapes</a>
+<a name="id502058"></a>
+ Unicode escapes
       </h6>
 <p>
         <code class="computeroutput"><span class="special">\</span><span class="identifier">C</span></code>
@@ -942,8 +929,8 @@
         combining characters.
       </p>
 <a name="boost_regex.syntax.perl_syntax.any_other_escape"></a><h6>
-<a name="id2645959"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.any_other_escape">Any other
+<a name="id502122"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.any_other_escape">Any other
         escape</a>
       </h6>
 <p>
@@ -951,8 +938,8 @@
         \@ matches a literal '@'.
       </p>
 <a name="boost_regex.syntax.perl_syntax.perl_extended_patterns"></a><h5>
-<a name="id2645982"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.perl_extended_patterns">Perl
+<a name="id502151"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.perl_extended_patterns">Perl
         Extended Patterns</a>
       </h5>
 <p>
@@ -960,8 +947,8 @@
         <code class="computeroutput"><span class="special">(?</span></code>.
       </p>
 <a name="boost_regex.syntax.perl_syntax.comments"></a><h6>
-<a name="id2646014"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.comments">Comments</a>
+<a name="id502192"></a>
+ Comments
       </h6>
 <p>
         <code class="computeroutput"><span class="special">(?</span># <span class="special">...</span>
@@ -969,8 +956,8 @@
         are ignored.
       </p>
 <a name="boost_regex.syntax.perl_syntax.modifiers"></a><h6>
-<a name="id2646056"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.modifiers">Modifiers</a>
+<a name="id502245"></a>
+ Modifiers
       </h6>
 <p>
         <code class="computeroutput"><span class="special">(?</span><span class="identifier">imsx</span><span class="special">-</span><span class="identifier">imsx</span> <span class="special">...</span> <span class="special">)</span></code> alters
@@ -984,8 +971,8 @@
         applies the specified modifiers to pattern only.
       </p>
 <a name="boost_regex.syntax.perl_syntax.non_marking_groups"></a><h6>
-<a name="id2646162"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.non_marking_groups">Non-marking
+<a name="id502372"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.non_marking_groups">Non-marking
         groups</a>
       </h6>
 <p>
@@ -993,8 +980,8 @@
         an additional sub-expression.
       </p>
 <a name="boost_regex.syntax.perl_syntax.lookahead"></a><h6>
-<a name="id2646201"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.lookahead">Lookahead</a>
+<a name="id502423"></a>
+ Lookahead
       </h6>
 <p>
         <code class="computeroutput"><span class="special">(?=</span><span class="identifier">pattern</span><span class="special">)</span></code> consumes zero characters, only if pattern
@@ -1010,15 +997,14 @@
         letter, a punctuation symbol, and be at least 6 characters long, then the
         expression:
       </p>
-<pre class="programlisting">
-<span class="special">(?=.*[[:</span><span class="identifier">lower</span><span class="special">:]])(?=.*[[:</span><span class="identifier">upper</span><span class="special">:]])(?=.*[[:</span><span class="identifier">punct</span><span class="special">:]]).{</span><span class="number">6</span><span class="special">,}</span>
+<pre class="programlisting"><span class="special">(?=.*[[:</span><span class="identifier">lower</span><span class="special">:]])(?=.*[[:</span><span class="identifier">upper</span><span class="special">:]])(?=.*[[:</span><span class="identifier">punct</span><span class="special">:]]).{</span><span class="number">6</span><span class="special">,}</span>
 </pre>
 <p>
         could be used to validate the password.
       </p>
 <a name="boost_regex.syntax.perl_syntax.lookbehind"></a><h6>
-<a name="id2646327"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.lookbehind">Lookbehind</a>
+<a name="id502564"></a>
+ Lookbehind
       </h6>
 <p>
         <code class="computeroutput"><span class="special">(?&lt;=</span><span class="identifier">pattern</span><span class="special">)</span></code> consumes zero characters, only if pattern
@@ -1031,8 +1017,8 @@
         (pattern must be of fixed length).
       </p>
 <a name="boost_regex.syntax.perl_syntax.independent_sub_expressions"></a><h6>
-<a name="id2646400"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.independent_sub_expressions">Independent
+<a name="id502643"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.independent_sub_expressions">Independent
         sub-expressions</a>
       </h6>
 <p>
@@ -1044,8 +1030,8 @@
         no match is found at all.
       </p>
 <a name="boost_regex.syntax.perl_syntax.conditional_expressions"></a><h6>
-<a name="id2646458"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.conditional_expressions">Conditional
+<a name="id502707"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.conditional_expressions">Conditional
         Expressions</a>
       </h6>
 <p>
@@ -1064,8 +1050,8 @@
         sub-expression has been matched).
       </p>
 <a name="boost_regex.syntax.perl_syntax.operator_precedence"></a><h5>
-<a name="id2646609"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.operator_precedence">Operator
+<a name="id502875"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.operator_precedence">Operator
         precedence</a>
       </h5>
 <p>
@@ -1100,8 +1086,8 @@
         </li>
 </ol></div>
 <a name="boost_regex.syntax.perl_syntax.what_gets_matched"></a><h4>
-<a name="id2646772"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.what_gets_matched">What gets
+<a name="id503053"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.what_gets_matched">What gets
         matched</a>
       </h4>
 <p>
@@ -1113,7 +1099,7 @@
         Alternatively:
       </p>
 <p>
- The best match found is the <a class="link" href="leftmost_longest_rule.html" title="The Leftmost Longest Rule">leftmost
+ The best match found is the <a href="leftmost_longest_rule.html" title="The Leftmost Longest Rule">leftmost
         match</a>, with individual elements matched as follows;
       </p>
 <div class="informaltable"><table class="table">
@@ -1285,20 +1271,20 @@
 </tbody>
 </table></div>
 <a name="boost_regex.syntax.perl_syntax.variations"></a><h4>
-<a name="id2647599"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.variations">Variations</a>
+<a name="id503968"></a>
+ Variations
       </h4>
 <p>
- The <a class="link" href="../ref/syntax_option_type/syntax_option_type_perl.html" title="Options for Perl Regular Expressions">options
+ The <a href="../ref/syntax_option_type/syntax_option_type_perl.html" title="Options for Perl Regular Expressions">options
         <code class="computeroutput"><span class="identifier">normal</span></code>, <code class="computeroutput"><span class="identifier">ECMAScript</span></code>,
         <code class="computeroutput"><span class="identifier">JavaScript</span></code> and <code class="computeroutput"><span class="identifier">JScript</span></code></a> are all synonyms for <code class="computeroutput"><span class="identifier">perl</span></code>.
       </p>
 <a name="boost_regex.syntax.perl_syntax.options"></a><h4>
-<a name="id2647685"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.options">Options</a>
+<a name="id504063"></a>
+ Options
       </h4>
 <p>
- There are a <a class="link" href="../ref/syntax_option_type/syntax_option_type_perl.html" title="Options for Perl Regular Expressions">variety
+ There are a <a href="../ref/syntax_option_type/syntax_option_type_perl.html" title="Options for Perl Regular Expressions">variety
         of flags</a> that may be combined with the <code class="computeroutput"><span class="identifier">perl</span></code>
         option when constructing the regular expression, in particular note that
         the <code class="computeroutput"><span class="identifier">newline_alt</span></code> option alters
@@ -1307,20 +1293,20 @@
         sensitivity are to be applied.
       </p>
 <a name="boost_regex.syntax.perl_syntax.pattern_modifiers"></a><h4>
-<a name="id2647777"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.pattern_modifiers">Pattern
+<a name="id504164"></a>
+ <a href="perl_syntax.html#boost_regex.syntax.perl_syntax.pattern_modifiers">Pattern
         Modifiers</a>
       </h4>
 <p>
         The perl <code class="computeroutput"><span class="identifier">smix</span></code> modifiers can
         either be applied using a <code class="computeroutput"><span class="special">(?</span><span class="identifier">smix</span><span class="special">-</span><span class="identifier">smix</span><span class="special">)</span></code> prefix to the regular expression, or with
- one of the <a class="link" href="../ref/syntax_option_type/syntax_option_type_perl.html" title="Options for Perl Regular Expressions">regex-compile
+ one of the <a href="../ref/syntax_option_type/syntax_option_type_perl.html" title="Options for Perl Regular Expressions">regex-compile
         time flags <code class="computeroutput"><span class="identifier">no_mod_m</span></code>, <code class="computeroutput"><span class="identifier">mod_x</span></code>, <code class="computeroutput"><span class="identifier">mod_s</span></code>,
         and <code class="computeroutput"><span class="identifier">no_mod_s</span></code></a>.
       </p>
 <a name="boost_regex.syntax.perl_syntax.references"></a><h4>
-<a name="id2647892"></a>
- <a class="link" href="perl_syntax.html#boost_regex.syntax.perl_syntax.references">References</a>
+<a name="id504291"></a>
+ References
       </h4>
 <p>
         <a href="http://perldoc.perl.org/perlre.html" target="_top">Perl 5.8</a>.

Modified: branches/CMake/release/libs/regex/doc/html/boost_regex/unicode.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/boost_regex/unicode.html (original)
+++ branches/CMake/release/libs/regex/doc/html/boost_regex/unicode.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Unicode and Boost.Regex</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Boost.Regex">
 <link rel="up" href="../index.html" title="Boost.Regex">
 <link rel="prev" href="introduction_and_overview.html" title="Introduction and Overview">
@@ -24,14 +24,14 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_regex.unicode"></a><a class="link" href="unicode.html" title="Unicode and Boost.Regex"> Unicode and Boost.Regex</a>
+<a name="boost_regex.unicode"></a> Unicode and Boost.Regex
 </h2></div></div></div>
 <p>
       There are two ways to use Boost.Regex with Unicode strings:
     </p>
 <a name="boost_regex.unicode.rely_on_wchar_t"></a><h5>
-<a name="id2638165"></a>
- <a class="link" href="unicode.html#boost_regex.unicode.rely_on_wchar_t">Rely on wchar_t</a>
+<a name="id492782"></a>
+ Rely on wchar_t
     </h5>
 <p>
       If your platform's <code class="computeroutput"><span class="keyword">wchar_t</span></code> type
@@ -56,16 +56,16 @@
       </li>
 </ul></div>
 <a name="boost_regex.unicode.use_a_unicode_aware_regular_expression_type_"></a><h5>
-<a name="id2638315"></a>
- <a class="link" href="unicode.html#boost_regex.unicode.use_a_unicode_aware_regular_expression_type_">Use
+<a name="id492966"></a>
+ <a href="unicode.html#boost_regex.unicode.use_a_unicode_aware_regular_expression_type_">Use
       a Unicode Aware Regular Expression Type.</a>
     </h5>
 <p>
       If you have the <a href="http://www.ibm.com/software/globalization/icu/" target="_top">ICU
- library</a>, then Boost.Regex can be <a class="link" href="install.html#boost_regex.install.building_with_unicode_and_icu_support">configured
+ library</a>, then Boost.Regex can be <a href="install.html#boost_regex.install.building_with_unicode_and_icu_support">configured
       to make use of it</a>, and provide a distinct regular expression type (boost::u32regex),
       that supports both Unicode specific character properties, and the searching
- of text that is encoded in either UTF-8, UTF-16, or UTF-32. See: <a class="link" href="ref/non_std_strings/icu.html" title="Working With Unicode and ICU String Types">ICU
+ of text that is encoded in either UTF-8, UTF-16, or UTF-32. See: <a href="ref/non_std_strings/icu.html" title="Working With Unicode and ICU String Types">ICU
       string class support</a>.
     </p>
 </div>

Modified: branches/CMake/release/libs/regex/doc/html/index.html
==============================================================================
--- branches/CMake/release/libs/regex/doc/html/index.html (original)
+++ branches/CMake/release/libs/regex/doc/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Boost.Regex</title>
 <link rel="stylesheet" href="../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="index.html" title="Boost.Regex">
 <link rel="next" href="boost_regex/configuration.html" title="Configuration">
 </head>
@@ -28,7 +28,7 @@
 </h3></div></div></div>
 <div><p class="copyright">Copyright © 1998 -2007 John Maddock</p></div>
 <div><div class="legalnotice">
-<a name="id2625914"></a><p>
+<a name="id435844"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -196,7 +196,7 @@
   </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: March 15, 2008 at 14:03:54 GMT</small></p></td>
+<td align="left"><p><small>Last revised: April 11, 2008 at 08:50:33 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: branches/CMake/release/libs/regex/doc/syntax_perl.qbk
==============================================================================
--- branches/CMake/release/libs/regex/doc/syntax_perl.qbk (original)
+++ branches/CMake/release/libs/regex/doc/syntax_perl.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -34,7 +34,7 @@
 any single character except:
 
 * The NULL character when the [link boost_regex.ref.match_flag_type flag
- `match_no_dot_null`] is passed to the matching algorithms.
+ `match_not_dot_null`] is passed to the matching algorithms.
 * The newline character when the [link boost_regex.ref.match_flag_type
    flag `match_not_dot_newline`] is passed to
    the matching algorithms.

Modified: branches/CMake/release/libs/regex/example/snippets/icu_example.cpp
==============================================================================
--- branches/CMake/release/libs/regex/example/snippets/icu_example.cpp (original)
+++ branches/CMake/release/libs/regex/example/snippets/icu_example.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -157,7 +157,7 @@
    assert(greek == L"\x0391\x039D\x0395\x0398\x0391 2004");
 
    // extract currency symbols with associated value, use iterator interface:
- std::string text2 = " $100.23 or \xC2\xA3""198.12 "; // \xC2\xA3 is the £ sign encoded in UTF-8
+ std::string text2 = " $100.23 or \xC2\xA3""198.12 "; // \xC2\xA3 is the pound sign encoded in UTF-8
    enumerate_currencies(text2);
    enumerate_currencies2(text2);
 

Modified: branches/CMake/release/libs/regex/src/posix_api.cpp
==============================================================================
--- branches/CMake/release/libs/regex/src/posix_api.cpp (original)
+++ branches/CMake/release/libs/regex/src/posix_api.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -62,6 +62,8 @@
 };
 } // namespace
 
+typedef boost::basic_regex<char, c_regex_traits<char> > c_regex_type;
+
 BOOST_REGEX_DECL int BOOST_REGEX_CCALL regcompA(regex_tA* expression, const char* ptr, int f)
 {
    if(expression->re_magic != magic_value)
@@ -70,7 +72,7 @@
 #ifndef BOOST_NO_EXCEPTIONS
       try{
 #endif
- expression->guts = new regex();
+ expression->guts = new c_regex_type();
 #ifndef BOOST_NO_EXCEPTIONS
       } catch(...)
       {
@@ -120,9 +122,9 @@
    try{
 #endif
       expression->re_magic = magic_value;
- static_cast<regex*>(expression->guts)->set_expression(ptr, p2, flags);
- expression->re_nsub = static_cast<regex*>(expression->guts)->mark_count() - 1;
- result = static_cast<regex*>(expression->guts)->error_code();
+ static_cast<c_regex_type*>(expression->guts)->set_expression(ptr, p2, flags);
+ expression->re_nsub = static_cast<c_regex_type*>(expression->guts)->mark_count() - 1;
+ result = static_cast<c_regex_type*>(expression->guts)->error_code();
 #ifndef BOOST_NO_EXCEPTIONS
    }
    catch(const boost::regex_error& be)
@@ -187,7 +189,7 @@
    {
       std::string p;
       if((e) && (e->re_magic == magic_value))
- p = static_cast<regex*>(e->guts)->get_traits().error_string(static_cast< ::boost::regex_constants::error_type>(code));
+ p = static_cast<c_regex_type*>(e->guts)->get_traits().error_string(static_cast< ::boost::regex_constants::error_type>(code));
       else
       {
          p = re_detail::get_default_error_string(static_cast< ::boost::regex_constants::error_type>(code));
@@ -236,7 +238,7 @@
 #endif
    if(expression->re_magic == magic_value)
    {
- result = regex_search(start, end, m, *static_cast<regex*>(expression->guts), flags);
+ result = regex_search(start, end, m, *static_cast<c_regex_type*>(expression->guts), flags);
    }
    else
       return result;
@@ -274,7 +276,7 @@
 {
    if(expression->re_magic == magic_value)
    {
- delete static_cast<regex*>(expression->guts);
+ delete static_cast<c_regex_type*>(expression->guts);
    }
    expression->re_magic = 0;
 }

Modified: branches/CMake/release/libs/regex/src/usinstances.cpp
==============================================================================
--- branches/CMake/release/libs/regex/src/usinstances.cpp (original)
+++ branches/CMake/release/libs/regex/src/usinstances.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -25,6 +25,8 @@
 
 #ifdef _DLL_CPPLIB
 #include <boost/detail/workaround.hpp>
+#include <memory>
+#include <string>
 //
 // This is a horrible workaround, without declaring these symbols extern we get
 // duplicate symbol errors when linking if the application is built without
@@ -49,6 +51,9 @@
 #if BOOST_WORKAROUND(BOOST_MSVC, > 1300) && BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1400))
 template<> _CRTIMP2 std::size_t __cdecl char_traits<unsigned short>::length(unsigned short const*);
 #endif
+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)
+template _CRTIMP2 allocator<unsigned short>::allocator();
+#endif
 }
 #endif
 

Modified: branches/CMake/release/libs/regex/src/wc_regex_traits.cpp
==============================================================================
--- branches/CMake/release/libs/regex/src/wc_regex_traits.cpp (original)
+++ branches/CMake/release/libs/regex/src/wc_regex_traits.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,9 +19,42 @@
 
 #define BOOST_REGEX_SOURCE
 
-#include <boost/config.hpp>
+#include <boost/regex/config.hpp>
 #include <boost/detail/workaround.hpp>
 
+#ifdef _DLL_CPPLIB
+#include <memory>
+#include <string>
+//
+// This is a horrible workaround, without declaring these symbols extern we get
+// duplicate symbol errors when linking if the application is built without
+// /Zc:wchar_t
+//
+namespace std{
+template _CRTIMP2 bool __cdecl operator==(
+ const basic_string<unsigned short, char_traits<unsigned short>, allocator<unsigned short> >&,
+ const basic_string<unsigned short, char_traits<unsigned short>, allocator<unsigned short> >&);
+template _CRTIMP2 bool __cdecl operator==(
+ const unsigned short *,
+ const basic_string<unsigned short, char_traits<unsigned short>, allocator<unsigned short> >&);
+template _CRTIMP2 bool __cdecl operator==(
+ const basic_string<unsigned short, char_traits<unsigned short>, allocator<unsigned short> >&,
+ const unsigned short *);
+template _CRTIMP2 bool __cdecl operator<(
+ const basic_string<unsigned short, char_traits<unsigned short>, allocator<unsigned short> >&,
+ const basic_string<unsigned short, char_traits<unsigned short>, allocator<unsigned short> >&);
+template _CRTIMP2 bool __cdecl operator>(
+ const basic_string<unsigned short, char_traits<unsigned short>, allocator<unsigned short> >&,
+ const basic_string<unsigned short, char_traits<unsigned short>, allocator<unsigned short> >&);
+#if BOOST_WORKAROUND(BOOST_MSVC, > 1300) && BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1400))
+template<> _CRTIMP2 std::size_t __cdecl char_traits<unsigned short>::length(unsigned short const*);
+#endif
+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)
+template _CRTIMP2 allocator<unsigned short>::allocator();
+#endif
+}
+#endif
+
 #if !BOOST_WORKAROUND(__BORLANDC__, < 0x560)
 
 #include <boost/regex/v4/c_regex_traits.hpp>

Modified: branches/CMake/release/libs/regex/src/wide_posix_api.cpp
==============================================================================
--- branches/CMake/release/libs/regex/src/wide_posix_api.cpp (original)
+++ branches/CMake/release/libs/regex/src/wide_posix_api.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -69,6 +69,8 @@
 };
 }
 
+typedef boost::basic_regex<wchar_t, c_regex_traits<wchar_t> > c_regex_type;
+
 BOOST_REGEX_DECL int BOOST_REGEX_CCALL regcompW(regex_tW* expression, const wchar_t* ptr, int f)
 {
    if(expression->re_magic != wmagic_value)
@@ -77,7 +79,7 @@
 #ifndef BOOST_NO_EXCEPTIONS
       try{
 #endif
- expression->guts = new wregex();
+ expression->guts = new c_regex_type();
 #ifndef BOOST_NO_EXCEPTIONS
       } catch(...)
       {
@@ -127,9 +129,9 @@
    try{
 #endif
       expression->re_magic = wmagic_value;
- static_cast<wregex*>(expression->guts)->set_expression(ptr, p2, flags);
- expression->re_nsub = static_cast<wregex*>(expression->guts)->mark_count() - 1;
- result = static_cast<wregex*>(expression->guts)->error_code();
+ static_cast<c_regex_type*>(expression->guts)->set_expression(ptr, p2, flags);
+ expression->re_nsub = static_cast<c_regex_type*>(expression->guts)->mark_count() - 1;
+ result = static_cast<c_regex_type*>(expression->guts)->error_code();
 #ifndef BOOST_NO_EXCEPTIONS
    }
    catch(const boost::regex_error& be)
@@ -208,7 +210,7 @@
    {
       std::string p;
       if((e) && (e->re_magic == wmagic_value))
- p = static_cast<wregex*>(e->guts)->get_traits().error_string(static_cast< ::boost::regex_constants::error_type>(code));
+ p = static_cast<c_regex_type*>(e->guts)->get_traits().error_string(static_cast< ::boost::regex_constants::error_type>(code));
       else
       {
          p = re_detail::get_default_error_string(static_cast< ::boost::regex_constants::error_type>(code));
@@ -257,7 +259,7 @@
 #endif
    if(expression->re_magic == wmagic_value)
    {
- result = regex_search(start, end, m, *static_cast<wregex*>(expression->guts), flags);
+ result = regex_search(start, end, m, *static_cast<c_regex_type*>(expression->guts), flags);
    }
    else
       return result;
@@ -294,7 +296,7 @@
 {
    if(expression->re_magic == wmagic_value)
    {
- delete static_cast<wregex*>(expression->guts);
+ delete static_cast<c_regex_type*>(expression->guts);
    }
    expression->re_magic = 0;
 }

Modified: branches/CMake/release/libs/regex/test/regress/test_escapes.cpp
==============================================================================
--- branches/CMake/release/libs/regex/test/regress/test_escapes.cpp (original)
+++ branches/CMake/release/libs/regex/test/regress/test_escapes.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -109,6 +109,9 @@
    TEST_REGEX_SEARCH("a\\B", perl, "ab", match_default, make_array(0, 1, -2, -2));
    TEST_REGEX_SEARCH("a\\B", perl, "a", match_default, make_array(-2, -2));
    TEST_REGEX_SEARCH("a\\B", perl, "a ", match_default, make_array(-2, -2));
+ TEST_REGEX_SEARCH("\\By\\b", perl, "xy", match_default, make_array(1, 2, -2, -2));
+ TEST_REGEX_SEARCH("\\by\\B", perl, "yz", match_default, make_array(0, 1, -2, -2));
+ TEST_REGEX_SEARCH("\\B\\*\\B", perl, " * ", match_default, make_array(1, 2, -2, -2));
    // buffer operators:
    TEST_REGEX_SEARCH("\\`abc", perl, "abc", match_default, make_array(0, 3, -2, -2));
    TEST_REGEX_SEARCH("\\`abc", perl, "\nabc", match_default, make_array(-2, -2));

Modified: branches/CMake/release/libs/serialization/build/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/serialization/build/Jamfile.v2 (original)
+++ branches/CMake/release/libs/serialization/build/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,7 +8,7 @@
 
 project boost/serialization
     : source-location ../src
- : requirements <dependency>../../config/test//BOOST_NO_STD_LOCALE
+ : requirements <dependency>../../config/test/all//BOOST_NO_STD_LOCALE
       <conditional>@include-spirit
 ;
 
@@ -100,7 +100,7 @@
     : $(WSOURCES).cpp boost_serialization
     :
     <toolset>msvc:<cxxflags>/Gy
- <dependency>../../config/test//BOOST_NO_STD_WSTREAMBUF
+ <dependency>../../config/test/all//BOOST_NO_STD_WSTREAMBUF
     <link>shared:<define>BOOST_SERIALIZATION_DYN_LINK=1
     ;
 

Modified: branches/CMake/release/libs/serialization/test/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/serialization/test/Jamfile.v2 (original)
+++ branches/CMake/release/libs/serialization/test/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -84,11 +84,11 @@
         
         [ test-bsl-run-no-lib test_utf8_codecvt
             : ../src/utf8_codecvt_facet
- : <dependency>../../config/test//BOOST_NO_STD_WSTREAMBUF
+ : <dependency>../../config/test/all//BOOST_NO_STD_WSTREAMBUF
         ]
         [ test-bsl-run-no-lib test_codecvt_null
             : ../src/codecvt_null
- : <dependency>../../config/test//BOOST_NO_STD_WSTREAMBUF
+ : <dependency>../../config/test/all//BOOST_NO_STD_WSTREAMBUF
         ]
 
         # should fail compilation

Modified: branches/CMake/release/libs/serialization/util/test.jam
==============================================================================
--- branches/CMake/release/libs/serialization/util/test.jam (original)
+++ branches/CMake/release/libs/serialization/util/test.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -94,7 +94,7 @@
             # both stlport and msvc6 define iswspace
             <toolset>msvc,<stdlib>stlport:<linkflags>"-force:multiple"
             <dependency>$(save-test)
- <dependency>../../config/test//BOOST_NO_STD_WSTREAMBUF
+ <dependency>../../config/test/all//BOOST_NO_STD_WSTREAMBUF
     ] ;
     return $(tests) ;
 }

Modified: branches/CMake/release/libs/smart_ptr/intrusive_ptr.html
==============================================================================
--- branches/CMake/release/libs/smart_ptr/intrusive_ptr.html (original)
+++ branches/CMake/release/libs/smart_ptr/intrusive_ptr.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -62,6 +62,8 @@
       intrusive_ptr &amp; operator=(intrusive_ptr const &amp; r);
       template&lt;class Y&gt; intrusive_ptr &amp; operator=(intrusive_ptr&lt;Y&gt; const &amp; r);
       intrusive_ptr &amp; operator=(T * r);
+
+ void reset();
       void reset(T * r);
 
       T &amp; operator*() const; // never throws
@@ -148,6 +150,10 @@
                         <P><B>Returns:</B> <code>*this</code>.</P>
                 </BLOCKQUOTE>
                 <H3><a name="reset">reset</a></H3>
+ <pre>void reset();</pre>
+ <BLOCKQUOTE>
+ <P><B>Effects:</B> Equivalent to <code>intrusive_ptr().swap(*this)</code>.</P>
+ </BLOCKQUOTE>
                 <pre>void reset(T * r);</pre>
                 <BLOCKQUOTE>
                         <P><B>Effects:</B> Equivalent to <code>intrusive_ptr(r).swap(*this)</code>.</P>

Modified: branches/CMake/release/libs/smart_ptr/shared_ptr.htm
==============================================================================
--- branches/CMake/release/libs/smart_ptr/shared_ptr.htm (original)
+++ branches/CMake/release/libs/smart_ptr/shared_ptr.htm 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -373,8 +373,8 @@
                 <pre>long use_count() const; // never throws</pre>
                 <blockquote>
                         <p><b>Returns:</b> the number of <b>shared_ptr</b> objects, <STRONG>*this</STRONG> included,
- that <i>share ownership</i> with <b>*this</b>, or an unspecified nonnegative
- value when <STRONG>*this</STRONG> is <EM>empty</EM>.</p>
+ that <i>share ownership</i> with <b>*this</b>, or 0 when <STRONG>*this</STRONG>
+ is <EM>empty</EM>.</p>
                         <p><b>Throws:</b> nothing.</p>
                         <P><B>Notes:</B> <code>use_count()</code> is not necessarily efficient. Use only
                                 for debugging and testing purposes, not for production code.</P>
@@ -522,6 +522,7 @@
                         <P><B>Returns:</B> If <STRONG>*this</STRONG> <EM>owns</EM> a deleter <STRONG>d</STRONG>
                                 of type (cv-unqualified) <STRONG>D</STRONG>, returns <code>&amp;d</code>;
                                 otherwise returns 0.</P>
+ <P><B>Throws:</B> nothing.</P>
                 </BLOCKQUOTE>
                 <h2><a name="example">Example</a></h2>
                 <p>See shared_ptr_example.cpp for a
@@ -709,8 +710,8 @@
                 <p>
                         $Date$</p>
                 <p><small>Copyright 1999 Greg Colvin and Beman Dawes. Copyright 2002 Darin Adler.
- Copyright 2002-2005 Peter Dimov. Distributed under the Boost Software License, Version
- 1.0. See accompanying file LICENSE_1_0.txt or
- copy at http://www.boost.org/LICENSE_1_0.txt.</small></p>
+ Copyright 2002-2005 Peter Dimov. Distributed under the Boost Software License,
+ Version 1.0. See accompanying file LICENSE_1_0.txt
+ or copy at http://www.boost.org/LICENSE_1_0.txt.</small></p>
         </body>
 </html>

Modified: branches/CMake/release/libs/smart_ptr/test/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/smart_ptr/test/Jamfile.v2 (original)
+++ branches/CMake/release/libs/smart_ptr/test/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -33,5 +33,20 @@
           [ run shared_ptr_move_test.cpp ]
           [ compile-fail shared_ptr_pv_fail.cpp ]
           [ run sp_unary_addr_test.cpp ]
+ [ compile-fail scoped_ptr_eq_fail.cpp ]
+ [ compile-fail scoped_array_eq_fail.cpp ]
+ [ run esft_regtest.cpp ]
+ [ run yield_k_test.cpp ]
+ [ run yield_k_test.cpp : : : <threading>multi : yield_k_test.mt ]
+ [ run spinlock_test.cpp ]
+ [ run spinlock_try_test.cpp ]
+ [ run spinlock_try_test.cpp : : : <threading>multi : spinlock_try_test.mt ]
+ [ run spinlock_pool_test.cpp ]
+ [ run make_shared_test.cpp ]
+ [ run sp_convertible_test.cpp ]
+ [ run wp_convertible_test.cpp ]
+ [ run ip_convertible_test.cpp ]
+ [ run allocate_shared_test.cpp ]
+ [ run sp_atomic_test.cpp ]
         ;
 }

Modified: branches/CMake/release/libs/smart_ptr/test/pointer_cast_test.cpp
==============================================================================
--- branches/CMake/release/libs/smart_ptr/test/pointer_cast_test.cpp (original)
+++ branches/CMake/release/libs/smart_ptr/test/pointer_cast_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,7 @@
 //
 // pointer_cast_test.cpp - a test for boost/pointer_cast.hpp
 //
-// Copyright (c) 2005 Ion Gaztañaga
+// Copyright (c) 2005 Ion Gaztanaga
 // Copyright (c) 2005 Peter Dimov
 //
 // Distributed under the Boost Software License, Version 1.0. (See

Modified: branches/CMake/release/libs/smart_ptr/test/shared_from_this_test.cpp
==============================================================================
--- branches/CMake/release/libs/smart_ptr/test/shared_from_this_test.cpp (original)
+++ branches/CMake/release/libs/smart_ptr/test/shared_from_this_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -133,7 +133,8 @@
     try
     {
         boost::shared_ptr<V> r = v2.shared_from_this();
- BOOST_ERROR("v2.shared_from_this() failed to throw");
+ BOOST_TEST( p < r || r < p );
+ BOOST_TEST( r.get() == &v2 );
     }
     catch(boost::bad_weak_ptr const &)
     {

Modified: branches/CMake/release/libs/smart_ptr/test/shared_ptr_mt_test.cpp
==============================================================================
--- branches/CMake/release/libs/smart_ptr/test/shared_ptr_mt_test.cpp (original)
+++ branches/CMake/release/libs/smart_ptr/test/shared_ptr_mt_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,167 +7,76 @@
 #pragma warning(disable: 4514) // unreferenced inline removed
 #endif
 
-//
 // shared_ptr_mt_test.cpp - tests shared_ptr with multiple threads
 //
 // Copyright (c) 2002 Peter Dimov and Multi Media Ltd.
+// Copyright (c) 2008 Peter Dimov
 //
-// Distributed under the Boost Software License, Version 1.0. (See
-// accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-//
+// Distributed under the Boost Software License, Version 1.0.
+// See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt
 
 #include <boost/shared_ptr.hpp>
 #include <boost/bind.hpp>
 
 #include <vector>
-#include <memory>
-#include <stdexcept>
 
 #include <cstdio>
 #include <ctime>
 
-// 'portable' thread framework
-
-class abstract_thread
-{
-public:
-
- virtual ~abstract_thread() {}
- virtual void run() = 0;
-};
-
-#if !defined(BOOST_HAS_PTHREADS) && defined(BOOST_HAS_WINTHREADS)
-
-char const * title = "Using Windows threads";
-
-#include <windows.h>
-#include <process.h>
+#include <boost/detail/lightweight_thread.hpp>
 
-typedef HANDLE pthread_t;
+//
 
-unsigned __stdcall common_thread_routine(void * pv)
-{
- abstract_thread * pt = static_cast<abstract_thread *>(pv);
- pt->run();
- delete pt;
- return 0;
-}
+int const n = 1024 * 1024;
 
-int pthread_create(pthread_t * thread, void const *, unsigned (__stdcall * start_routine) (void*), void* arg)
+void test( boost::shared_ptr<int> const & pi )
 {
- HANDLE h = (HANDLE)_beginthreadex(0, 0, start_routine, arg, 0, 0);
+ std::vector< boost::shared_ptr<int> > v;
 
- if(h != 0)
+ for( int i = 0; i < n; ++i )
     {
- *thread = h;
- return 0;
- }
- else
- {
- return 1; // return errno;
+ v.push_back( pi );
     }
 }
 
-int pthread_join(pthread_t thread, void ** /*value_ptr*/)
-{
- ::WaitForSingleObject(thread, INFINITE);
- ::CloseHandle(thread);
- return 0;
-}
+int const m = 16; // threads
 
-#else
+#if defined( BOOST_HAS_PTHREADS )
 
-char const * title = "Using POSIX threads";
+char const * thmodel = "POSIX";
 
-#include <pthread.h>
+#else
 
-extern "C" void * common_thread_routine(void * pv)
-{
- abstract_thread * pt = static_cast<abstract_thread *>(pv);
- pt->run();
- delete pt;
- return 0;
-}
+char const * thmodel = "Windows";
 
 #endif
 
-//
-
-template<class F> class thread: public abstract_thread
-{
-public:
-
- explicit thread(F f): f_(f)
- {
- }
-
- void run()
- {
- f_();
- }
-
-private:
-
- F f_;
-};
-
-template<class F> pthread_t createThread(F f)
-{
- std::auto_ptr<abstract_thread> p(new thread<F>(f));
-
- pthread_t r;
-
- if(pthread_create(&r, 0, common_thread_routine, p.get()) == 0)
- {
- p.release();
- return r;
- }
-
- throw std::runtime_error("createThread failed.");
-}
-
-//
-
-int const n = 1024 * 1024;
-
-void test(boost::shared_ptr<int> const & pi)
-{
- std::vector< boost::shared_ptr<int> > v;
-
- for(int i = 0; i < n; ++i)
- {
- v.push_back(pi);
- }
-}
-
-int const m = 16; // threads
-
 int main()
 {
     using namespace std; // printf, clock_t, clock
 
- printf("%s: %d threads, %d iterations: ", title, m, n);
+ printf( "Using %s threads: %d threads, %d iterations: ", thmodel, m, n );
 
- boost::shared_ptr<int> pi(new int(42));
+ boost::shared_ptr<int> pi( new int(42) );
 
     clock_t t = clock();
 
- pthread_t a[m];
+ pthread_t a[ m ];
 
- for(int i = 0; i < m; ++i)
+ for( int i = 0; i < m; ++i )
     {
- a[i] = createThread( boost::bind(test, pi) );
+ boost::detail::lw_thread_create( a[ i ], boost::bind( test, pi ) );
     }
 
- for(int j = 0; j < m; ++j)
+ for( int j = 0; j < m; ++j )
     {
- pthread_join(a[j], 0);
+ pthread_join( a[j], 0 );
     }
 
     t = clock() - t;
 
- printf("\n\n%.3f seconds.\n", static_cast<double>(t) / CLOCKS_PER_SEC);
+ printf( "\n\n%.3f seconds.\n", static_cast<double>(t) / CLOCKS_PER_SEC );
 
     return 0;
 }

Modified: branches/CMake/release/libs/smart_ptr/test/shared_ptr_test.cpp
==============================================================================
--- branches/CMake/release/libs/smart_ptr/test/shared_ptr_test.cpp (original)
+++ branches/CMake/release/libs/smart_ptr/test/shared_ptr_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -62,6 +62,7 @@
         BOOST_TEST(pi? false: true);
         BOOST_TEST(!pi);
         BOOST_TEST(pi.get() == 0);
+ BOOST_TEST(pi.use_count() == 0);
     }
 
     {
@@ -69,6 +70,7 @@
         BOOST_TEST(pv? false: true);
         BOOST_TEST(!pv);
         BOOST_TEST(pv.get() == 0);
+ BOOST_TEST(pv.use_count() == 0);
     }
 
     {
@@ -76,6 +78,7 @@
         BOOST_TEST(px? false: true);
         BOOST_TEST(!px);
         BOOST_TEST(px.get() == 0);
+ BOOST_TEST(px.use_count() == 0);
     }
 }
 
@@ -1565,6 +1568,7 @@
         BOOST_TEST(pi? false: true);
         BOOST_TEST(!pi);
         BOOST_TEST(pi.get() == 0);
+ BOOST_TEST(pi.use_count() == 0);
     }
 
     {
@@ -1573,6 +1577,7 @@
         BOOST_TEST(pi? false: true);
         BOOST_TEST(!pi);
         BOOST_TEST(pi.get() == 0);
+ BOOST_TEST(pi.use_count() == 0);
     }
 
     {
@@ -1581,6 +1586,7 @@
         BOOST_TEST(pi? false: true);
         BOOST_TEST(!pi);
         BOOST_TEST(pi.get() == 0);
+ BOOST_TEST(pi.use_count() == 0);
     }
 
     {
@@ -1589,6 +1595,7 @@
         BOOST_TEST(px? false: true);
         BOOST_TEST(!px);
         BOOST_TEST(px.get() == 0);
+ BOOST_TEST(px.use_count() == 0);
     }
 
     {
@@ -1597,6 +1604,7 @@
         BOOST_TEST(px? false: true);
         BOOST_TEST(!px);
         BOOST_TEST(px.get() == 0);
+ BOOST_TEST(px.use_count() == 0);
     }
 
     {
@@ -1605,6 +1613,7 @@
         BOOST_TEST(px? false: true);
         BOOST_TEST(!px);
         BOOST_TEST(px.get() == 0);
+ BOOST_TEST(px.use_count() == 0);
     }
 
     {
@@ -1615,6 +1624,7 @@
         BOOST_TEST(px? false: true);
         BOOST_TEST(!px);
         BOOST_TEST(px.get() == 0);
+ BOOST_TEST(px.use_count() == 0);
         BOOST_TEST(X::instances == 0);
     }
 
@@ -1624,6 +1634,7 @@
         BOOST_TEST(pv? false: true);
         BOOST_TEST(!pv);
         BOOST_TEST(pv.get() == 0);
+ BOOST_TEST(pv.use_count() == 0);
     }
 
     {
@@ -1634,6 +1645,7 @@
         BOOST_TEST(pv? false: true);
         BOOST_TEST(!pv);
         BOOST_TEST(pv.get() == 0);
+ BOOST_TEST(pv.use_count() == 0);
         BOOST_TEST(X::instances == 0);
     }
 }

Modified: branches/CMake/release/libs/smart_ptr/test/smart_ptr_test.cpp
==============================================================================
--- branches/CMake/release/libs/smart_ptr/test/smart_ptr_test.cpp (original)
+++ branches/CMake/release/libs/smart_ptr/test/smart_ptr_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -196,6 +196,10 @@
     BOOST_TEST( cp.use_count() == 3 );
     BOOST_TEST( *cp == 87654 );
 
+#if defined( BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP )
+ using boost::swap;
+#endif
+
     boost::shared_ptr<int> cp4;
     swap( cp2, cp4 );
     BOOST_TEST( cp4.use_count() == 3 );

Modified: branches/CMake/release/libs/smart_ptr/test/sp_unary_addr_test.cpp
==============================================================================
--- branches/CMake/release/libs/smart_ptr/test/sp_unary_addr_test.cpp (original)
+++ branches/CMake/release/libs/smart_ptr/test/sp_unary_addr_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -49,6 +49,9 @@
         BOOST_TEST( q != 0 && q->data == 17041 );
     }
 
+#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, < 1300 )
+#else
+
     {
         boost::shared_ptr<X> p( &x, deleter(), std::allocator<X>() );
 
@@ -58,5 +61,7 @@
         BOOST_TEST( q != 0 && q->data == 17041 );
     }
 
+#endif
+
     return boost::report_errors();
 }

Modified: branches/CMake/release/libs/smart_ptr/test/weak_ptr_mt_test.cpp
==============================================================================
--- branches/CMake/release/libs/smart_ptr/test/weak_ptr_mt_test.cpp (original)
+++ branches/CMake/release/libs/smart_ptr/test/weak_ptr_mt_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,128 +7,26 @@
 #pragma warning(disable: 4514) // unreferenced inline removed
 #endif
 
-//
 // weak_ptr_mt_test.cpp
 //
 // Copyright (c) 2002 Peter Dimov and Multi Media Ltd.
-// Copyright 2005 Peter Dimov
-//
-// Distributed under the Boost Software License, Version 1.0. (See
-// accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
+// Copyright 2005, 2008 Peter Dimov
 //
+// Distributed under the Boost Software License, Version 1.0.
+// See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt
 
 #include <boost/shared_ptr.hpp>
 #include <boost/weak_ptr.hpp>
 #include <boost/bind.hpp>
 
 #include <vector>
-#include <memory>
-#include <stdexcept>
 
 #include <cstdio>
 #include <ctime>
 #include <cstdlib>
 
-// 'portable' thread framework
-
-class abstract_thread
-{
-public:
-
- virtual ~abstract_thread() {}
- virtual void run() = 0;
-};
-
-#if !defined(BOOST_HAS_PTHREADS) && defined(BOOST_HAS_WINTHREADS)
-
-char const * title = "Using Windows threads";
-
-#include <windows.h>
-#include <process.h>
-
-typedef HANDLE pthread_t;
-
-unsigned __stdcall common_thread_routine(void * pv)
-{
- abstract_thread * pt = static_cast<abstract_thread *>(pv);
- pt->run();
- delete pt;
- return 0;
-}
-
-int pthread_create(pthread_t * thread, void const *, unsigned (__stdcall * start_routine) (void*), void* arg)
-{
- HANDLE h = (HANDLE)_beginthreadex(0, 0, start_routine, arg, 0, 0);
-
- if(h != 0)
- {
- *thread = h;
- return 0;
- }
- else
- {
- return 1; // return errno;
- }
-}
-
-int pthread_join(pthread_t thread, void ** /*value_ptr*/)
-{
- ::WaitForSingleObject(thread, INFINITE);
- ::CloseHandle(thread);
- return 0;
-}
-
-#else
-
-char const * title = "Using POSIX threads";
-
-#include <pthread.h>
-
-extern "C" void * common_thread_routine(void * pv)
-{
- abstract_thread * pt = static_cast<abstract_thread *>(pv);
- pt->run();
- delete pt;
- return 0;
-}
-
-#endif
-
-//
-
-template<class F> class thread: public abstract_thread
-{
-public:
-
- explicit thread(F f): f_(f)
- {
- }
-
- void run()
- {
- f_();
- }
-
-private:
-
- F f_;
-};
-
-template<class F> pthread_t createThread(F f)
-{
- std::auto_ptr<abstract_thread> p(new thread<F>(f));
-
- pthread_t r;
-
- if(pthread_create(&r, 0, common_thread_routine, p.get()) == 0)
- {
- p.release();
- return r;
- }
-
- throw std::runtime_error("createThread failed.");
-}
+#include <boost/detail/lightweight_thread.hpp>
 
 //
 
@@ -177,11 +75,21 @@
     printf( "\n%d locks, %d forced rebinds, %d normal rebinds.", s, f, r );
 }
 
+#if defined( BOOST_HAS_PTHREADS )
+
+char const * thmodel = "POSIX";
+
+#else
+
+char const * thmodel = "Windows";
+
+#endif
+
 int main()
 {
     using namespace std; // printf, clock_t, clock
 
- printf("%s: %d threads, %d * %d iterations: ", title, m, n, k );
+ printf("Using %s threads: %d threads, %d * %d iterations: ", thmodel, m, n, k );
 
     std::vector< boost::shared_ptr<int> > v( k );
 
@@ -192,16 +100,16 @@
 
     clock_t t = clock();
 
- pthread_t a[m];
+ pthread_t a[ m ];
 
- for(int i = 0; i < m; ++i)
+ for( int i = 0; i < m; ++i )
     {
- a[i] = createThread( boost::bind( test, v ) );
+ boost::detail::lw_thread_create( a[ i ], boost::bind( test, v ) );
     }
 
     v.resize( 0 ); // kill original copies
 
- for(int j = 0; j < m; ++j)
+ for( int j = 0; j < m; ++j )
     {
         pthread_join( a[j], 0 );
     }

Modified: branches/CMake/release/libs/spirit/doc/Jamfile
==============================================================================
--- branches/CMake/release/libs/spirit/doc/Jamfile (original)
+++ branches/CMake/release/libs/spirit/doc/Jamfile 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,9 +19,10 @@
         <xsl:param>boost.root=../../../..
         <xsl:param>boost.libraries=../../../libraries.htm
         <xsl:param>html.stylesheet=../../../../doc/html/boostbook.css
- <xsl:param>chunk.section.depth=5
- <xsl:param>chunk.first.sections=1
- <xsl:param>toc.section.depth=4
- <xsl:param>toc.max.depth=4
+ <xsl:param>chunk.section.depth=4
+ #<xsl:param>chunk.first.sections=1
+ <xsl:param>toc.section.depth=3
+ <xsl:param>toc.max.depth=3
         <xsl:param>generate.section.toc.level=4
+ <xsl:param>admon.graphics.path=images/
     ;

Modified: branches/CMake/release/libs/spirit/doc/html/images/spiritkarmaflow.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/spirit/doc/html/images/spiritstructure.png
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/spirit/doc/introduction.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/introduction.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/introduction.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,11 +11,15 @@
 Boost Spirit is an object oriented, recursive-descent parser and output generation
 library for C++. It allows to write grammars and format descriptions using a
 format very similar to EBNF (Extended Backus Naur Form, see [4]) directly in
-C++. It allows to describe the input structure and the output format
-specification in a very similar way, and based on a single syntax and semantics.
+C++. These inline grammar specifications can mix freely with other C++ code and,
+thanks to the generative power of C++ templates, are immediately executable.
+In retrospect, conventional compiler-compilers or parser-generators have to
+perform an additional translation step from the source EBNF code to C or C++
+code.
+
 The syntax and semantics of the libraries API directly form domain specific
-languages (DSEL - domain specific languages). In fact, Spirit exposes 3
-different DSEL's to the user:
+embedded languages (DSEL). In fact, Spirit exposes 3 different DSEL's to the
+user:
 
 * one for creating parser grammars,
 * one for the specification of the required tokens to be used for parsing,
@@ -24,7 +28,7 @@
 Since the target input grammars and output formats are written entirely in C++
 we do not need any separate tools to compile, preprocess, or integrate those
 into the build process. __spirit__ allows seamless integration of the parsing
-and output gerenation process with other C++ code. Often this allows for
+and output generation process with other C++ code. Often this allows for
 simpler and more efficient code.
 
 Both, the created parsers and generators, are fully attributed which allows to
@@ -32,9 +36,7 @@
 structures resemble the structure of the input data and can directly be used to
 generate arbitrarily formatted output.
 
-Immediately executable
-
-The [link spirit.spiritstructure picture] below depicts the overall structure
+The [link spirit.spiritstructure figure] below depicts the overall structure
 of the Boost Spirit library. The library consists out of 4 major parts:
 
 * __classic__: This is the almost unchanged code base taken from the
@@ -58,15 +60,138 @@
 with any of the other parts. Because of their similar structure and identical
 underlying technology these are usable either separately or together at the
 same time. For instance is it possible to directly feed the hierarchical data
-structures generated by __qi__ into output generators created using __karma__.
+structures generated by __qi__ into output generators created using __karma__;
+or to use the token sequence generated by __lex__ as the input for a parser
+generated by __qi__.
 
 
-The [link spirit.spiritkarmaflow picture] below shows the typical data flow of
+The [link spirit.spiritkarmaflow figure] below shows the typical data flow of
 some input being converted to some internal representation. After some
-(optional) transformation this data is converted back into some external
-representation. The picture highlights the place in this data transformation
-flow where __spirit__ can be used.
-
-[fig ./images/spiritkarmaflow.png..The place of __qi__ and __karma__ in a typical data transformation application..spirit.spiritkarmaflow]
+(optional) transformation this data is converted back into some different,
+external representation. The picture highlights Spirit's the place in this data
+transformation flow.
+
+[fig ./images/spiritkarmaflow.png..The place of __qi__ and __karma__ in a data transformation flow of a typical application..spirit.spiritkarmaflow]
+
+[heading A quick overview about Parsing with __qi__]
+
+__qi__ is Spirit's sublibrary dealing with generating parsers based on a given
+target grammar (essentially a format description of the input data to read).
+
+A simple EBNF grammar snippet:
+
+ group ::= '(' expression ')'
+ factor ::= integer | group
+ term ::= factor (('*' factor) | ('/' factor))*
+ expression ::= term (('+' term) | ('-' term))*
+
+is approximated using facilities of Spirit's /Qi/ sublibrary as seen in this
+code snippet:
+
+ group = '(' >> expression >> ')';
+ factor = integer | group;
+ term = factor >> *(('*' >> factor) | ('/' >> factor));
+ expression = term >> *(('+' >> term) | ('-' >> term));
+
+Through the magic of expression templates, this is perfectly valid and
+executable C++ code. The production rule `expression` is in fact an object that
+has a member function parse that does the work given a source code written in
+the grammar that we have just declared. Yes, it's a calculator. We shall
+simplify for now by skipping the type declarations and the definition of the
+rule integer invoked by factor. Now, the production rule `expression` in our
+grammar specification, traditionally called the start symbol, can recognize
+inputs such as:
+
+ 12345
+ -12345
+ +12345
+ 1 + 2
+ 1 * 2
+ 1/2 + 3/4
+ 1 + 2 + 3 + 4
+ 1 * 2 * 3 * 4
+ (1 + 2) * (3 + 4)
+ (-1 + 2) * (3 + -4)
+ 1 + ((6 * 200) - 20) / 6
+ (1 + (2 + (3 + (4 + 5))))
+
+Certainly we have done some modifications to the original EBNF syntax. This is
+done to conform to C++ syntax rules. Most notably we see the abundance of
+shift >> operators. Since there are no 'empty' operators in C++, it is simply
+not possible to write something like:
+
+ a b
+
+as seen in math syntax, for example, to mean multiplication or, in our case,
+as seen in EBNF syntax to mean sequencing (b should follow a). Spirit
+uses the shift `>>` operator instead for this purpose. We take the `>>` operator,
+with arrows pointing to the right, to mean "is followed by". Thus we write:
+
+ a >> b
+
+The alternative operator `|` and the parentheses `()` remain as is. The
+assignment operator `=` is used in place of EBNF's `::=`. Last but not least,
+the Kleene star `*` which used to be a postfix operator in EBNF becomes a
+prefix. Instead of:
+
+ a* //... in EBNF syntax,
+
+we write:
+
+ *a //... in Spirit.
+
+since there are no postfix stars, `*`, in C/C++. Finally, we terminate each
+rule with the ubiquitous semi-colon, `;`.
+
+
+[heading A quick overview about Output Generation with __karma__]
+
+Spirit not only allows to describe the structure of the input. Starting with
+Version 2.0 it enables the specification of the output format for your data
+in a very similar way, and based on a single syntax and compatible semantics.
+
+Let's assume we need to generate a textual representation from a simple data
+structure as a `std::vector<int>`. Conventional code probably would look like:
+
+ std::vector<int> v (initialize_and_fill());
+ std::vector<int>::iterator end = v.end();
+ for (std::vector<int>::iterator it = v.begin(); it != end; ++it)
+ std::cout << *it << std::endl;
+
+which is not very flexible and quite difficult to maintain when it comes to
+changing the required output format. Spirit's sublibrary /Karma/ allows to
+specify output formats for arbitrary data structures in a very flexible way.
+following snippet is the /Karma/ format description used to create the very
+The same output as the traditional code above:
+
+ *(int_ << eol)
+
+Here are some more examples of format descriptions for different output
+representations of the same `std::vector<int>`:
+
+[table Different output formats for `std::vector<int>`
+ [ [Format] [Example] [Description] ]
+ [ [`'[' << *(int_ << ',') << ']'`] [`[1,8,10,]`] [Comma separated list of integers] ]
+ [ [`*('(' << int_ << ')' << ',')`] [`(1),(8),(10),]`] [Comma separated list of integers in parenthesis] ]
+ [ [`*hex`] [`18a`] [A list of hexadecimal numbers] ]
+ [ [`*(double_ << ',')`] [`1.0,8.0,10.0,`] [A list of floating point numbers] ]
+]
+
+The syntax is very similar to /Qi/ with the exception that we use the `<<`
+operator for output concatenation. This should be easy to understand as it
+follows the conventions used in the Standard's I/O streams.
+
+Another important feature of /karma/ is to allow to fully decouple the data
+type from the output format. You can use the same output format with different
+data types as long as these conforma conceptually. The next table gives some
+related examples.
+
+[table Different data types usable with the output format `(*int_ << eol)`
+ [ [Data type] ]
+ [ [`int i[4]`] [C style arrays] ]
+ [ [`std::vector<int>`] [Standard vector] ]
+ [ [`std::list<int>`] [Standard list] ]
+ [ [`boost::array<long, 20>`] [Boost array] ]
+]
 
 [endsect]

Modified: branches/CMake/release/libs/spirit/doc/lex.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,18 +6,18 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section __lex__]
+[section:lex __lex__]
 
 [include lex/introduction.qbk]
 
-[section __lex__ Tutorials]
+[section:tutorials __lex__ Tutorials]
 [include lex/lexer_tutorials.qbk]
 [include lex/lexer_quickstart1.qbk]
 [include lex/lexer_quickstart2.qbk]
 [include lex/lexer_quickstart3.qbk]
 [endsect]
 
-[section Abstracts]
+[section:abstracts Abstracts]
 [section Lexer Primitives]
 [include lex/lexer_primitives.qbk]
 [include lex/tokens_values.qbk]
@@ -31,11 +31,11 @@
 [include lex/lexer_states.qbk]
 [endsect]
 
-[section Quick Reference]
+[section:quick_reference Quick Reference]
 [endsect]
 
-[section Reference]
-[section Concepts]
+[section:reference Reference]
+[section:concepts Concepts]
 [include reference/lex/lexer.qbk]
 [include reference/lex/token.qbk]
 [include reference/lex/tokendef.qbk]

Modified: branches/CMake/release/libs/spirit/doc/lex/introduction.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/introduction.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/introduction.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Introduction to __lex__]
+[section:lexer_introduction Introduction to __lex__]
 
 Lexical scanning is the process of analyzing the stream of input characters and
 separating it into strings called tokens, separated by whitespace.
@@ -49,7 +49,7 @@
 * Type 3: Regular grammars
 
 The complexity of these grammars increases from regular grammars being the
-simplest to unrestricted grammars being the most complex. Similarily, the
+simplest to unrestricted grammars being the most complex. Similarly, the
 complexity of the recognizers for these grammars increases. Although, a few
 features of some programming languages (such as C++) are Type 1, fortunately
 for the most part programming languages can be described using only the Types 3
@@ -134,4 +134,21 @@
 generators (such as __re2c__, __ragel__, etc.). But it is very flexible and
 allows to speed up the development of your application.
 
+[heading The Library Structure of __lex__]
+
+The [link spirit.lexerflow figure] below shows a high level overview of how the
+__lex__ library might be used in an application. __lex__ allows to create
+lexical analyzers based on patterns. These patterns are regular expression
+based rules used to define the different tokens to be recognized in the
+character input sequence. The input sequence is expected to be provided to the
+lexical analyzer as an arbitrary standard forward iterator. The lexical
+analyzer itself exposes a standard forward iterator as well. The difference
+here is that the exposed iterator provides access to the token sequence instead
+of to the character sequence. The tokens in this sequence are constructed on
+the fly by analyzing the underlying character sequence and
+matching this to the patterns as defined by the application.
+
+[fig ./images/lexerflow.png..The Library structure and Common Flow of Information while using __lex__ in an application..spirit.lexerflow]
+
+
 [endsect]

Modified: branches/CMake/release/libs/spirit/doc/lex/lexer_attributes.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/lexer_attributes.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/lexer_attributes.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Lexer Attributes]
+[section:lexer_attributes Lexer Attributes]
 
 
 [endsect]

Modified: branches/CMake/release/libs/spirit/doc/lex/lexer_primitives.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/lexer_primitives.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/lexer_primitives.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,9 +6,10 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Lexer Primitives]
+[section:lexer_primitives Lexer Primitives]
 
 [/ Describe the primitive lexer constructs, such as token_def, token_set? ]
+
 [/ Describe the primitive lexer constructs usable in parsers, such as
    in_state[], set_state(), token(), etc. ]
 

Modified: branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart1.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart1.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart1.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Quickstart 1 - A word counter using __lex__]
+[section:lexer_quickstart1 Quickstart 1 - A word counter using __lex__]
 
 __lex__ is very modular, which follows the general building principle of the
 __spirit__ libraries. You never pay for features you don't use. It is nicely

Modified: branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart2.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart2.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart2.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Quickstart 2 - A better word counter using __lex__]
+[section:lexer_quickstart2 Quickstart 2 - A better word counter using __lex__]
 
 People knowing __flex__ will probably complain about the example from the
 section __sec_lex_quickstart_1__ as being overly complex and not being

Modified: branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart3.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart3.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/lexer_quickstart3.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Quickstart 3 - Counting Words Using a Parser]
+[section:lexer_quickstart3 Quickstart 3 - Counting Words Using a Parser]
 
 The whole purpose of integrating __lex__ as part of the __spirit__ library was
 to add a library allowing to merge lexical analysis with the parsing

Modified: branches/CMake/release/libs/spirit/doc/lex/lexer_semantic_actions.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/lexer_semantic_actions.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/lexer_semantic_actions.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,5 +6,5 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Lexer Semantic Actions]
+[section:lexer_semantic_actions Lexer Semantic Actions]
 [endsect]

Modified: branches/CMake/release/libs/spirit/doc/lex/lexer_states.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/lexer_states.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/lexer_states.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Lexer States]
+[section:lexer_states Lexer States]
 
 
 [heading Controlling the Lexer State from Lexer Semantic Actions]

Modified: branches/CMake/release/libs/spirit/doc/lex/lexer_static_model.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/lexer_static_model.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/lexer_static_model.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section The /Static/ Lexer Model]
+[section:lexer_static_model The /Static/ Lexer Model]
 
 The documentation of __lex__ so far mostly was about describing the features of
 the /dynamic/ model, where the tables needed for lexical analysis are generated

Modified: branches/CMake/release/libs/spirit/doc/lex/lexer_tutorials.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/lexer_tutorials.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/lexer_tutorials.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section __lex__ Tutorials Overview]
+[section:lexer_tutorials __lex__ Tutorials Overview]
 
 The __lex__ library implements several components on top of possibly different
 lexer generator libraries. It exposes a pair of iterators, which, when

Modified: branches/CMake/release/libs/spirit/doc/lex/parsing_using_a_lexer.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/parsing_using_a_lexer.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/parsing_using_a_lexer.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Parsing using a Lexer]
+[section:lexer_parsing Parsing using a Lexer]
 
 [/ write about integration of lexer component with __qi__]
 

Modified: branches/CMake/release/libs/spirit/doc/lex/token_definition.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/token_definition.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/token_definition.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,6 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Ways to define Tokens]
+[section:lexer_token_definition Ways to define Tokens]
 
 [endsect]

Modified: branches/CMake/release/libs/spirit/doc/lex/tokenizing.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/tokenizing.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/tokenizing.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Tokenizing Input Data]
+[section:lexer_tokenizing Tokenizing Input Data]
 
 [heading The tokenize() function]
 

Modified: branches/CMake/release/libs/spirit/doc/lex/tokens_values.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/lex/tokens_values.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/lex/tokens_values.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section About Tokens and Token Values]
+[section:lexer_token_values About Tokens and Token Values]
 
 As already discussed, lexical scanning is the process of analyzing the stream
 of input characters and separating it into strings called tokens, most of the

Modified: branches/CMake/release/libs/spirit/doc/qi_and_karma.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/qi_and_karma.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/qi_and_karma.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,7 +8,20 @@
 
 [section Qi and Karma]
 
-[include qi_and_karma/tutorials.qbk]
+[section Tutorials]
+[include qi_and_karma/tutorial_intro.qbk]
+[include qi_and_karma/warming_up.qbk]
+[include qi_and_karma/actions.qbk]
+[include qi_and_karma/complex.qbk]
+[include qi_and_karma/sum_tutorial.qbk]
+[include qi_and_karma/num_list2.qbk]
+[include qi_and_karma/num_list3.qbk]
+[include qi_and_karma/num_list4.qbk]
+[include qi_and_karma/roman.qbk]
+[include qi_and_karma/employee.qbk]
+[include qi_and_karma/mini_xml.qbk]
+[include qi_and_karma/error_handling.qbk]
+[endsect]
 
 [section Abstracts]
 [include qi_and_karma/peg.qbk]

Modified: branches/CMake/release/libs/spirit/doc/qi_and_karma/error_handling.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/qi_and_karma/error_handling.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/qi_and_karma/error_handling.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,5 +6,116 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ===============================================================================/]
 
-[section Error Handling]
+[section Mini XML - Error Handling]
+
+A parser will not be complete without error handling. Spirit2 provides some
+facilities to make it easy to adapt a grammar for error handling. We'll wrap up
+the Qi tutorial with another version of the mini xml parser, this time, with
+error handling.
+
+[@../../example/qi/mini_xml1.cpp] and here: [@../../example/qi/mini_xml2.cpp]
+
+[import ../../example/qi/mini_xml3.cpp]
+
+Here's the grammar:
+
+[tutorial_xml3_grammar]
+
+What's new?
+
+[heading Readable Names]
+
+First, when we call the base class, we give the grammar a name:
+
+ : mini_xml_grammar::base_type(xml, "xml")
+
+Then, we name all our rules:
+
+ xml.name("xml");
+ node.name("node");
+ text.name("text");
+ start_tag.name("start_tag");
+ end_tag.name("end_tag");
+
+[heading On Error]
+
+`on_error` declares our error handler:
+
+ on_error<Action>(rule, handler)
+
+This will specify what we will do when we get an error. We will print out an
+error message using phoenix:
+
+ on_error<fail>
+ (
+ xml
+ , std::cout
+ << val("Error! Expecting ")
+ << _4 // what failed?
+ << val(" here: \"")
+ << construct<std::string>(_3, _2) // iterators to error-pos, end
+ << val("\"")
+ << std::endl
+ );
+
+we choose to `fail` in our example for the `Action`: Quit and fail. Return a
+no_match (false). It can be one of:
+
+[table
+ [[`Action`] [Description]]
+ [[fail] [Quit and fail. Return a no_match.]]
+ [[retry] [Attempt error recovery, possibly moving the iterator position.]]
+ [[accept] [Force success, moving the iterator position appropriately.]]
+ [[rethrow] [Rethrows the error.]]
+]
+
+
+`rule` is the rule we attach the handler to. In our case, we are attaching to the
+`xml` rule.
+
+`handler` is the actual error handling function. It expects 4 arguments:
+
+[table
+ [[Arg] [Description]]
+ [[first] [The position of the iterator when the rule with the handler was entered.]]
+ [[last] [The end of input.]]
+ [[error-pos] [The actual position of the iterator where the error occurred.]]
+ [[what] [What failed: a string decribing the failure.]]
+]
+
+[heading Expectation Points]
+
+You might not have noticed it, but some of our expressions changed from using
+the `>>` to `>`. Look, for example:
+
+ end_tag =
+ "</"
+ > lit(_r1)
+ > '>'
+ ;
+
+What is it? It's the /expectation/ operator. You will have some "deterministic
+points" in the grammar. Those are the places where backtracking *cannot* occur.
+For our example above, when you get a `"</"`, you definitely must see a valid
+end-tag label next. It should be the one you got from the start-tag. After that,
+you definitely must have a `'>'` next. Otherwise, there is no point in
+proceeding forward and trying other branches, regardless where they are. The
+input is definitely erroneous. When this happens, an expectation_failure
+exception is thrown. Somewhere outward, the error handler will catch the
+exception.
+
+Try building the parser: [@../../example/qi/mini_xml2.cpp]. You can find some
+examples in: [@../../example/qi/mini_xml_samples] for testing purposes.
+"4.toyxml" has an error in it:
+
+ <foo><bar></foo></bar>
+
+Running the example with this gives you:
+
+ Error! Expecting "bar" here: "foo></bar>"
+ Error! Expecting end_tag here: "<bar></foo></bar>"
+ -------------------------
+ Parsing failed
+ -------------------------
+
 [endsect]

Deleted: branches/CMake/release/libs/spirit/doc/qi_and_karma/tutorials.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/qi_and_karma/tutorials.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,10 +0,0 @@
-[/==============================================================================
- Copyright (C) 2001-2008 Joel de Guzman
- Copyright (C) 2001-2008 Hartmut Kaiser
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-===============================================================================/]
-
-[section Tutorials]
-[endsect]

Modified: branches/CMake/release/libs/spirit/doc/spirit2.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/spirit2.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/spirit2.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -24,8 +24,9 @@
 [/ Some links ]
 
 [def __spirit__ [@http://spirit.sourceforge.net Spirit]]
-[def __phoenix__ [@http://boost.org/libs/spirit/phoenix/index.html Phoenix]]
-[def __phoenix2__ [@http://spirit.sourceforge.net/dl_more/phoenix_v2/libs/spirit/phoenix/doc/html/index.html Phoenix2]]
+[def __spirit_list__ [@http://www.nabble.com/The-Spirit-Parser-Library-f3430.html Spirit General List]]
+[def __phoenix__ [@../../phoenix/doc/html/index.html Phoenix]]
+[def __phoenix2__ [@../../phoenix/doc/html/index.html Phoenix2]]
 [def __fusion__ [@http://spirit.sourceforge.net/dl_more/fusion_v2/libs/fusion/doc/html/index.html Fusion]]
 [def __mpl__ [@http://www.boost.org/libs/mpl/index.html MPL]]
 [def __boost_tuples__ [@http://www.boost.org/libs/tuple/index.html Boost.Tuples]]
@@ -49,8 +50,10 @@
 [def __re2c__ [@http://re2c.sourceforge.net/ re2c]]
 [def __ragel__ [@http://www.cs.queensu.ca/~thurston/ragel/ Ragel]]
 
-[def __boost_variant__ [@http://www.boost.org/doc/html/variant.html `boost::variant<>`]]
+[def __boost_variant__ [@http://www.boost.org/doc/html/variant.html `boost.variant<>`]]
 [def __boost_iterator_range__ [@http://www.boost.org/libs/range/doc/utility_class.html#iter_range `boost::iterator_range<>`]]
+[def __boost_bind__ [@http://www.boost.org/libs/bind/index.html Boost.Bind]]
+[def __boost_lambda__ [@http://www.boost.org/libs/lambda/index.html Boost.Lambda]]
 
 
 [def __classic__ /Spirit.Classic/]
@@ -67,52 +70,52 @@
 [def __sec_qi_and_karma__ [link spirit.qi_and_karma Qi and Karma]]
 [def __sec_qi_karma_attributes__ [link spirit.qi_and_karma.abstracts.attributes Attributes]]
 
-[def __sec_lex__ [link spirit.__lex__ Lex]]
-[def __sec_lex_quickstart_1__ [link spirit.__lex__.__lex___tutorials.quickstart_1___a_word_counter_using___lex__ Lex Quickstart 1 - A word counter using __lex__]]
-[def __sec_lex_quickstart_2__ [link spirit.__lex__.__lex___tutorials.quickstart_2___a_better_word_counter_using___lex__ Lex Quickstart 2 - A better word counter using __lex__]]
-[def __sec_lex_quickstart_3__ [link spirit.__lex__.__lex___tutorials.quickstart_3___counting_words_using_a_parser Lex Quickstart 3 - Counting Words Using a Parser]]
-
-[def __sec_lex_static_model__ [link spirit.__lex__.abstracts.the__static__lexer_model The /Static/ Model]]
-[def __sec_lex_primitives__ [link spirit.__lex__.abstracts.lexer_primitives Lexer Primitives]]
-[def __sec_lex_tokenvalues__ [link spirit.__lex__.abstracts.lexer_primitives.about_tokens_and_token_values About Tokens and Token Values]]
-[def __sec_lex_attributes__ [link spirit.__lex__.abstracts.lexer_attributes Lexer Attributes]]
+[def __sec_lex__ [link spirit.lex Lex]]
+[def __sec_lex_quickstart_1__ [link spirit.lex.tutorials.lexer_quickstart1 Lex Quickstart 1 - A word counter using __lex__]]
+[def __sec_lex_quickstart_2__ [link spirit.lex.tutorials.lexer_quickstart2 Lex Quickstart 2 - A better word counter using __lex__]]
+[def __sec_lex_quickstart_3__ [link spirit.lex.tutorials.lexer_quickstart3 Lex Quickstart 3 - Counting Words Using a Parser]]
+
+[def __sec_lex_static_model__ [link spirit.lex.abstracts.lexer_static_model The /Static/ Model]]
+[def __sec_lex_primitives__ [link spirit.lex.abstracts.lexer_primitives Lexer Primitives]]
+[def __sec_lex_tokenvalues__ [link spirit.lex.abstracts.lexer_primitives.lexer_token_values About Tokens and Token Values]]
+[def __sec_lex_attributes__ [link spirit.lex.abstracts.lexer_attributes Lexer Attributes]]
 
-[def __sec_ref_lex_token__ [link spirit.__lex__.reference.concepts.token Token Reference]]
-[def __sec_ref_lex_token_def__ [link spirit.__lex__.reference.concepts.tokendef TokenDef Reference]]
+[def __sec_ref_lex_token__ [link spirit.lex.reference.concepts.token Token Reference]]
+[def __sec_ref_lex_token_def__ [link spirit.lex.reference.concepts.tokendef TokenDef Reference]]
 
 [/ References to API descriptions ]
 
 [def __api_tokenize_and_parse__ [link spirit.qi_and_karma.abstracts.parsing_and_generating.the_tokenize_and_phrase_parse___function `tokenize_and_parse()`]]
-[def __api_generate_static__ [link spirit.__lex__.abstracts.tokenizing_input_data.the_generate_static___function `generate_static()`]]
+[def __api_generate_static__ [link spirit.lex.abstracts.tokenizing_input_data.the_generate_static___function `generate_static()`]]
 
 
 [/ References to classes ]
 
-[def __class_token_def__ [link spirit.__lex__.reference.tokendef_class `token_def<>`]]
+[def __class_token_def__ [link spirit.lex.reference.tokendef_class `token_def<>`]]
 
-[def __class_lexertl_token__ [link spirit.__lex__.reference.token_class `lexertl_token<>`]]
-[def __class_lexertl_lexer__ [link spirit.__lex__.reference.lexer_class.the_lexertl_lexer_class_implementing_the_dynamic_model `lexertl_lexer<>`]]
-[def __class_lexertl_static_lexer__ [link spirit.__lex__.reference.lexer_class.the_lexertl_static_lexer_class_implementing_the_static_model `lexertl_static_lexer<>`]]
+[def __class_lexertl_token__ [link spirit.lex.reference.token_class `lexertl_token<>`]]
+[def __class_lexertl_lexer__ [link spirit.lex.reference.lexer_class.the_lexertl_lexer_class_implementing_the_dynamic_model `lexertl_lexer<>`]]
+[def __class_lexertl_static_lexer__ [link spirit.lex.reference.lexer_class.the_lexertl_static_lexer_class_implementing_the_static_model `lexertl_static_lexer<>`]]
 
 
 [/ Some images ]
 
-[def __note__ [$../../../../doc/html/images/adm_note.png]]
-[def __tip__ [$../../../../doc/html/images/adm_tip.png]]
-[def __important__ [$../../../../doc/html/images/adm_important.png]]
-[def __caution__ [$../../../../doc/html/images/adm_caution.png]]
-[def __danger__ [$../../../../doc/html/images/adm_danger.png]]
+[def __note__ [$images/note.png]]
+[def __tip__ [$images/tip.png]]
+[def __important__ [$images/important.png]]
+[def __caution__ [$images/caution.png]]
+[def __danger__ [$images/alert.png]]
 
 
 [/ some templates]
 
-[/ fig[ref title label]
- Image element with a title.
+[/ fig[ref title label]
+ Image element with a title.
 
- ref := Reference to the image file.
- title := The title to associate with this figure.
+ ref := Reference to the image file.
+ title := The title to associate with this figure.
     label := the id to use to be able to reference this picture
-]
+]
 [template fig[ref title label]'''
     <figure id="'''[label]'''">
         <title>'''[title]'''</title>
@@ -125,7 +128,7 @@
             </textobject>
         </inlinemediaobject>
     </figure>
-''']
+''']
 
 
 [/ Here we go ]

Modified: branches/CMake/release/libs/spirit/doc/what_s_new.qbk
==============================================================================
--- branches/CMake/release/libs/spirit/doc/what_s_new.qbk (original)
+++ branches/CMake/release/libs/spirit/doc/what_s_new.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,36 +10,36 @@
 
 [heading Spirit Classic]
 
-The Spirit V1.8.x code base has been integrated with Spirit V2. It is now called
-__classic__. Even if the directory structure has changed (the Spirit Classic
-headers are now moved to the '$BOOST_ROOT/boost/spirit/home/classic' directory),
-we created forwarding headers allowing to compile existing applications without
-any change. These forwarding headers are deprecated, though, which will result
-in corresponding warnings generated for each of the headers starting with Boost
-V1.38. The forwarding headers are expected to be removed in the future.
-
-The recommended way of using Spirit Classic now is to include header files from
-the directory '$BOOST_ROOT/boost/spirit/include'. All files of Spirit Classic
-in this directory have a 'classic_' prefixed to their name. For example the
-include
+The Spirit V1.8.x code base has been integrated with Spirit V2. It is now called
+__classic__. Even if the directory structure has changed (the Spirit Classic
+headers are now moved to the '''$BOOST_ROOT/boost/spirit/home/classic''' directory),
+we created forwarding headers allowing to compile existing applications without
+any change. These forwarding headers are deprecated, though, which will result
+in corresponding warnings generated for each of the headers starting with Boost
+V1.38. The forwarding headers are expected to be removed in the future.
+
+The recommended way of using Spirit Classic now is to include header files from
+the directory '''$BOOST_ROOT/boost/spirit/include'''. All files of Spirit Classic
+in this directory have a 'classic_' prefixed to their name. For example the
+include
 
     #include <boost/spirit/core/core.hpp>
 
-now should be written as:
+now should be written as:
 
     #include <boost/spirit/include/classic_core.hpp>
 
-To avoid namespace conflicts with the new Spirit V2 library we moved Spirit Classic
-into the namespace `boost::spirit::classic`. All references to the former
+To avoid namespace conflicts with the new Spirit V2 library we moved Spirit Classic
+into the namespace `boost::spirit::classic`. All references to the former
 namespace `boost::spirit` need to be adjusted as soon as the header names are
-corrected as described above. As an alternative you can define the preprocessor
-constant `BOOST_SPIRIT_USE_OLD_NAMESPACE`, which will force the Spirit Classic
-code to be in the namespace `boost::spirit` as before. This is not recommended,
+corrected as described above. As an alternative you can define the preprocessor
+constant `BOOST_SPIRIT_USE_OLD_NAMESPACE`, which will force the Spirit Classic
+code to be in the namespace `boost::spirit` as before. This is not recommended,
 though, as it may result in naming clashes.
 
-The change of the namespace will be automatically deactivated whenever the
-deprecated include files are being used. This ensures full backwards
-compatibility for existing applications.
+The change of the namespace will be automatically deactivated whenever the
+deprecated include files are being used. This ensures full backwards
+compatibility for existing applications.
 
 
 [endsect]

Modified: branches/CMake/release/libs/spirit/example/karma/actions.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/karma/actions.cpp (original)
+++ branches/CMake/release/libs/spirit/example/karma/actions.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,7 +12,7 @@
 #include <boost/bind.hpp>
 
 #include <iostream>
-#include <strstream>
+#include <sstream>
 
 // Presented are various ways to attach semantic actions
 // * Using plain function pointer

Modified: branches/CMake/release/libs/spirit/example/karma/calc2_ast_dump.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/karma/calc2_ast_dump.cpp (original)
+++ branches/CMake/release/libs/spirit/example/karma/calc2_ast_dump.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -32,9 +32,9 @@
 // Our calculator parser grammar
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct calculator : qi::grammar_def<Iterator, expression_ast(), space_type>
+struct calculator : qi::grammar<Iterator, expression_ast(), space_type>
 {
- calculator()
+ calculator() : calculator::base_type(expression)
     {
         expression =
             term [_val = _1]
@@ -66,9 +66,9 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename OuputIterator>
 struct dump_ast
- : karma::grammar_def<OuputIterator, expression_ast(), space_type>
+ : karma::grammar<OuputIterator, expression_ast(), space_type>
 {
- dump_ast()
+ dump_ast() : dump_ast::base_type(ast_node)
     {
         ast_node %=
                 int_ [_1 = _int(_val)]
@@ -111,15 +111,13 @@
     typedef std::string::const_iterator iterator_type;
     typedef calculator<iterator_type> calculator;
 
- calculator def;
- qi::grammar<calculator> calc(def, def.expression);
+ calculator calc;
 
     // Our generator grammar definitions
     typedef std::back_insert_iterator<std::string> output_iterator_type;
     typedef dump_ast<output_iterator_type> dump_ast;
-
- dump_ast dump_ast_def;
- karma::grammar<dump_ast> ast_grammar(dump_ast_def, dump_ast_def.ast_node);
+
+ dump_ast ast_grammar;
 
     std::string str;
     while (std::getline(std::cin, str))

Modified: branches/CMake/release/libs/spirit/example/karma/calc2_ast_rpn.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/karma/calc2_ast_rpn.cpp (original)
+++ branches/CMake/release/libs/spirit/example/karma/calc2_ast_rpn.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -32,9 +32,9 @@
 // Our calculator parser grammar
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct calculator : qi::grammar_def<Iterator, expression_ast(), space_type>
+struct calculator : qi::grammar<Iterator, expression_ast(), space_type>
 {
- calculator()
+ calculator() : calculator::base_type(expression)
     {
         expression =
             term [_val = _1]
@@ -67,9 +67,9 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename OuputIterator>
 struct ast_rpn
- : karma::grammar_def<OuputIterator, expression_ast(), space_type>
+ : karma::grammar<OuputIterator, expression_ast(), space_type>
 {
- ast_rpn()
+ ast_rpn() : ast_rpn::base_type(ast_node)
     {
         ast_node %=
                 int_ [_1 = _int(_val)]
@@ -114,15 +114,13 @@
     typedef std::string::const_iterator iterator_type;
     typedef calculator<iterator_type> calculator;
 
- calculator def;
- qi::grammar<calculator> calc(def, def.expression);
+ calculator calc;
 
     // Our generator grammar definitions
     typedef std::back_insert_iterator<std::string> output_iterator_type;
     typedef ast_rpn<output_iterator_type> ast_rpn;
     
- ast_rpn ast_rpn_def;
- karma::grammar<ast_rpn> ast_grammar(ast_rpn_def, ast_rpn_def.ast_node);
+ ast_rpn ast_grammar;
 
     std::string str;
     while (std::getline(std::cin, str))

Modified: branches/CMake/release/libs/spirit/example/karma/calc2_ast_vm.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/karma/calc2_ast_vm.cpp (original)
+++ branches/CMake/release/libs/spirit/example/karma/calc2_ast_vm.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -34,9 +34,9 @@
 // Our calculator parser grammar
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct calculator : qi::grammar_def<Iterator, expression_ast(), space_type>
+struct calculator : qi::grammar<Iterator, expression_ast(), space_type>
 {
- calculator()
+ calculator() : calculator::base_type(expression)
     {
         expression =
             term [_val = _1]
@@ -133,9 +133,9 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename OuputIterator, typename Delimiter>
 struct generate_byte_code
- : karma::grammar_def<OuputIterator, expression_ast(), Delimiter>
+ : karma::grammar<OuputIterator, expression_ast(), Delimiter>
 {
- generate_byte_code()
+ generate_byte_code() : generate_byte_code::base_type(ast_node)
     {
         ast_node %=
                 (dword(op_int) << dword) [_1 = _int(_val)]
@@ -172,11 +172,8 @@
     // Our generator grammar definitions
     typedef char* output_iterator_type;
     typedef generate_byte_code<output_iterator_type, Delimiter> generate_byte_code;
-
- generate_byte_code generate_byte_code_def;
- karma::grammar<generate_byte_code> gen_vm(
- generate_byte_code_def, generate_byte_code_def.ast_node);
 
+ generate_byte_code gen_vm;
     return karma::generate_delimited((*code.begin()).bytes, gen_vm, ast, d);
 }
 
@@ -195,8 +192,7 @@
     typedef std::string::const_iterator iterator_type;
     typedef calculator<iterator_type> calculator;
 
- calculator def;
- qi::grammar<calculator> calc(def, def.expression);
+ calculator calc;
 
     std::string str;
     while (std::getline(std::cin, str))

Modified: branches/CMake/release/libs/spirit/example/karma/mini_xml_karma.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/karma/mini_xml_karma.cpp (original)
+++ branches/CMake/release/libs/spirit/example/karma/mini_xml_karma.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -71,9 +71,9 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
 struct mini_xml_parser :
- qi::grammar_def<Iterator, mini_xml(), space_type>
+ qi::grammar<Iterator, mini_xml(), space_type>
 {
- mini_xml_parser()
+ mini_xml_parser() : mini_xml_parser::base_type(xml)
     {
         text = lexeme[+(char_ - '<') [_val += _1]];
         node = (xml | text) [_val = _1];
@@ -128,9 +128,9 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename OutputIterator>
 struct mini_xml_generator
- : karma::grammar_def<OutputIterator, mini_xml()>
+ : karma::grammar<OutputIterator, mini_xml()>
 {
- mini_xml_generator()
+ mini_xml_generator() : mini_xml_generator::base_type(xml)
     {
         node %=
                 lit[_1 = _string(_r0)]
@@ -180,8 +180,7 @@
         std::back_inserter(storage));
 
     typedef mini_xml_parser<std::string::const_iterator> mini_xml_parser;
- mini_xml_parser def; // Our grammar definition
- qi::grammar<mini_xml_parser> xmlin(def, def.xml); // Our grammar
+ mini_xml_parser xmlin; // Our grammar definition
     mini_xml ast; // our tree
 
     std::string::const_iterator iter = storage.begin();
@@ -197,8 +196,7 @@
         typedef std::back_insert_iterator<std::string> outiter_type;
         typedef mini_xml_generator<outiter_type> mini_xml_generator;
 
- mini_xml_generator gen; // Our grammar definition
- karma::grammar<mini_xml_generator> xmlout(gen, gen.xml); // Our grammar
+ mini_xml_generator xmlout; // Our grammar definition
 
         std::string generated;
         bool r = karma::generate(std::back_inserter(generated), xmlout, ast);

Modified: branches/CMake/release/libs/spirit/example/lex/example1.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/lex/example1.cpp (original)
+++ branches/CMake/release/libs/spirit/example/lex/example1.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -61,10 +61,11 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
 struct example1_grammar
- : grammar_def<Iterator, in_state_skipper<token_def<> > >
+ : grammar<Iterator, in_state_skipper<token_def<> > >
 {
     template <typename TokenDef>
     example1_grammar(TokenDef const& tok)
+ : example1_grammar::base_type(start)
     {
         start = '{' >> *(tok.identifier >> -char_(',')) >> '}';
     }
@@ -97,10 +98,9 @@
     // now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process
     example1_tokens tokens; // Our token definition
- example1_grammar def (tokens); // Our grammar definition
+ example1_grammar calc(tokens); // Our grammar definition
 
     lexer<example1_tokens> lex(tokens); // Our lexer
- grammar<example1_grammar> calc(def); // Our parser
 
     std::string str (read_from_file("example1.input"));
 

Modified: branches/CMake/release/libs/spirit/example/lex/example2.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/lex/example2.cpp (original)
+++ branches/CMake/release/libs/spirit/example/lex/example2.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -63,11 +63,12 @@
 // Grammar definition
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct example2_grammar : grammar_def<Iterator>
+struct example2_grammar : grammar<Iterator>
 {
     template <typename TokenDef>
     example2_grammar(TokenDef const& tok)
- : paragraphs(0), commands(0), questions(0), statements(0)
+ : example2_grammar::base_type(story),
+ paragraphs(0), commands(0), questions(0), statements(0)
     {
         story
             = +paragraph
@@ -131,10 +132,9 @@
     // now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process
     example2_tokens tokens; // Our token definition
- example2_grammar def (tokens); // Our grammar definition
+ example2_grammar calc(tokens); // Our grammar definition
 
     lexer<example2_tokens> lex(tokens); // Our lexer
- grammar<example2_grammar> calc(def, def.story); // Our grammar
 
     std::string str (read_from_file("example2.input"));
 
@@ -153,9 +153,9 @@
         std::cout << "-------------------------\n";
         std::cout << "Parsing succeeded\n";
         std::cout << "There were "
- << def.commands << " commands, "
- << def.questions << " questions, and "
- << def.statements << " statements.\n";
+ << calc.commands << " commands, "
+ << calc.questions << " questions, and "
+ << calc.statements << " statements.\n";
         std::cout << "-------------------------\n";
     }
     else

Modified: branches/CMake/release/libs/spirit/example/lex/example3.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/lex/example3.cpp (original)
+++ branches/CMake/release/libs/spirit/example/lex/example3.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -73,10 +73,11 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator, typename Lexer>
 struct example3_grammar
- : grammar_def<Iterator, in_state_skipper<typename Lexer::token_set> >
+ : grammar<Iterator, in_state_skipper<typename Lexer::token_set> >
 {
     template <typename TokenDef>
     example3_grammar(TokenDef const& tok)
+ : example3_grammar::base_type(start)
     {
         start
             = +(couplet | tok.ellipses)
@@ -105,17 +106,17 @@
 {
     // iterator type used to expose the underlying input stream
     typedef std::string::iterator base_iterator_type;
-
+
     // This is the token type to return from the lexer iterator
     typedef lexertl_token<base_iterator_type> token_type;
-
+
     // This is the lexer type to use to tokenize the input.
     // Here we use the lexertl based lexer engine.
     typedef lexertl_lexer<token_type> lexer_type;
-
+
     // This is the token definition type (derived from the given lexer type).
     typedef example3_tokens<lexer_type> example3_tokens;
-
+
     // this is the iterator type exposed by the lexer
     typedef lexer<example3_tokens>::iterator_type iterator_type;
 
@@ -125,10 +126,9 @@
     // now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process
     example3_tokens tokens; // Our token definition
- example3_grammar def (tokens); // Our grammar definition
+ example3_grammar calc(tokens); // Our grammar definition
 
     lexer<example3_tokens> lex(tokens); // Our lexer
- grammar<example3_grammar> calc(def); // Our grammar
 
     std::string str (read_from_file("example3.input"));
 
@@ -137,7 +137,7 @@
     std::string::iterator it = str.begin();
     iterator_type iter = lex.begin(it, str.end());
     iterator_type end = lex.end();
-
+
     // Parsing is done based on the the token stream, not the character
     // stream read from the input.
     // Note, how we use the token_set defined above as the skip parser.

Modified: branches/CMake/release/libs/spirit/example/lex/example4.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/lex/example4.cpp (original)
+++ branches/CMake/release/libs/spirit/example/lex/example4.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -101,10 +101,11 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator, typename Lexer>
 struct example4_grammar
- : grammar_def<Iterator, in_state_skipper<typename Lexer::token_set> >
+ : grammar<Iterator, in_state_skipper<typename Lexer::token_set> >
 {
     template <typename TokenDef>
     example4_grammar(TokenDef const& tok)
+ : example4_grammar::base_type(program)
     {
         program
             = +block
@@ -202,10 +203,9 @@
     // now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process
     example4_tokens tokens; // Our token definition
- example4_grammar def (tokens); // Our grammar definition
+ example4_grammar calc(tokens); // Our grammar definition
 
     lexer<example4_tokens> lex(tokens); // Our lexer
- grammar<example4_grammar> calc(def, def.program); // Our grammar
 
     std::string str (read_from_file("example4.input"));
 

Modified: branches/CMake/release/libs/spirit/example/lex/example5.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/lex/example5.cpp (original)
+++ branches/CMake/release/libs/spirit/example/lex/example5.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -100,10 +100,11 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator, typename Lexer>
 struct example5_base_grammar
- : grammar_def<Iterator, in_state_skipper<typename Lexer::token_set> >
+ : grammar<Iterator, in_state_skipper<typename Lexer::token_set> >
 {
     template <typename TokenDef>
     example5_base_grammar(TokenDef const& tok)
+ : example5_base_grammar::base_type(program)
     {
         program
             = +block
@@ -150,7 +151,7 @@
     }
 
     typedef
- grammar_def<Iterator, in_state_skipper<typename Lexer::token_set> >
+ grammar<Iterator, in_state_skipper<typename Lexer::token_set> >
     base_type;
     typedef typename base_type::skipper_type skipper_type;
     
@@ -245,10 +246,9 @@
     // now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process
     example5_tokens tokens; // Our token definition
- example5_grammar def (tokens); // Our grammar definition
+ example5_grammar calc(tokens); // Our grammar definition
 
     lexer<example5_tokens> lex(tokens); // Our lexer
- grammar<example5_grammar> calc(def, def.program); // Our grammar
 
     std::string str (read_from_file("example5.input"));
 

Modified: branches/CMake/release/libs/spirit/example/lex/example6.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/lex/example6.cpp (original)
+++ branches/CMake/release/libs/spirit/example/lex/example6.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -122,10 +122,11 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator, typename Lexer>
 struct example6_grammar
- : grammar_def<Iterator, in_state_skipper<typename Lexer::token_set> >
+ : grammar<Iterator, in_state_skipper<typename Lexer::token_set> >
 {
     template <typename TokenDef>
     example6_grammar(TokenDef const& tok)
+ : example6_grammar::base_type(program)
     {
         program
             = +block
@@ -225,10 +226,9 @@
     // now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process
     example6_tokens tokens; // Our token definition
- example6_grammar def (tokens); // Our grammar definition
+ example6_grammar calc(tokens); // Our grammar definition
 
     lexer<example6_tokens> lex(tokens); // Our lexer
- grammar<example6_grammar> calc(def, def.program); // Our grammar
 
     std::string str (read_from_file("example6.input"));
 

Modified: branches/CMake/release/libs/spirit/example/lex/print_numbers.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/lex/print_numbers.cpp (original)
+++ branches/CMake/release/libs/spirit/example/lex/print_numbers.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -52,11 +52,11 @@
 ///////////////////////////////////////////////////////////////////////////////
 // Grammar definition
 ///////////////////////////////////////////////////////////////////////////////
-template <typename Iterator, typename Skipper>
-struct print_numbers_grammar : grammar_def<Iterator, Skipper>
+template <typename Iterator>
+struct print_numbers_grammar : grammar<Iterator>
 {
- template <typename Class>
- print_numbers_grammar(Class& self)
+ print_numbers_grammar()
+ : grammar<Iterator>(start)
     {
         start = *( token(lex::min_token_id) [ std::cout << _1 << "\n" ]
                   | token(lex::min_token_id+1)
@@ -90,7 +90,7 @@
     // now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process
     print_numbers_tokens<lexer_type> print_tokens; // Our token definition
- grammar_class<print_numbers_grammar> print; // Our grammar definition
+ print_numbers_grammar<iterator_type> print; // Our grammar definition
 
     // Parsing is done based on the the token stream, not the character
     // stream read from the input.

Modified: branches/CMake/release/libs/spirit/example/lex/static_lexer/word_count_static.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/lex/static_lexer/word_count_static.cpp (original)
+++ branches/CMake/release/libs/spirit/example/lex/static_lexer/word_count_static.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -44,11 +44,11 @@
 // definition class instance passed to the constructor to allow accessing the
 // embedded token_def<> instances.
 template <typename Iterator>
-struct word_count_grammar : grammar_def<Iterator>
+struct word_count_grammar : grammar<Iterator>
 {
     template <typename TokenDef>
     word_count_grammar(TokenDef const& tok)
- : c(0), w(0), l(0)
+ : grammar<Iterator>(start), c(0), w(0), l(0)
     {
         using boost::spirit::arg_names::_1;
         using boost::phoenix::ref;
@@ -92,8 +92,8 @@
 
     // Now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process.
- word_count_tokens<lexer_type> word_count; // Our token definition
- word_count_grammar<iterator_type> def (word_count); // Our grammar definition
+ word_count_tokens<lexer_type> word_count; // Our token definition
+ word_count_grammar<iterator_type> g (word_count); // Our grammar definition
 
     // Read in the file into memory.
     std::string str (read_from_file(1 == argc ? "word_count.input" : argv[1]));
@@ -101,12 +101,11 @@
     char const* last = &first[str.size()];
     
     // Parsing is done based on the the token stream, not the character stream.
- qi::grammar<word_count_grammar<iterator_type> > g(def);
     bool r = tokenize_and_parse(first, last, make_lexer(word_count), g);
 
     if (r) { // success
- std::cout << "lines: " << def.l << ", words: " << def.w
- << ", characters: " << def.c << "\n";
+ std::cout << "lines: " << g.l << ", words: " << g.w
+ << ", characters: " << g.c << "\n";
     }
     else {
         std::string rest(first, last);

Modified: branches/CMake/release/libs/spirit/example/lex/strip_comments.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/lex/strip_comments.cpp (original)
+++ branches/CMake/release/libs/spirit/example/lex/strip_comments.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -65,7 +65,7 @@
     void def (Self& self)
     {
         // define tokens and associate them with the lexer
- cppcomment = "//.*\n";
+ cppcomment = "//[^\n]*";
         ccomment = "/\\*";
         endcomment = "\\*/";
         
@@ -95,10 +95,11 @@
 // Grammar definition
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct strip_comments_grammar : grammar_def<Iterator>
+struct strip_comments_grammar : grammar<Iterator>
 {
     template <typename TokenDef>
     strip_comments_grammar(TokenDef const& tok)
+ : grammar<Iterator>(start)
     {
         // The in_state("COMMENT")[...] parser component switches the lexer
         // state to be 'COMMENT' during the matching of the embedded parser.
@@ -110,7 +111,7 @@
                               *token(IDANY) >> tok.endcomment
                           ]
                   | tok.cppcomment
- | token(IDANY)
+ | token(IDANY) [ std::cout << _1 ]
                   )
               ;
     }
@@ -134,15 +135,14 @@
 
     // now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process
- strip_comments_tokens<lexer_type> strip_comments; // Our token definition
- strip_comments_grammar<iterator_type> def (strip_comments); // Our grammar definition
+ strip_comments_tokens<lexer_type> strip_comments; // Our token definition
+ strip_comments_grammar<iterator_type> g (strip_comments); // Our grammar definition
 
     // Parsing is done based on the the token stream, not the character
     // stream read from the input.
     std::string str (read_from_file(1 == argc ? "strip_comments.input" : argv[1]));
     base_iterator_type first = str.begin();
 
- qi::grammar<strip_comments_grammar<iterator_type> > g(def);
     bool r = tokenize_and_parse(first, str.end(), make_lexer(strip_comments), g);
 
     if (r) {

Modified: branches/CMake/release/libs/spirit/example/lex/word_count.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/lex/word_count.cpp (original)
+++ branches/CMake/release/libs/spirit/example/lex/word_count.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -99,11 +99,11 @@
 ///////////////////////////////////////////////////////////////////////////////
 //[wcp_grammar_definition
 template <typename Iterator>
-struct word_count_grammar : grammar_def<Iterator>
+struct word_count_grammar : grammar<Iterator>
 {
     template <typename TokenDef>
     word_count_grammar(TokenDef const& tok)
- : c(0), w(0), l(0)
+ : grammar<Iterator>(start), c(0), w(0), l(0)
     {
         using boost::phoenix::ref;
         using boost::phoenix::size;
@@ -144,8 +144,8 @@
 
     // now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process
- word_count_tokens<lexer_type> word_count; // Our token definition
- word_count_grammar<iterator_type> def (word_count); // Our grammar definition
+ word_count_tokens<lexer_type> word_count; // Our token definition
+ word_count_grammar<iterator_type> g (word_count); // Our grammar definition
 
     // read in the file int memory
     std::string str (read_from_file(1 == argc ? "word_count.input" : argv[1]));
@@ -156,12 +156,11 @@
     // stream read from the input. The function `tokenize_and_parse()` wraps
     // the passed iterator range `[first, last)` by the lexical analyzer and
     // uses its exposed iterators to parse the toke stream.
- qi::grammar<word_count_grammar<iterator_type> > g(def);
     bool r = tokenize_and_parse(first, last, make_lexer(word_count), g);
 
     if (r) {
- std::cout << "lines: " << def.l << ", words: " << def.w
- << ", characters: " << def.c << "\n";
+ std::cout << "lines: " << g.l << ", words: " << g.w
+ << ", characters: " << g.c << "\n";
     }
     else {
         std::string rest(first, last);

Modified: branches/CMake/release/libs/spirit/example/qi/Jamfile
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/Jamfile (original)
+++ branches/CMake/release/libs/spirit/example/qi/Jamfile 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,22 +4,29 @@
 # Distributed under the Boost Software License, Version 1.0. (See accompanying
 # file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 #==============================================================================
-project spirit-qi-example ;
+project spirit-qi-example
+ : requirements <toolset>gcc:<cxxflags>-ftemplate-depth-300
+ :
+ :
+ ;
 
-exe actions : actions.cpp ;
+exe actions_ : actions.cpp ;
 exe sum : sum.cpp ;
 exe complex_number : complex_number.cpp ;
-exe employee : employee.cpp ;
+exe employee : employee.cpp ;
 exe roman : roman.cpp ;
 exe mini_xml1 : mini_xml1.cpp ;
 exe mini_xml2 : mini_xml2.cpp ;
-exe num_list : num_list.cpp ;
+exe num_list1 : num_list1.cpp ;
 exe num_list2 : num_list2.cpp ;
 exe num_list3 : num_list3.cpp ;
+exe num_list4 : num_list4.cpp ;
 
 exe calc1 : calc1.cpp ;
 exe calc2 : calc2.cpp ;
+exe calc2_ast : calc2_ast.cpp ;
 exe calc3 : calc3.cpp ;
+exe calc3_lexer : calc3_lexer.cpp ;
 exe calc4 : calc4.cpp ;
 exe calc5 : calc5.cpp ;
 

Modified: branches/CMake/release/libs/spirit/example/qi/actions.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/actions.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/actions.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -15,16 +15,29 @@
 // Presented are various ways to attach semantic actions
 // * Using plain function pointer
 // * Using simple function object
-// * Using boost.bind
+// * Using boost.bind with a plain function
+// * Using boost.bind with a member function
 // * Using boost.lambda
 
 using namespace boost::spirit;
 
+//[tutorial_semantic_action_functions
+// A plain function
 void write(int const& i)
 {
     std::cout << i << std::endl;
 }
 
+// A member function
+struct writer
+{
+ void print(int const& i) const
+ {
+ std::cout << i << std::endl;
+ }
+};
+
+// A function object
 struct write_action
 {
     void operator()(int const& i, unused_type, unused_type) const
@@ -32,32 +45,51 @@
         std::cout << i << std::endl;
     }
 };
+//]
 
 int main()
 {
     { // example using plain function
 
- char const *s1 = "{42}", *e1 = s1 + std::strlen(s1);
- qi::parse(s1, e1, '{' >> int_[&write] >> '}');
+ char const *first = "{42}", *last = first + std::strlen(first);
+ //[tutorial_attach_actions1
+ qi::parse(first, last, '{' >> int_[&write] >> '}');
+ //]
     }
 
     { // example using simple function object
 
- char const *s1 = "{43}", *e1 = s1 + std::strlen(s1);
- qi::parse(s1, e1, '{' >> int_[write_action()] >> '}');
+ char const *first = "{43}", *last = first + std::strlen(first);
+ //[tutorial_attach_actions2
+ qi::parse(first, last, '{' >> int_[write_action()] >> '}');
+ //]
+ }
+
+ { // example using boost.bind with a plain function
+
+ char const *first = "{44}", *last = first + std::strlen(first);
+ //[tutorial_attach_actions3
+ qi::parse(first, last, '{' >> int_[boost::bind(&write, _1)] >> '}');
+ //]
     }
 
- { // example using boost.bind
+ { // example using boost.bind with a member function
 
- char const *s1 = "{44}", *e1 = s1 + std::strlen(s1);
- qi::parse(s1, e1, '{' >> int_[boost::bind(&write, _1)] >> '}');
+ char const *first = "{44}", *last = first + std::strlen(first);
+ //[tutorial_attach_actions4
+ writer w;
+ qi::parse(first, last, '{' >> int_[boost::bind(&writer::print, &w, _1)] >> '}');
+ //]
     }
 
     { // example using boost.lambda
 
         namespace lambda = boost::lambda;
- char const *s1 = "{45}", *e1 = s1 + std::strlen(s1);
- qi::parse(s1, e1, '{' >> int_[std::cout << lambda::_1 << '\n'] >> '}');
+ char const *first = "{45}", *last = first + std::strlen(first);
+ using lambda::_1;
+ //[tutorial_attach_actions5
+ qi::parse(first, last, '{' >> int_[std::cout << _1 << '\n'] >> '}');
+ //]
     }
 
     return 0;

Modified: branches/CMake/release/libs/spirit/example/qi/calc1.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc1.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc1.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -27,9 +27,9 @@
 // Our calculator grammar
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct calculator : grammar_def<Iterator, space_type>
+struct calculator : grammar<Iterator, space_type>
 {
- calculator()
+ calculator() : calculator::base_type(expression)
     {
         expression =
             term
@@ -70,8 +70,7 @@
     typedef std::string::const_iterator iterator_type;
     typedef calculator<iterator_type> calculator;
 
- calculator def; // Our grammar definition
- grammar<calculator> calc(def, def.expression); // Our grammar
+ calculator calc; // Our grammar
 
     std::string str;
     while (std::getline(std::cin, str))

Modified: branches/CMake/release/libs/spirit/example/qi/calc2.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc2.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc2.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -42,9 +42,9 @@
 // Our calculator grammar
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct calculator : grammar_def<Iterator, space_type>
+struct calculator : grammar<Iterator, space_type>
 {
- calculator()
+ calculator() : calculator::base_type(expression)
     {
         expression =
             term
@@ -85,8 +85,7 @@
     typedef std::string::const_iterator iterator_type;
     typedef calculator<iterator_type> calculator;
 
- calculator def; // Our grammar definition
- grammar<calculator> calc(def, def.expression); // Our grammar
+ calculator calc; // Our grammar
 
     std::string str;
     while (std::getline(std::cin, str))

Modified: branches/CMake/release/libs/spirit/example/qi/calc2_ast.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc2_ast.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc2_ast.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -130,9 +130,9 @@
 // Our calculator grammar
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct calculator : grammar_def<Iterator, expression_ast(), space_type>
+struct calculator : grammar<Iterator, expression_ast(), space_type>
 {
- calculator()
+ calculator() : calculator::base_type(expression)
     {
         expression =
             term [_val = _1]
@@ -173,8 +173,7 @@
     typedef std::string::const_iterator iterator_type;
     typedef calculator<iterator_type> calculator;
 
- calculator def; // Our grammar definition
- grammar<calculator> calc(def, def.expression); // Our grammar
+ calculator calc; // Our grammar
 
     std::string str;
     while (std::getline(std::cin, str))

Modified: branches/CMake/release/libs/spirit/example/qi/calc3.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc3.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc3.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -31,9 +31,9 @@
 // Our calculator grammar
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct calculator : grammar_def<Iterator, int(), space_type>
+struct calculator : grammar<Iterator, int(), space_type>
 {
- calculator()
+ calculator() : calculator::base_type(expression)
     {
         expression =
             term [_val = _1]
@@ -74,8 +74,7 @@
     typedef std::string::const_iterator iterator_type;
     typedef calculator<iterator_type> calculator;
 
- calculator def; // Our grammar definition
- grammar<calculator> calc(def, def.expression); // Our grammar
+ calculator calc; // Our grammar
 
     std::string str;
     int result;

Modified: branches/CMake/release/libs/spirit/example/qi/calc3_lexer.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc3_lexer.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc3_lexer.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -88,10 +88,11 @@
 // use a defined tokenset from above as the skip parser.
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator, typename Lexer>
-struct calculator : grammar_def<Iterator, int(), typename Lexer::token_set>
+struct calculator : grammar<Iterator, int(), typename Lexer::token_set>
 {
     template <typename TokenDef>
- calculator(TokenDef const& tok)
+ calculator(TokenDef const& tok)
+ : calculator::base_type(expression)
     {
         // grammar
         expression =
@@ -143,7 +144,7 @@
     
     // This is the lexer type to use to tokenize the input.
     // Here we use the lexertl based lexer engine.
- typedef lexertl_lexer<base_iterator_type, token_type> lexer_type;
+ typedef lexertl_lexer<token_type> lexer_type;
     
     // This is the token definition type (derived from the given lexer type).
     typedef calculator_tokens<lexer_type> calculator_tokens;
@@ -157,10 +158,9 @@
     // now we use the types defined above to create the lexer and grammar
     // object instances needed to invoke the parsing process
     calculator_tokens tokens; // Our token definition
- calculator def (tokens); // Our grammar definition
+ calculator calc(tokens); // Our grammar definition
 
     lexer<calculator_tokens> lex(tokens); // Our lexer
- grammar<calculator> calc(def, def.expression); // Our grammar
 
     // get input line by line and feed the parser to evaluate the expressions
     // read in from the input

Modified: branches/CMake/release/libs/spirit/example/qi/calc4.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc4.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc4.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -33,9 +33,9 @@
 // Our calculator grammar
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct calculator : grammar_def<Iterator, int(), space_type>
+struct calculator : grammar<Iterator, int(), space_type>
 {
- calculator()
+ calculator() : calculator::base_type(expression)
     {
         expression =
             term [_val = _1]
@@ -93,7 +93,7 @@
     typedef calculator<iterator_type> calculator;
 
     calculator def; // Our grammar definition
- grammar<calculator> calc(def, def.expression); // Our grammar
+ calculator calc; // Our grammar
 
     std::string str;
     int result;

Modified: branches/CMake/release/libs/spirit/example/qi/calc5.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc5.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc5.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -114,10 +114,11 @@
 // Our calculator grammar and compiler
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct calculator : grammar_def<Iterator, space_type>
+struct calculator : grammar<Iterator, space_type>
 {
     calculator(std::vector<int>& code)
- : code(code)
+ : calculator::base_type(expression)
+ , code(code)
     {
         expression =
             term
@@ -203,9 +204,7 @@
 
     vmachine mach; // Our virtual machine
     std::vector<int> code; // Our VM code
- calculator def(code); // Our grammar definition
- grammar<calculator>
- calc(def, def.expression); // Our grammar
+ calculator calc(code); // Our grammar
 
     std::string str;
     while (std::getline(std::cin, str))

Modified: branches/CMake/release/libs/spirit/example/qi/calc6/calc6.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc6/calc6.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc6/calc6.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -74,8 +74,7 @@
 
     vmachine mach; // Our virtual machine
     std::vector<int> code; // Our VM code
- statement def(code); // Our grammar definition
- grammar<statement> calc(def); // Our grammar
+ statement calc(code); // Our grammar
 
     std::string str;
     std::string program;
@@ -88,10 +87,10 @@
 
     if (::compile(calc, program))
     {
- mach.execute(code, def.nvars);
+ mach.execute(code, calc.nvars);
 
         std::cout << "Results------------------\n\n";
- def.vars.for_each(var_printer(mach.get_stack()));
+ calc.vars.for_each(var_printer(mach.get_stack()));
         std::cout << "-------------------------\n\n";
     }
 

Modified: branches/CMake/release/libs/spirit/example/qi/calc6/calc6.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc6/calc6.hpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc6/calc6.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -125,7 +125,7 @@
 // Our expression grammar and compiler
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct expression : grammar_def<Iterator, space_type>
+struct expression : grammar<Iterator, space_type>
 {
     expression(std::vector<int>& code, symbols<char, int>& vars);
 
@@ -160,7 +160,7 @@
 };
 
 template <typename Iterator>
-struct statement : grammar_def<Iterator, space_type>
+struct statement : grammar<Iterator, space_type>
 {
     statement(std::vector<int>& code);
 
@@ -168,8 +168,7 @@
     symbols<char, int> vars;
     int nvars;
 
- expression<Iterator> expr_def;
- grammar<expression<Iterator> > expr;
+ expression<Iterator> expr;
     rule<Iterator, space_type> start, var_decl;
     rule<Iterator, std::string(), space_type> identifier;
     rule<Iterator, int(), space_type> var_ref;

Modified: branches/CMake/release/libs/spirit/example/qi/calc6/calc6b.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc6/calc6b.hpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc6/calc6b.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,7 +14,8 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
 expression<Iterator>::expression(std::vector<int>& code, symbols<char, int>& vars)
- : code(code)
+ : expression::base_type(expr)
+ , code(code)
   , vars(vars)
   , op(code)
 {

Modified: branches/CMake/release/libs/spirit/example/qi/calc6/calc6c.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc6/calc6c.hpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc6/calc6c.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,10 +14,10 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
 statement<Iterator>::statement(std::vector<int>& code)
- : code(code)
+ : statement::base_type(start)
+ , code(code)
   , nvars(0)
- , expr_def(code, vars)
- , expr(expr_def, expr_def.expr)
+ , expr(code, vars)
   , add_var(vars)
   , op(code)
 {

Modified: branches/CMake/release/libs/spirit/example/qi/calc7/calc7.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc7/calc7.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc7/calc7.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -70,9 +70,7 @@
 
     vmachine mach; // Our virtual machine
     std::vector<int> code; // Our VM code
- statement def(code); // Our grammar definition
- grammar<statement>
- calc(def, def.statement_list); // Our grammar
+ statement calc(code); // Our grammar
 
     std::string str;
     std::string program;
@@ -85,10 +83,10 @@
 
     if (::compile(calc, program))
     {
- mach.execute(code, def.nvars);
+ mach.execute(code, calc.nvars);
 
         std::cout << "Results------------------\n\n";
- def.vars.for_each(var_printer(mach.get_stack()));
+ calc.vars.for_each(var_printer(mach.get_stack()));
         std::cout << "-------------------------\n\n";
     }
 

Modified: branches/CMake/release/libs/spirit/example/qi/calc7/calc7.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc7/calc7.hpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc7/calc7.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -144,7 +144,7 @@
 // Our expression grammar and compiler
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct expression : grammar_def<Iterator, space_type>
+struct expression : grammar<Iterator, space_type>
 {
     expression(std::vector<int>& code, symbols<char, int>& vars);
 
@@ -181,7 +181,7 @@
 };
 
 template <typename Iterator>
-struct statement : grammar_def<Iterator, space_type>
+struct statement : grammar<Iterator, space_type>
 {
     statement(std::vector<int>& code);
 
@@ -189,8 +189,7 @@
     symbols<char, int> vars;
     int nvars;
 
- expression<Iterator> expr_def;
- grammar<expression<Iterator> > expr;
+ expression<Iterator> expr;
     rule<Iterator, space_type>
         statement_, statement_list, var_decl, compound_statement
     ;

Modified: branches/CMake/release/libs/spirit/example/qi/calc7/calc7b.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc7/calc7b.hpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc7/calc7b.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,7 +14,8 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
 expression<Iterator>::expression(std::vector<int>& code, symbols<char, int>& vars)
- : code(code)
+ : expression::base_type(expr)
+ , code(code)
   , vars(vars)
   , op(code)
 {

Modified: branches/CMake/release/libs/spirit/example/qi/calc7/calc7c.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/calc7/calc7c.hpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/calc7/calc7c.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,10 +14,10 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
 statement<Iterator>::statement(std::vector<int>& code)
- : code(code)
+ : statement::base_type(statement_list)
+ , code(code)
   , nvars(0)
- , expr_def(code, vars)
- , expr(expr_def, expr_def.expr)
+ , expr(code, vars)
   , add_var(vars)
   , op(code)
 {

Modified: branches/CMake/release/libs/spirit/example/qi/complex_number.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/complex_number.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/complex_number.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -31,6 +31,7 @@
 ///////////////////////////////////////////////////////////////////////////////
 // Our complex number parser/compiler
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_complex_number
 template <typename Iterator>
 bool parse_complex(Iterator first, Iterator last, std::complex<double>& c)
 {
@@ -53,6 +54,7 @@
     c = std::complex<double>(rN, iN);
     return r;
 }
+//]
 
 ////////////////////////////////////////////////////////////////////////////
 // Main program

Modified: branches/CMake/release/libs/spirit/example/qi/employee.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/employee.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/employee.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -34,6 +34,7 @@
 ///////////////////////////////////////////////////////////////////////////////
 // Our employee struct
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_employee_struct
 struct employee
 {
     int age;
@@ -41,9 +42,11 @@
     std::string forename;
     double salary;
 };
+//]
 
 // We need to tell fusion about our employee struct
 // to make it a first-class fusion citizen
+//[tutorial_employee_adapt_struct
 BOOST_FUSION_ADAPT_STRUCT(
     employee,
     (int, age)
@@ -51,14 +54,16 @@
     (std::string, forename)
     (double, salary)
 )
+//]
 
 ///////////////////////////////////////////////////////////////////////////////
 // Our employee parser
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_employee_parser
 template <typename Iterator>
-struct employee_parser : grammar_def<Iterator, employee(), space_type>
+struct employee_parser : grammar<Iterator, employee(), space_type>
 {
- employee_parser()
+ employee_parser() : employee_parser::base_type(start)
     {
         quoted_string %= lexeme['"' >> +(char_ - '"') >> '"'];
 
@@ -76,6 +81,7 @@
     rule<Iterator, std::string(), space_type> quoted_string;
     rule<Iterator, employee(), space_type> start;
 };
+//]
 
 ////////////////////////////////////////////////////////////////////////////
 // Main program
@@ -95,8 +101,7 @@
     typedef std::string::const_iterator iterator_type;
     typedef employee_parser<iterator_type> employee_parser;
 
- employee_parser def; // Our grammar definition
- grammar<employee_parser> g(def); // Our grammar
+ employee_parser g; // Our grammar
     std::string str;
     while (getline(std::cin, str))
     {

Modified: branches/CMake/release/libs/spirit/example/qi/mini_c/mini_c.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/mini_c/mini_c.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/mini_c/mini_c.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,13 +19,12 @@
 template <typename Grammar>
 bool compile(Grammar const& prog, std::string const& expr)
 {
- typedef white_space_def<std::string::const_iterator> white_space_def;
- white_space_def white_; // Our skipper definition
- grammar<white_space_def> white_space(white_); // Our skipper
+ typedef white_space<std::string::const_iterator> white_space;
+ white_space ws; // Our skipper
 
     std::string::const_iterator iter = expr.begin();
     std::string::const_iterator end = expr.end();
- bool r = phrase_parse(iter, end, prog, white_space);
+ bool r = phrase_parse(iter, end, prog, ws);
 
     if (r && iter == end)
     {
@@ -80,14 +79,13 @@
 
     vmachine mach; // Our virtual machine
     std::vector<int> code; // Our VM code
- program def(code); // Our grammar definition
- grammar<program> prog(def); // Our grammar
+ program prog(code); // Our grammar definition
 
     if (::compile(prog, source_code))
     {
         std::string fmain("main");
         std::string::iterator fbegin = fmain.begin();
- function_info* f = def.functions.lookup()->find(fbegin, fmain.end());
+ function_info* f = prog.functions.lookup()->find(fbegin, fmain.end());
         if (f == 0)
         {
             std::cerr << "Error: main function not defined" << std::endl;

Modified: branches/CMake/release/libs/spirit/example/qi/mini_c/mini_c.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/mini_c/mini_c.hpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/mini_c/mini_c.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -246,9 +246,9 @@
 // White-space and comments grammar definition
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct white_space_def : grammar_def<Iterator>
+struct white_space : grammar<Iterator>
 {
- white_space_def()
+ white_space() : white_space::base_type(start)
     {
         start =
                 space // tab/space/cr/lf
@@ -263,14 +263,14 @@
 // Our expression grammar and compiler
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct expression : grammar_def<Iterator, grammar<white_space_def<Iterator> > >
+struct expression : grammar<Iterator, white_space<Iterator> >
 {
     expression(
         std::vector<int>& code
       , symbols<char, int>& vars
       , symbols<char, function_info>& functions);
 
- typedef grammar<white_space_def<Iterator> > white_space;
+ typedef white_space<Iterator> white_space;
 
     rule<Iterator, white_space>
         expr, equality_expr, relational_expr
@@ -290,11 +290,11 @@
 // Our statement grammar and compiler
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct statement : grammar_def<Iterator, grammar<white_space_def<Iterator> > >
+struct statement : grammar<Iterator, white_space<Iterator> >
 {
     statement(std::vector<int>& code, symbols<char, function_info>& functions);
 
- typedef grammar<white_space_def<Iterator> > white_space;
+ typedef white_space<Iterator> white_space;
 
     std::vector<int>& code;
     symbols<char, int> vars;
@@ -302,8 +302,7 @@
     int nvars;
     bool has_return;
 
- expression<Iterator> expr_def;
- grammar<expression<Iterator> > expr;
+ expression<Iterator> expr;
     rule<Iterator, white_space>
         statement_, statement_list, var_decl, compound_statement
       , return_statement;
@@ -323,11 +322,11 @@
 // Our program grammar and compiler
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
-struct program : grammar_def<Iterator, grammar<white_space_def<Iterator> > >
+struct program : grammar<Iterator, white_space<Iterator> >
 {
     program(std::vector<int>& code);
 
- typedef grammar<white_space_def<Iterator> > white_space;
+ typedef white_space<Iterator> white_space;
 
     std::vector<int>& code;
     rule<Iterator, std::string(), white_space> identifier;
@@ -341,8 +340,7 @@
     function_locals;
 
     symbols<char, function_info> functions;
- statement<Iterator> statement_def;
- grammar<statement<Iterator> > statement;
+ statement<Iterator> statement;
 
     rule<Iterator, function_locals, white_space> function;
     boost::phoenix::function<function_adder> add_function;

Modified: branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cb.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cb.hpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cb.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -17,7 +17,8 @@
     std::vector<int>& code
   , symbols<char, int>& vars
   , symbols<char, function_info>& functions)
- : code(code)
+ : expression::base_type(expr)
+ , code(code)
   , vars(vars)
   , functions(functions)
   , op(code)

Modified: branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cc.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cc.hpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cc.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -15,11 +15,11 @@
 template <typename Iterator>
 statement<Iterator>::statement(
     std::vector<int>& code, symbols<char, function_info>& functions)
- : code(code)
+ : statement::base_type(statement_list)
+ , code(code)
   , functions(functions)
   , nvars(0)
- , expr_def(code, vars, functions)
- , expr(expr_def, expr_def.expr)
+ , expr(code, vars, functions)
   , add_var(var_adder(vars, nvars))
   , op(code)
 {

Modified: branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cd.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cd.hpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/mini_c/mini_cd.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,16 +14,16 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <typename Iterator>
 program<Iterator>::program(std::vector<int>& code)
- : code(code)
- , statement_def(code, functions)
- , statement(statement_def, statement_def.statement_list)
+ : program::base_type(start)
+ , code(code)
+ , statement(code, functions)
   , add_function(function_adder(functions))
- , state_reset(function_state_reset(code, statement_def.vars, statement_def.nvars))
+ , state_reset(function_state_reset(code, statement.vars, statement.nvars))
   , op(code)
 {
- bool& has_return = statement_def.has_return;
- int& nvars = statement_def.nvars;
- boost::phoenix::function<var_adder>& add_var = statement_def.add_var;
+ bool& has_return = statement.has_return;
+ int& nvars = statement.nvars;
+ boost::phoenix::function<var_adder>& add_var = statement.add_var;
 
     identifier %=
         raw[lexeme[alpha >> *(alnum | '_')]]

Modified: branches/CMake/release/libs/spirit/example/qi/mini_xml1.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/mini_xml1.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/mini_xml1.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -41,6 +41,7 @@
 ///////////////////////////////////////////////////////////////////////////////
 // Our mini XML tree representation
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_xml1_structures
 struct mini_xml;
 
 typedef
@@ -55,14 +56,17 @@
     std::string name; // tag name
     std::vector<mini_xml_node> children; // children
 };
+//]
 
 // We need to tell fusion about our mini_xml struct
 // to make it a first-class fusion citizen
+//[tutorial_xml1_adapt_structures
 BOOST_FUSION_ADAPT_STRUCT(
     mini_xml,
     (std::string, name)
     (std::vector<mini_xml_node>, children)
 )
+//]
 
 ///////////////////////////////////////////////////////////////////////////////
 // Print out the mini xml tree
@@ -127,16 +131,18 @@
 ///////////////////////////////////////////////////////////////////////////////
 // Our mini XML grammar definition
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_xml1_grammar
 template <typename Iterator>
-struct mini_xml_def : grammar_def<Iterator, mini_xml(), space_type>
+struct mini_xml_grammar : grammar<Iterator, mini_xml(), space_type>
 {
- mini_xml_def()
+ mini_xml_grammar() : mini_xml_grammar::base_type(xml)
     {
         text = lexeme[+(char_ - '<') [_val += _1]];
         node = (xml | text) [_val = _1];
 
         start_tag =
                 '<'
+ >> !char_('/')
>> lexeme[+(char_ - '>') [_val += _1]]
>> '>'
         ;
@@ -160,6 +166,7 @@
     rule<Iterator, std::string(), space_type> start_tag;
     rule<Iterator, void(std::string), space_type> end_tag;
 };
+//]
 
 ///////////////////////////////////////////////////////////////////////////////
 // Main program
@@ -193,9 +200,8 @@
         std::istream_iterator<char>(),
         std::back_inserter(storage));
 
- typedef mini_xml_def<std::string::const_iterator> mini_xml_def;
- mini_xml_def def; // Our grammar definition
- grammar<mini_xml_def> xml(def, def.xml); // Our grammar
+ typedef mini_xml_grammar<std::string::const_iterator> mini_xml_grammar;
+ mini_xml_grammar xml; // Our grammar
     mini_xml ast; // our tree
 
     std::string::const_iterator iter = storage.begin();

Modified: branches/CMake/release/libs/spirit/example/qi/mini_xml2.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/mini_xml2.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/mini_xml2.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -127,17 +127,20 @@
 ///////////////////////////////////////////////////////////////////////////////
 // Our mini XML grammar definition
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_xml2_grammar
 template <typename Iterator>
-struct mini_xml_def
- : grammar_def<Iterator, mini_xml(), locals<std::string>, space_type>
+struct mini_xml_grammar
+ : grammar<Iterator, mini_xml(), locals<std::string>, space_type>
 {
- mini_xml_def()
+ mini_xml_grammar()
+ : mini_xml_grammar::base_type(xml)
     {
         text %= lexeme[+(char_ - '<')];
         node %= xml | text;
 
         start_tag %=
                 '<'
+ >> !char_('/')
>> lexeme[+(char_ - '>')]
>> '>'
         ;
@@ -161,6 +164,7 @@
     rule<Iterator, std::string(), space_type> start_tag;
     rule<Iterator, void(std::string), space_type> end_tag;
 };
+//]
 
 ///////////////////////////////////////////////////////////////////////////////
 // Main program
@@ -194,9 +198,8 @@
         std::istream_iterator<char>(),
         std::back_inserter(storage));
 
- typedef mini_xml_def<std::string::const_iterator> mini_xml_def;
- mini_xml_def def; // Our grammar definition
- grammar<mini_xml_def> xml(def, def.xml); // Our grammar
+ typedef mini_xml_grammar<std::string::const_iterator> mini_xml_grammar;
+ mini_xml_grammar xml; // Our grammar
     mini_xml ast; // our tree
 
     std::string::const_iterator iter = storage.begin();

Deleted: branches/CMake/release/libs/spirit/example/qi/num_list.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/num_list.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,100 +0,0 @@
-/*=============================================================================
- Copyright (c) 2002-2007 Joel de Guzman
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-=============================================================================*/
-///////////////////////////////////////////////////////////////////////////////
-//
-// This sample demontrates a parser for a comma separated list of numbers.
-// The numbers are inserted in a vector using phoenix.
-//
-// [ JDG May 10, 2002 ] spirit1
-// [ JDG March 24, 2007 ] spirit2
-//
-///////////////////////////////////////////////////////////////////////////////
-
-#include <boost/config/warning_disable.hpp>
-#include <boost/spirit/include/qi.hpp>
-#include <boost/spirit/include/phoenix_core.hpp>
-#include <boost/spirit/include/phoenix_operator.hpp>
-#include <boost/spirit/include/phoenix_stl.hpp>
-
-#include <iostream>
-#include <string>
-#include <vector>
-
-using namespace boost::phoenix;
-using namespace boost::spirit;
-using namespace boost::spirit::qi;
-using namespace boost::spirit::ascii;
-using namespace boost::spirit::arg_names;
-
-///////////////////////////////////////////////////////////////////////////////
-// Our number list compiler
-///////////////////////////////////////////////////////////////////////////////
-template <typename Iterator>
-bool parse_numbers(Iterator first, Iterator last, std::vector<double>& v)
-{
- bool r = phrase_parse(first, last,
-
- // Begin grammar
- (
- double_[push_back(ref(v), _1)]
- >> *(',' >> double_[push_back(ref(v), _1)])
- )
- ,
- // End grammar
-
- space);
-
- if (first != last) // fail if we did not get a full match
- return false;
- return r;
-}
-
-////////////////////////////////////////////////////////////////////////////
-// Main program
-////////////////////////////////////////////////////////////////////////////
-int
-main()
-{
- std::cout << "/////////////////////////////////////////////////////////\n\n";
- std::cout << "\t\tA comma separated list parser for Spirit...\n\n";
- std::cout << "/////////////////////////////////////////////////////////\n\n";
-
- std::cout << "Give me a comma separated list of numbers.\n";
- std::cout << "The numbers will be inserted in a vector of numbers\n";
- std::cout << "Type [q or Q] to quit\n\n";
-
- std::string str;
- while (getline(std::cin, str))
- {
- if (str.empty() || str[0] == 'q' || str[0] == 'Q')
- break;
-
- std::vector<double> v;
- if (parse_numbers(str.begin(), str.end(), v))
- {
- std::cout << "-------------------------\n";
- std::cout << "Parsing succeeded\n";
- std::cout << str << " Parses OK: " << std::endl;
-
- for (std::vector<double>::size_type i = 0; i < v.size(); ++i)
- std::cout << i << ": " << v[i] << std::endl;
-
- std::cout << "\n-------------------------\n";
- }
- else
- {
- std::cout << "-------------------------\n";
- std::cout << "Parsing failed\n";
- std::cout << "-------------------------\n";
- }
- }
-
- std::cout << "Bye... :-) \n\n";
- return 0;
-}
-
-

Modified: branches/CMake/release/libs/spirit/example/qi/num_list2.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/num_list2.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/num_list2.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -33,6 +33,7 @@
 ///////////////////////////////////////////////////////////////////////////////
 // Our number list compiler
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_numlist2
 template <typename Iterator>
 bool parse_numbers(Iterator first, Iterator last, std::vector<double>& v)
 {
@@ -40,7 +41,8 @@
 
         // Begin grammar
         (
- double_[push_back(ref(v), _1)] % ','
+ double_[push_back(ref(v), _1)]
+ >> *(',' >> double_[push_back(ref(v), _1)])
         )
         ,
         // End grammar
@@ -51,6 +53,7 @@
         return false;
     return r;
 }
+//]
 
 ////////////////////////////////////////////////////////////////////////////
 // Main program

Modified: branches/CMake/release/libs/spirit/example/qi/num_list3.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/num_list3.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/num_list3.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -33,6 +33,7 @@
 ///////////////////////////////////////////////////////////////////////////////
 // Our number list compiler
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_numlist3
 template <typename Iterator>
 bool parse_numbers(Iterator first, Iterator last, std::vector<double>& v)
 {
@@ -40,17 +41,18 @@
 
         // Begin grammar
         (
- double_ % ','
+ double_[push_back(ref(v), _1)] % ','
         )
         ,
         // End grammar
 
- v, space);
+ space);
 
     if (first != last) // fail if we did not get a full match
         return false;
     return r;
 }
+//]
 
 ////////////////////////////////////////////////////////////////////////////
 // Main program

Modified: branches/CMake/release/libs/spirit/example/qi/roman.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/roman.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/roman.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -29,9 +29,10 @@
 
 ///////////////////////////////////////////////////////////////////////////////
 // Parse roman hundreds (100..900) numerals using the symbol table.
-// Notice that the data associated with each slot is passed
-// to attached semantic actions.
+// Notice that the data associated with each slot is the parser's attribute
+// (which is passed to attached semantic actions).
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_roman_hundreds
 struct hundreds_ : symbols<char, unsigned>
 {
     hundreds_()
@@ -50,10 +51,12 @@
     }
 
 } hundreds;
+//]
 
 ///////////////////////////////////////////////////////////////////////////////
 // Parse roman tens (10..90) numerals using the symbol table.
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_roman_tens
 struct tens_ : symbols<char, unsigned>
 {
     tens_()
@@ -72,10 +75,12 @@
     }
 
 } tens;
+//]
 
 ///////////////////////////////////////////////////////////////////////////////
 // Parse roman ones (1..9) numerals using the symbol table.
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_roman_ones
 struct ones_ : symbols<char, unsigned>
 {
     ones_()
@@ -94,29 +99,35 @@
     }
 
 } ones;
+//]
 
 ///////////////////////////////////////////////////////////////////////////////
 // roman (numerals) grammar
+//
+// Note the use of the || operator. The expression
+// a || b reads match a or b and in sequence. Try
+// defining the roman numerals grammar in YACC or
+// PCCTS. Spirit rules! :-)
 ///////////////////////////////////////////////////////////////////////////////
+//[tutorial_roman_grammar
 template <typename Iterator>
-struct roman : grammar_def<Iterator, unsigned()>
+struct roman : grammar<Iterator, unsigned()>
 {
- roman()
+ roman() : roman::base_type(start)
     {
- start
- = +char_('M') [_val += 1000]
- || hundreds [_val += _1]
- || tens [_val += _1]
- || ones [_val += _1];
-
- // Note the use of the || operator. The expression
- // a || b reads match a or b and in sequence. Try
- // defining the roman numerals grammar in YACC or
- // PCCTS. Spirit rules! :-)
+ start = eps [_val = 0] >>
+ (
+ +char_('M') [_val += 1000]
+ || hundreds [_val += _1]
+ || tens [_val += _1]
+ || ones [_val += _1]
+ )
+ ;
     }
 
     rule<Iterator, unsigned()> start;
 };
+//]
 
 ///////////////////////////////////////////////////////////////////////////////
 // Main program
@@ -132,8 +143,7 @@
     typedef std::string::const_iterator iterator_type;
     typedef roman<iterator_type> roman;
 
- roman def; // Our grammar definition
- grammar<roman> roman_parser(def); // Our grammar
+ roman roman_parser; // Our grammar
 
     std::string str;
     unsigned result;
@@ -144,7 +154,8 @@
 
         std::string::const_iterator iter = str.begin();
         std::string::const_iterator end = str.end();
- bool r = parse(iter, end, roman_parser[ref(result) = _1]);
+ //[tutorial_roman_grammar_parse
+ bool r = parse(iter, end, roman_parser, result);
 
         if (r && iter == end)
         {
@@ -161,6 +172,7 @@
             std::cout << "stopped at: \": " << rest << "\"\n";
             std::cout << "-------------------------\n";
         }
+ //]
     }
 
     std::cout << "Bye... :-) \n\n";

Modified: branches/CMake/release/libs/spirit/example/qi/sum.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/example/qi/sum.cpp (original)
+++ branches/CMake/release/libs/spirit/example/qi/sum.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,22 +14,27 @@
 ///////////////////////////////////////////////////////////////////////////////
 
 #include <boost/config/warning_disable.hpp>
+//[tutorial_adder_includes
 #include <boost/spirit/include/qi.hpp>
 #include <boost/spirit/include/phoenix_core.hpp>
 #include <boost/spirit/include/phoenix_operator.hpp>
-
 #include <iostream>
 #include <string>
+//]
 
+//[tutorial_adder_using
 using namespace boost::phoenix;
 using namespace boost::spirit;
 using namespace boost::spirit::qi;
 using namespace boost::spirit::ascii;
 using namespace boost::spirit::arg_names;
+//]
 
 ///////////////////////////////////////////////////////////////////////////////
 // Our adder
 ///////////////////////////////////////////////////////////////////////////////
+
+//[tutorial_adder
 template <typename Iterator>
 bool adder(Iterator first, Iterator last, double& n)
 {
@@ -48,6 +53,7 @@
         return false;
     return r;
 }
+//]
 
 ////////////////////////////////////////////////////////////////////////////
 // Main program

Modified: branches/CMake/release/libs/spirit/test/karma/actions.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/test/karma/actions.cpp (original)
+++ branches/CMake/release/libs/spirit/test/karma/actions.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,7 +14,7 @@
 #include <boost/bind.hpp>
 #include <boost/function_output_iterator.hpp>
 
-#include <strstream>
+#include <sstream>
 #include "test.hpp"
 
 using namespace spirit_test;

Modified: branches/CMake/release/libs/spirit/test/karma/char.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/test/karma/char.cpp (original)
+++ branches/CMake/release/libs/spirit/test/karma/char.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -136,9 +136,9 @@
     // action tests
     {
         BOOST_TEST(test("x", char_[_1 = val('x')]));
- BOOST_TEST(test(L"x", char_[_1 = val(L'x')]));
+ BOOST_TEST(test(L"x", wchar[_1 = val(L'x')]));
         BOOST_TEST(!test("x", char_[_1 = val('y')]));
- BOOST_TEST(!test(L"x", char_[_1 = val(L'y')]));
+ BOOST_TEST(!test(L"x", wchar[_1 = val(L'y')]));
     }
 
     { // lazy chars

Modified: branches/CMake/release/libs/spirit/test/karma/grammar.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/test/karma/grammar.cpp (original)
+++ branches/CMake/release/libs/spirit/test/karma/grammar.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -29,9 +29,9 @@
 
 typedef spirit_test::output_iterator<char>::type outiter_type;
 
-struct num_list : grammar_def<outiter_type, space_type>
+struct num_list : grammar<outiter_type, space_type>
 {
- num_list()
+ num_list() : num_list::base_type(start)
     {
         using boost::spirit::int_;
         num1 = int_(123);
@@ -47,8 +47,7 @@
 main()
 {
     { // simple grammar test
- num_list def;
- grammar<num_list> nlist(def);
+ num_list nlist;
         BOOST_TEST(test_delimited("123 , 456 , 789 ", nlist, space));
     }
 

Modified: branches/CMake/release/libs/spirit/test/karma/grammar_fail.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/test/karma/grammar_fail.cpp (original)
+++ branches/CMake/release/libs/spirit/test/karma/grammar_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,7 @@
 using namespace boost::spirit::karma;
 using namespace boost::spirit::ascii;
 
-struct num_list : grammar_def<char const*, rule<char const*> >
+struct num_list : grammar<char const*, rule<char const*> >
 {
     num_list()
     {

Modified: branches/CMake/release/libs/spirit/test/karma/real_numerics.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/test/karma/real_numerics.cpp (original)
+++ branches/CMake/release/libs/spirit/test/karma/real_numerics.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,6 +5,7 @@
 
 //#define KARMA_FAIL_COMPILATION
 
+#include <boost/version.hpp>
 #include <boost/config/warning_disable.hpp>
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/math/concepts/real_concept.hpp>
@@ -65,6 +66,9 @@
     static bool const force_sign = true;
 };
 
+// support for using real_concept with a Karma generator has been implemented
+// in Boost versions > 1.36 only
+#if BOOST_VERSION > 103600
 ///////////////////////////////////////////////////////////////////////////////
 // We need to specialize is_real_lit_tag to allow to use a real_concept as a
 // literal below
@@ -74,6 +78,7 @@
     struct is_real_lit_tag<boost::math::concepts::real_concept, Domain>
       : boost::mpl::true_ {};
 }}
+#endif
 
 ///////////////////////////////////////////////////////////////////////////////
 int
@@ -390,6 +395,9 @@
         BOOST_TEST(test(" 0.0", upper[signed_], 0.0));
     }
 
+// support for using real_concept with a Karma generator has been implemented
+// in Boost versions > 1.36 only
+#if BOOST_VERSION > 103600
     {
         using boost::math::concepts::real_concept;
         typedef karma::real_spec<real_concept> custom_type;
@@ -435,6 +443,7 @@
         BOOST_TEST(test("12342.0", custom(real_concept(12342.))));
         BOOST_TEST(test("1.234e05", custom(real_concept(123420.))));
     }
-
+#endif
+
     return boost::report_errors();
 }

Modified: branches/CMake/release/libs/spirit/test/karma/test.hpp
==============================================================================
--- branches/CMake/release/libs/spirit/test/karma/test.hpp (original)
+++ branches/CMake/release/libs/spirit/test/karma/test.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -36,6 +36,14 @@
     display_type const display = {};
 
     ///////////////////////////////////////////////////////////////////////////
+ template <typename Char>
+ struct output_iterator
+ {
+ typedef std::basic_string<Char> string_type;
+ typedef std::back_insert_iterator<string_type> type;
+ };
+
+ ///////////////////////////////////////////////////////////////////////////
     template <typename Char, typename Generator>
     inline bool test(Char const *expected, Generator const& g)
     {

Modified: branches/CMake/release/libs/spirit/test/qi/grammar.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/test/qi/grammar.cpp (original)
+++ branches/CMake/release/libs/spirit/test/qi/grammar.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -24,7 +24,7 @@
 using namespace boost::spirit::ascii;
 using namespace boost::spirit::arg_names;
 
-struct num_list : grammar_<char const*, space_type>
+struct num_list : grammar<char const*, space_type>
 {
     num_list() : base_type(start)
     {
@@ -36,9 +36,9 @@
     rule<char const*, space_type> start, num;
 };
 
-struct inh_g : grammar_def<char const*, int(int), space_type>
+struct inh_g : grammar<char const*, int(int), space_type>
 {
- inh_g()
+ inh_g() : base_type(start)
     {
         start = lit("inherited")[_val = _r1];
     }
@@ -46,9 +46,9 @@
     rule<char const*, int(int), space_type> start, num;
 };
 
-struct my_skipper : grammar_def<char const*>
+struct my_skipper : grammar<char const*>
 {
- my_skipper()
+ my_skipper() : base_type(start)
     {
         start = space;
     }
@@ -56,23 +56,23 @@
     rule<char const*> start, num;
 };
 
-struct num_list2 : grammar_def<char const*, grammar<my_skipper> >
+struct num_list2 : grammar<char const*, my_skipper>
 {
- num_list2()
+ num_list2() : base_type(start)
     {
         using boost::spirit::int_;
         num = int_;
         start = num >> *(',' >> num);
     }
 
- rule<char const*, grammar<my_skipper> > start, num;
+ rule<char const*, my_skipper> start, num;
 };
 
 template <typename Iterator, typename Skipper>
-struct num_list3 : grammar_def<Iterator, Skipper>
+struct num_list3 : grammar<Iterator, Skipper>
 {
     template <typename Class>
- num_list3(Class& self)
+ num_list3(Class& self) : grammar<Iterator, Skipper>(start)
     {
         using boost::spirit::int_;
         num = int_;
@@ -93,53 +93,28 @@
 
     { // simple grammar test with user-skipper
 
- num_list2 def;
- grammar<num_list2> nlist(def);
- my_skipper skipdef;
- grammar<my_skipper> skip(skipdef);
+ num_list2 nlist;
+ my_skipper skip;
         BOOST_TEST(test("123, 456, 789", nlist, skip));
     }
 
     { // direct access to the rules
 
- num_list def;
- BOOST_TEST(test("123", def.num));
- BOOST_TEST(test("123, 456, 789", def.start, space));
+ num_list g;
+ BOOST_TEST(test("123", g.num));
+ BOOST_TEST(test("123, 456, 789", g.start, space));
     }
 
     { // grammar with inherited attributes
 
- inh_g def;
- grammar<inh_g> g(def);
+ inh_g g;
         int n = -1;
- BOOST_TEST(test_attr("inherited", def.start(123), n, space)); // direct to the rule
+ BOOST_TEST(test_attr("inherited", g.start(123), n, space)); // direct to the rule
         BOOST_TEST(n == 123);
         BOOST_TEST(test_attr("inherited", g(123), n, space)); // using the grammar
         BOOST_TEST(n == 123);
     }
 
- { // grammar_class test (no skipper)
-
- grammar_class<num_list3> nlist;
-
- char const* first = "123,456,789";
- char const* last = first;
- while (*last)
- last++;
- BOOST_TEST(parse(first, last, nlist) && (first == last));
- }
-
- { // grammar_class test (w/skipper)
-
- grammar_class<num_list3> nlist;
-
- char const* first = "123, 456, 789";
- char const* last = first;
- while (*last)
- last++;
- BOOST_TEST(phrase_parse(first, last, nlist, space)
- && (first == last));
- }
     return boost::report_errors();
 }
 

Modified: branches/CMake/release/libs/spirit/test/qi/grammar_fail.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/test/qi/grammar_fail.cpp (original)
+++ branches/CMake/release/libs/spirit/test/qi/grammar_fail.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,9 +16,9 @@
 using namespace boost::spirit::qi;
 using namespace boost::spirit::ascii;
 
-struct num_list : grammar_def<char const*, rule<char const*> >
+struct num_list : grammar<char const*, rule<char const*> >
 {
- num_list()
+ num_list() : base_type(start)
     {
         using boost::spirit::int_;
         num = int_;
@@ -34,8 +34,7 @@
     char const* input = "some input, it doesn't matter";
     char const* end = &input[strlen(input)+1];
 
- num_list def;
- grammar<num_list> g(def);
+ num_list g;
     bool r = phrase_parse(input, end, g,
         space | ('%' >> *~char_('\n') >> '\n'));
 

Modified: branches/CMake/release/libs/spirit/test/qi/range_run.cpp
==============================================================================
--- branches/CMake/release/libs/spirit/test/qi/range_run.cpp (original)
+++ branches/CMake/release/libs/spirit/test/qi/range_run.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -28,7 +28,9 @@
     int const test_size = 1000;
 
     boost::mt19937 rng;
- boost::uniform_int<> char_(int(const_min), int(const_max));
+ int min = const_min;
+ int max = const_max;
+ boost::uniform_int<> char_(min, max);
     boost::variate_generator<boost::mt19937&, boost::uniform_int<> >
        gen(rng, char_);
     boost::uniform_int<> _1of10(1, 10);

Modified: branches/CMake/release/libs/statechart/Statechart.sln
==============================================================================
--- branches/CMake/release/libs/statechart/Statechart.sln (original)
+++ branches/CMake/release/libs/statechart/Statechart.sln 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,307 +1,328 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BitMachine", "example\BitMachine\BitMachine.vcproj", "{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Camera", "example\Camera\Camera.vcproj", "{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Handcrafted", "example\Handcrafted\Handcrafted.vcproj", "{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Keyboard", "example\Keyboard\Keyboard.vcproj", "{4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PingPong", "example\PingPong\PingPong.vcproj", "{11CCA9FC-6012-4B64-8C61-808D0F8D1B51}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StopWatch", "example\StopWatch\StopWatch.vcproj", "{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TransitionTest", "test\TransitionTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DeferralTest", "test\DeferralTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidTransitionTest1", "test\InvalidTransitionTest1.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidTransitionTest2", "test\InvalidTransitionTest2.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HistoryTest", "test\HistoryTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidChartTest1", "test\InvalidChartTest1.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidChartTest3", "test\InvalidChartTest3.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidChartTest2", "test\InvalidChartTest2.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest1", "test\InconsistentHistoryTest1.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest2", "test\InconsistentHistoryTest2.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest3", "test\InconsistentHistoryTest3.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest4", "test\InconsistentHistoryTest4.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest5", "test\InconsistentHistoryTest5.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest6", "test\InconsistentHistoryTest6.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest7", "test\InconsistentHistoryTest7.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest8", "test\InconsistentHistoryTest8.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UnsuppDeepHistoryTest", "test\UnsuppDeepHistoryTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StateCastTest", "test\StateCastTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TypeInfoTest", "test\TypeInfoTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StateIterationTest", "test\StateIterationTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CustomReactionTest", "test\CustomReactionTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TerminationTest", "test\TerminationTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FifoSchedulerTest", "test\FifoSchedulerTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidResultAssignTest", "test\InvalidResultAssignTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidResultDefCtorTest", "test\InvalidResultDefCtorTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidResultCopyTest", "test\InvalidResultCopyTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UnconsumedResultTest", "test\UnconsumedResultTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InStateReactionTest", "test\InStateReactionTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TuTest", "test\TuTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Performance", "example\Performance\Performance.vcproj", "{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug.ActiveCfg = Debug|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug.Build.0 = Debug|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release.ActiveCfg = Release|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release.Build.0 = Release|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug.ActiveCfg = Debug|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug.Build.0 = Debug|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release.ActiveCfg = Release|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release.Build.0 = Release|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug.ActiveCfg = Debug|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug.Build.0 = Debug|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release.ActiveCfg = Release|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release.Build.0 = Release|Win32
- {4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}.Debug.ActiveCfg = Debug|Win32
- {4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}.Debug.Build.0 = Debug|Win32
- {4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}.Release.ActiveCfg = Release|Win32
- {4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}.Release.Build.0 = Release|Win32
- {11CCA9FC-6012-4B64-8C61-808D0F8D1B51}.Debug.ActiveCfg = Debug|Win32
- {11CCA9FC-6012-4B64-8C61-808D0F8D1B51}.Debug.Build.0 = Debug|Win32
- {11CCA9FC-6012-4B64-8C61-808D0F8D1B51}.Release.ActiveCfg = Release|Win32
- {11CCA9FC-6012-4B64-8C61-808D0F8D1B51}.Release.Build.0 = Release|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug.ActiveCfg = Debug|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug.Build.0 = Debug|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release.ActiveCfg = Release|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.ActiveCfg = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug.Build.0 = Debug|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.ActiveCfg = Release|Win32
- {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release.Build.0 = Release|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug.ActiveCfg = Debug|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug.Build.0 = Debug|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release.ActiveCfg = Release|Win32
- {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(SolutionItems) = postSolution
- example\Jamfile = example\Jamfile
- test\Jamfile = test\Jamfile
- example\Jamfile.v2 = example\Jamfile.v2
- test\Jamfile.v2 = test\Jamfile.v2
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BitMachine", "example\BitMachine\BitMachine.vcproj", "{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Camera", "example\Camera\Camera.vcproj", "{7FD5B025-1675-4D68-BA85-588AFC99C5B8}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Handcrafted", "example\Handcrafted\Handcrafted.vcproj", "{155DB9E1-28AC-4671-8248-5FD03E8FCDAD}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Keyboard", "example\Keyboard\Keyboard.vcproj", "{4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PingPong", "example\PingPong\PingPong.vcproj", "{11CCA9FC-6012-4B64-8C61-808D0F8D1B51}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StopWatch", "example\StopWatch\StopWatch.vcproj", "{DFA55264-E7F5-43FE-841F-D56AC48FF2A8}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TransitionTest", "test\TransitionTest.vcproj", "{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DeferralTest", "test\DeferralTest.vcproj", "{E599D469-A2BD-42FB-A217-73A420213D06}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidTransitionTest1", "test\InvalidTransitionTest1.vcproj", "{345A4DD5-8B5C-40E4-95D2-4CF5A2621040}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidTransitionTest2", "test\InvalidTransitionTest2.vcproj", "{FCB42B5B-DDE0-4E12-8474-F55DC85606FE}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HistoryTest", "test\HistoryTest.vcproj", "{206654FA-7AA0-4E06-BCFA-DC94D4281755}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidChartTest1", "test\InvalidChartTest1.vcproj", "{AA1A7669-702E-4D56-A390-849612EB9CDF}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidChartTest3", "test\InvalidChartTest3.vcproj", "{7083917A-4A8D-4BEF-A435-61AAF3BA554C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidChartTest2", "test\InvalidChartTest2.vcproj", "{CCB4DBF2-626B-4DA5-AB02-9504B0A97F9A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest1", "test\InconsistentHistoryTest1.vcproj", "{B2739180-6048-4CA7-A96B-ECE182100321}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest2", "test\InconsistentHistoryTest2.vcproj", "{7C58D72A-C6EA-4E25-92E8-5ADEB5F61662}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest3", "test\InconsistentHistoryTest3.vcproj", "{801027D8-DC4E-48DC-9F98-75BA0B7F2997}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest4", "test\InconsistentHistoryTest4.vcproj", "{A211FFC9-D4B4-4C3A-900E-044A7519F8E4}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest5", "test\InconsistentHistoryTest5.vcproj", "{BE34C83E-6D4A-4E49-B9BA-EFF47ECBAA39}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest6", "test\InconsistentHistoryTest6.vcproj", "{7D2AB32E-930A-4758-8FAF-F5E0A19A411C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest7", "test\InconsistentHistoryTest7.vcproj", "{41A33CE9-785E-4EC2-9022-A3B229D4935B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InconsistentHistoryTest8", "test\InconsistentHistoryTest8.vcproj", "{FDBCBAEF-C973-42C2-BD8B-4796C0A1E6A8}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UnsuppDeepHistoryTest", "test\UnsuppDeepHistoryTest.vcproj", "{7B6A4F61-6210-4FDC-BC23-660DA10EE7DD}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StateCastTest", "test\StateCastTest.vcproj", "{1826122F-4DB3-4C69-8BB2-E0B18D809FA9}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TypeInfoTest", "test\TypeInfoTest.vcproj", "{6FBB8140-6B00-4BF1-AD6D-9D394DE3610F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StateIterationTest", "test\StateIterationTest.vcproj", "{D52BF95D-392C-4535-B332-CB3CC29C8227}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CustomReactionTest", "test\CustomReactionTest.vcproj", "{2D85E7DE-2347-43EA-843F-691101E6F98F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TerminationTest", "test\TerminationTest.vcproj", "{A9921F2C-D8D3-4A4A-87C8-9A34DDD588B2}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FifoSchedulerTest", "test\FifoSchedulerTest.vcproj", "{3A9E80AF-DD29-4CE7-AB7D-1A13C766AC96}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidResultAssignTest", "test\InvalidResultAssignTest.vcproj", "{962F23F9-D433-4825-9945-D5A5C5337B7F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidResultDefCtorTest", "test\InvalidResultDefCtorTest.vcproj", "{8381EC0A-7D7B-4127-93E8-DFE12F023611}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvalidResultCopyTest", "test\InvalidResultCopyTest.vcproj", "{856A30E8-85E8-4BE4-B208-B5FC395408AF}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UnconsumedResultTest", "test\UnconsumedResultTest.vcproj", "{93FEA76A-3C04-4A70-B53B-485490CF38A1}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InStateReactionTest", "test\InStateReactionTest.vcproj", "{DAD64722-72C8-4424-9024-185A0D0D897A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TuTest", "test\TuTest.vcproj", "{892D213C-F575-4003-BB0F-5787DA2C407D}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Performance", "example\Performance\Performance.vcproj", "{045411F0-A746-4DB3-85B9-C9AEDE6D5CBA}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{3D7ED412-11AE-4AE7-8258-0FF6CF8BD11C}"
+ ProjectSection(SolutionItems) = preProject
+ example\Jamfile.v2 = example\Jamfile.v2
+ test\Jamfile.v2 = test\Jamfile.v2
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Documentation", "Documentation", "{FF998410-FD7E-4B0E-8754-20003E19F51D}"
+ ProjectSection(SolutionItems) = preProject
+ doc\acknowledgments.html = doc\acknowledgments.html
+ doc\configuration.html = doc\configuration.html
+ doc\contact.html = doc\contact.html
+ doc\definitions.html = doc\definitions.html
+ doc\faq.html = doc\faq.html
+ doc\future_and_history.html = doc\future_and_history.html
+ doc\index.html = doc\index.html
+ doc\performance.html = doc\performance.html
+ doc\rationale.html = doc\rationale.html
+ doc\reference.html = doc\reference.html
+ doc\tutorial.html = doc\tutorial.html
+ doc\uml_mapping.html = doc\uml_mapping.html
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ DebugFail|Win32 = DebugFail|Win32
+ Release|Win32 = Release|Win32
+ ReleaseFail|Win32 = ReleaseFail|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug|Win32.ActiveCfg = Debug|Win32
+ {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Debug|Win32.Build.0 = Debug|Win32
+ {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release|Win32.ActiveCfg = Release|Win32
+ {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.Release|Win32.Build.0 = Release|Win32
+ {CF66596F-7DEA-4BB6-A728-F7FEF2889855}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {7FD5B025-1675-4D68-BA85-588AFC99C5B8}.Debug|Win32.ActiveCfg = Debug|Win32
+ {7FD5B025-1675-4D68-BA85-588AFC99C5B8}.Debug|Win32.Build.0 = Debug|Win32
+ {7FD5B025-1675-4D68-BA85-588AFC99C5B8}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {7FD5B025-1675-4D68-BA85-588AFC99C5B8}.Release|Win32.ActiveCfg = Release|Win32
+ {7FD5B025-1675-4D68-BA85-588AFC99C5B8}.Release|Win32.Build.0 = Release|Win32
+ {7FD5B025-1675-4D68-BA85-588AFC99C5B8}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {155DB9E1-28AC-4671-8248-5FD03E8FCDAD}.Debug|Win32.ActiveCfg = Debug|Win32
+ {155DB9E1-28AC-4671-8248-5FD03E8FCDAD}.Debug|Win32.Build.0 = Debug|Win32
+ {155DB9E1-28AC-4671-8248-5FD03E8FCDAD}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {155DB9E1-28AC-4671-8248-5FD03E8FCDAD}.Release|Win32.ActiveCfg = Release|Win32
+ {155DB9E1-28AC-4671-8248-5FD03E8FCDAD}.Release|Win32.Build.0 = Release|Win32
+ {155DB9E1-28AC-4671-8248-5FD03E8FCDAD}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}.Debug|Win32.ActiveCfg = Debug|Win32
+ {4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}.Debug|Win32.Build.0 = Debug|Win32
+ {4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}.Release|Win32.ActiveCfg = Release|Win32
+ {4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}.Release|Win32.Build.0 = Release|Win32
+ {4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {11CCA9FC-6012-4B64-8C61-808D0F8D1B51}.Debug|Win32.ActiveCfg = Debug|Win32
+ {11CCA9FC-6012-4B64-8C61-808D0F8D1B51}.Debug|Win32.Build.0 = Debug|Win32
+ {11CCA9FC-6012-4B64-8C61-808D0F8D1B51}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {11CCA9FC-6012-4B64-8C61-808D0F8D1B51}.Release|Win32.ActiveCfg = Release|Win32
+ {11CCA9FC-6012-4B64-8C61-808D0F8D1B51}.Release|Win32.Build.0 = Release|Win32
+ {11CCA9FC-6012-4B64-8C61-808D0F8D1B51}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {DFA55264-E7F5-43FE-841F-D56AC48FF2A8}.Debug|Win32.ActiveCfg = Debug|Win32
+ {DFA55264-E7F5-43FE-841F-D56AC48FF2A8}.Debug|Win32.Build.0 = Debug|Win32
+ {DFA55264-E7F5-43FE-841F-D56AC48FF2A8}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {DFA55264-E7F5-43FE-841F-D56AC48FF2A8}.Release|Win32.ActiveCfg = Release|Win32
+ {DFA55264-E7F5-43FE-841F-D56AC48FF2A8}.Release|Win32.Build.0 = Release|Win32
+ {DFA55264-E7F5-43FE-841F-D56AC48FF2A8}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Debug|Win32.Build.0 = Debug|Win32
+ {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release|Win32.ActiveCfg = Release|Win32
+ {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.Release|Win32.Build.0 = Release|Win32
+ {D9103E3E-640D-4AB7-910C-ACA96709ED0A}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {E599D469-A2BD-42FB-A217-73A420213D06}.Debug|Win32.ActiveCfg = Debug|Win32
+ {E599D469-A2BD-42FB-A217-73A420213D06}.Debug|Win32.Build.0 = Debug|Win32
+ {E599D469-A2BD-42FB-A217-73A420213D06}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {E599D469-A2BD-42FB-A217-73A420213D06}.Release|Win32.ActiveCfg = Release|Win32
+ {E599D469-A2BD-42FB-A217-73A420213D06}.Release|Win32.Build.0 = Release|Win32
+ {E599D469-A2BD-42FB-A217-73A420213D06}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {345A4DD5-8B5C-40E4-95D2-4CF5A2621040}.Debug|Win32.ActiveCfg = Debug|Win32
+ {345A4DD5-8B5C-40E4-95D2-4CF5A2621040}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {345A4DD5-8B5C-40E4-95D2-4CF5A2621040}.DebugFail|Win32.Build.0 = Debug|Win32
+ {345A4DD5-8B5C-40E4-95D2-4CF5A2621040}.Release|Win32.ActiveCfg = Release|Win32
+ {345A4DD5-8B5C-40E4-95D2-4CF5A2621040}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {345A4DD5-8B5C-40E4-95D2-4CF5A2621040}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {FCB42B5B-DDE0-4E12-8474-F55DC85606FE}.Debug|Win32.ActiveCfg = Debug|Win32
+ {FCB42B5B-DDE0-4E12-8474-F55DC85606FE}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {FCB42B5B-DDE0-4E12-8474-F55DC85606FE}.DebugFail|Win32.Build.0 = Debug|Win32
+ {FCB42B5B-DDE0-4E12-8474-F55DC85606FE}.Release|Win32.ActiveCfg = Release|Win32
+ {FCB42B5B-DDE0-4E12-8474-F55DC85606FE}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {FCB42B5B-DDE0-4E12-8474-F55DC85606FE}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {206654FA-7AA0-4E06-BCFA-DC94D4281755}.Debug|Win32.ActiveCfg = Debug|Win32
+ {206654FA-7AA0-4E06-BCFA-DC94D4281755}.Debug|Win32.Build.0 = Debug|Win32
+ {206654FA-7AA0-4E06-BCFA-DC94D4281755}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {206654FA-7AA0-4E06-BCFA-DC94D4281755}.Release|Win32.ActiveCfg = Release|Win32
+ {206654FA-7AA0-4E06-BCFA-DC94D4281755}.Release|Win32.Build.0 = Release|Win32
+ {206654FA-7AA0-4E06-BCFA-DC94D4281755}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {AA1A7669-702E-4D56-A390-849612EB9CDF}.Debug|Win32.ActiveCfg = Debug|Win32
+ {AA1A7669-702E-4D56-A390-849612EB9CDF}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {AA1A7669-702E-4D56-A390-849612EB9CDF}.DebugFail|Win32.Build.0 = Debug|Win32
+ {AA1A7669-702E-4D56-A390-849612EB9CDF}.Release|Win32.ActiveCfg = Release|Win32
+ {AA1A7669-702E-4D56-A390-849612EB9CDF}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {AA1A7669-702E-4D56-A390-849612EB9CDF}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {7083917A-4A8D-4BEF-A435-61AAF3BA554C}.Debug|Win32.ActiveCfg = Debug|Win32
+ {7083917A-4A8D-4BEF-A435-61AAF3BA554C}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {7083917A-4A8D-4BEF-A435-61AAF3BA554C}.DebugFail|Win32.Build.0 = Debug|Win32
+ {7083917A-4A8D-4BEF-A435-61AAF3BA554C}.Release|Win32.ActiveCfg = Release|Win32
+ {7083917A-4A8D-4BEF-A435-61AAF3BA554C}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {7083917A-4A8D-4BEF-A435-61AAF3BA554C}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {CCB4DBF2-626B-4DA5-AB02-9504B0A97F9A}.Debug|Win32.ActiveCfg = Debug|Win32
+ {CCB4DBF2-626B-4DA5-AB02-9504B0A97F9A}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {CCB4DBF2-626B-4DA5-AB02-9504B0A97F9A}.DebugFail|Win32.Build.0 = Debug|Win32
+ {CCB4DBF2-626B-4DA5-AB02-9504B0A97F9A}.Release|Win32.ActiveCfg = Release|Win32
+ {CCB4DBF2-626B-4DA5-AB02-9504B0A97F9A}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {CCB4DBF2-626B-4DA5-AB02-9504B0A97F9A}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {B2739180-6048-4CA7-A96B-ECE182100321}.Debug|Win32.ActiveCfg = Debug|Win32
+ {B2739180-6048-4CA7-A96B-ECE182100321}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {B2739180-6048-4CA7-A96B-ECE182100321}.DebugFail|Win32.Build.0 = Debug|Win32
+ {B2739180-6048-4CA7-A96B-ECE182100321}.Release|Win32.ActiveCfg = Release|Win32
+ {B2739180-6048-4CA7-A96B-ECE182100321}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {B2739180-6048-4CA7-A96B-ECE182100321}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {7C58D72A-C6EA-4E25-92E8-5ADEB5F61662}.Debug|Win32.ActiveCfg = Debug|Win32
+ {7C58D72A-C6EA-4E25-92E8-5ADEB5F61662}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {7C58D72A-C6EA-4E25-92E8-5ADEB5F61662}.DebugFail|Win32.Build.0 = Debug|Win32
+ {7C58D72A-C6EA-4E25-92E8-5ADEB5F61662}.Release|Win32.ActiveCfg = Release|Win32
+ {7C58D72A-C6EA-4E25-92E8-5ADEB5F61662}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {7C58D72A-C6EA-4E25-92E8-5ADEB5F61662}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {801027D8-DC4E-48DC-9F98-75BA0B7F2997}.Debug|Win32.ActiveCfg = Debug|Win32
+ {801027D8-DC4E-48DC-9F98-75BA0B7F2997}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {801027D8-DC4E-48DC-9F98-75BA0B7F2997}.DebugFail|Win32.Build.0 = Debug|Win32
+ {801027D8-DC4E-48DC-9F98-75BA0B7F2997}.Release|Win32.ActiveCfg = Release|Win32
+ {801027D8-DC4E-48DC-9F98-75BA0B7F2997}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {801027D8-DC4E-48DC-9F98-75BA0B7F2997}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {A211FFC9-D4B4-4C3A-900E-044A7519F8E4}.Debug|Win32.ActiveCfg = Debug|Win32
+ {A211FFC9-D4B4-4C3A-900E-044A7519F8E4}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {A211FFC9-D4B4-4C3A-900E-044A7519F8E4}.DebugFail|Win32.Build.0 = Debug|Win32
+ {A211FFC9-D4B4-4C3A-900E-044A7519F8E4}.Release|Win32.ActiveCfg = Release|Win32
+ {A211FFC9-D4B4-4C3A-900E-044A7519F8E4}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {A211FFC9-D4B4-4C3A-900E-044A7519F8E4}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {BE34C83E-6D4A-4E49-B9BA-EFF47ECBAA39}.Debug|Win32.ActiveCfg = Debug|Win32
+ {BE34C83E-6D4A-4E49-B9BA-EFF47ECBAA39}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {BE34C83E-6D4A-4E49-B9BA-EFF47ECBAA39}.DebugFail|Win32.Build.0 = Debug|Win32
+ {BE34C83E-6D4A-4E49-B9BA-EFF47ECBAA39}.Release|Win32.ActiveCfg = Release|Win32
+ {BE34C83E-6D4A-4E49-B9BA-EFF47ECBAA39}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {BE34C83E-6D4A-4E49-B9BA-EFF47ECBAA39}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {7D2AB32E-930A-4758-8FAF-F5E0A19A411C}.Debug|Win32.ActiveCfg = Debug|Win32
+ {7D2AB32E-930A-4758-8FAF-F5E0A19A411C}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {7D2AB32E-930A-4758-8FAF-F5E0A19A411C}.DebugFail|Win32.Build.0 = Debug|Win32
+ {7D2AB32E-930A-4758-8FAF-F5E0A19A411C}.Release|Win32.ActiveCfg = Release|Win32
+ {7D2AB32E-930A-4758-8FAF-F5E0A19A411C}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {7D2AB32E-930A-4758-8FAF-F5E0A19A411C}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {41A33CE9-785E-4EC2-9022-A3B229D4935B}.Debug|Win32.ActiveCfg = Debug|Win32
+ {41A33CE9-785E-4EC2-9022-A3B229D4935B}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {41A33CE9-785E-4EC2-9022-A3B229D4935B}.DebugFail|Win32.Build.0 = Debug|Win32
+ {41A33CE9-785E-4EC2-9022-A3B229D4935B}.Release|Win32.ActiveCfg = Release|Win32
+ {41A33CE9-785E-4EC2-9022-A3B229D4935B}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {41A33CE9-785E-4EC2-9022-A3B229D4935B}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {FDBCBAEF-C973-42C2-BD8B-4796C0A1E6A8}.Debug|Win32.ActiveCfg = Debug|Win32
+ {FDBCBAEF-C973-42C2-BD8B-4796C0A1E6A8}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {FDBCBAEF-C973-42C2-BD8B-4796C0A1E6A8}.DebugFail|Win32.Build.0 = Debug|Win32
+ {FDBCBAEF-C973-42C2-BD8B-4796C0A1E6A8}.Release|Win32.ActiveCfg = Release|Win32
+ {FDBCBAEF-C973-42C2-BD8B-4796C0A1E6A8}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {FDBCBAEF-C973-42C2-BD8B-4796C0A1E6A8}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {7B6A4F61-6210-4FDC-BC23-660DA10EE7DD}.Debug|Win32.ActiveCfg = Debug|Win32
+ {7B6A4F61-6210-4FDC-BC23-660DA10EE7DD}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {7B6A4F61-6210-4FDC-BC23-660DA10EE7DD}.DebugFail|Win32.Build.0 = Debug|Win32
+ {7B6A4F61-6210-4FDC-BC23-660DA10EE7DD}.Release|Win32.ActiveCfg = Release|Win32
+ {7B6A4F61-6210-4FDC-BC23-660DA10EE7DD}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {7B6A4F61-6210-4FDC-BC23-660DA10EE7DD}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {1826122F-4DB3-4C69-8BB2-E0B18D809FA9}.Debug|Win32.ActiveCfg = Debug|Win32
+ {1826122F-4DB3-4C69-8BB2-E0B18D809FA9}.Debug|Win32.Build.0 = Debug|Win32
+ {1826122F-4DB3-4C69-8BB2-E0B18D809FA9}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {1826122F-4DB3-4C69-8BB2-E0B18D809FA9}.Release|Win32.ActiveCfg = Release|Win32
+ {1826122F-4DB3-4C69-8BB2-E0B18D809FA9}.Release|Win32.Build.0 = Release|Win32
+ {1826122F-4DB3-4C69-8BB2-E0B18D809FA9}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {6FBB8140-6B00-4BF1-AD6D-9D394DE3610F}.Debug|Win32.ActiveCfg = Debug|Win32
+ {6FBB8140-6B00-4BF1-AD6D-9D394DE3610F}.Debug|Win32.Build.0 = Debug|Win32
+ {6FBB8140-6B00-4BF1-AD6D-9D394DE3610F}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {6FBB8140-6B00-4BF1-AD6D-9D394DE3610F}.Release|Win32.ActiveCfg = Release|Win32
+ {6FBB8140-6B00-4BF1-AD6D-9D394DE3610F}.Release|Win32.Build.0 = Release|Win32
+ {6FBB8140-6B00-4BF1-AD6D-9D394DE3610F}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {D52BF95D-392C-4535-B332-CB3CC29C8227}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D52BF95D-392C-4535-B332-CB3CC29C8227}.Debug|Win32.Build.0 = Debug|Win32
+ {D52BF95D-392C-4535-B332-CB3CC29C8227}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {D52BF95D-392C-4535-B332-CB3CC29C8227}.Release|Win32.ActiveCfg = Release|Win32
+ {D52BF95D-392C-4535-B332-CB3CC29C8227}.Release|Win32.Build.0 = Release|Win32
+ {D52BF95D-392C-4535-B332-CB3CC29C8227}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {2D85E7DE-2347-43EA-843F-691101E6F98F}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2D85E7DE-2347-43EA-843F-691101E6F98F}.Debug|Win32.Build.0 = Debug|Win32
+ {2D85E7DE-2347-43EA-843F-691101E6F98F}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {2D85E7DE-2347-43EA-843F-691101E6F98F}.Release|Win32.ActiveCfg = Release|Win32
+ {2D85E7DE-2347-43EA-843F-691101E6F98F}.Release|Win32.Build.0 = Release|Win32
+ {2D85E7DE-2347-43EA-843F-691101E6F98F}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {A9921F2C-D8D3-4A4A-87C8-9A34DDD588B2}.Debug|Win32.ActiveCfg = Debug|Win32
+ {A9921F2C-D8D3-4A4A-87C8-9A34DDD588B2}.Debug|Win32.Build.0 = Debug|Win32
+ {A9921F2C-D8D3-4A4A-87C8-9A34DDD588B2}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {A9921F2C-D8D3-4A4A-87C8-9A34DDD588B2}.Release|Win32.ActiveCfg = Release|Win32
+ {A9921F2C-D8D3-4A4A-87C8-9A34DDD588B2}.Release|Win32.Build.0 = Release|Win32
+ {A9921F2C-D8D3-4A4A-87C8-9A34DDD588B2}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {3A9E80AF-DD29-4CE7-AB7D-1A13C766AC96}.Debug|Win32.ActiveCfg = Debug|Win32
+ {3A9E80AF-DD29-4CE7-AB7D-1A13C766AC96}.Debug|Win32.Build.0 = Debug|Win32
+ {3A9E80AF-DD29-4CE7-AB7D-1A13C766AC96}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {3A9E80AF-DD29-4CE7-AB7D-1A13C766AC96}.Release|Win32.ActiveCfg = Release|Win32
+ {3A9E80AF-DD29-4CE7-AB7D-1A13C766AC96}.Release|Win32.Build.0 = Release|Win32
+ {3A9E80AF-DD29-4CE7-AB7D-1A13C766AC96}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {962F23F9-D433-4825-9945-D5A5C5337B7F}.Debug|Win32.ActiveCfg = Debug|Win32
+ {962F23F9-D433-4825-9945-D5A5C5337B7F}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {962F23F9-D433-4825-9945-D5A5C5337B7F}.DebugFail|Win32.Build.0 = Debug|Win32
+ {962F23F9-D433-4825-9945-D5A5C5337B7F}.Release|Win32.ActiveCfg = Release|Win32
+ {962F23F9-D433-4825-9945-D5A5C5337B7F}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {962F23F9-D433-4825-9945-D5A5C5337B7F}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {8381EC0A-7D7B-4127-93E8-DFE12F023611}.Debug|Win32.ActiveCfg = Debug|Win32
+ {8381EC0A-7D7B-4127-93E8-DFE12F023611}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {8381EC0A-7D7B-4127-93E8-DFE12F023611}.DebugFail|Win32.Build.0 = Debug|Win32
+ {8381EC0A-7D7B-4127-93E8-DFE12F023611}.Release|Win32.ActiveCfg = Release|Win32
+ {8381EC0A-7D7B-4127-93E8-DFE12F023611}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {8381EC0A-7D7B-4127-93E8-DFE12F023611}.ReleaseFail|Win32.Build.0 = Release|Win32
+ {856A30E8-85E8-4BE4-B208-B5FC395408AF}.Debug|Win32.ActiveCfg = Debug|Win32
+ {856A30E8-85E8-4BE4-B208-B5FC395408AF}.Debug|Win32.Build.0 = Debug|Win32
+ {856A30E8-85E8-4BE4-B208-B5FC395408AF}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {856A30E8-85E8-4BE4-B208-B5FC395408AF}.Release|Win32.ActiveCfg = Release|Win32
+ {856A30E8-85E8-4BE4-B208-B5FC395408AF}.Release|Win32.Build.0 = Release|Win32
+ {856A30E8-85E8-4BE4-B208-B5FC395408AF}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {93FEA76A-3C04-4A70-B53B-485490CF38A1}.Debug|Win32.ActiveCfg = Debug|Win32
+ {93FEA76A-3C04-4A70-B53B-485490CF38A1}.Debug|Win32.Build.0 = Debug|Win32
+ {93FEA76A-3C04-4A70-B53B-485490CF38A1}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {93FEA76A-3C04-4A70-B53B-485490CF38A1}.Release|Win32.ActiveCfg = Release|Win32
+ {93FEA76A-3C04-4A70-B53B-485490CF38A1}.Release|Win32.Build.0 = Release|Win32
+ {93FEA76A-3C04-4A70-B53B-485490CF38A1}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {DAD64722-72C8-4424-9024-185A0D0D897A}.Debug|Win32.ActiveCfg = Debug|Win32
+ {DAD64722-72C8-4424-9024-185A0D0D897A}.Debug|Win32.Build.0 = Debug|Win32
+ {DAD64722-72C8-4424-9024-185A0D0D897A}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {DAD64722-72C8-4424-9024-185A0D0D897A}.Release|Win32.ActiveCfg = Release|Win32
+ {DAD64722-72C8-4424-9024-185A0D0D897A}.Release|Win32.Build.0 = Release|Win32
+ {DAD64722-72C8-4424-9024-185A0D0D897A}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {892D213C-F575-4003-BB0F-5787DA2C407D}.Debug|Win32.ActiveCfg = Debug|Win32
+ {892D213C-F575-4003-BB0F-5787DA2C407D}.Debug|Win32.Build.0 = Debug|Win32
+ {892D213C-F575-4003-BB0F-5787DA2C407D}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {892D213C-F575-4003-BB0F-5787DA2C407D}.Release|Win32.ActiveCfg = Release|Win32
+ {892D213C-F575-4003-BB0F-5787DA2C407D}.Release|Win32.Build.0 = Release|Win32
+ {892D213C-F575-4003-BB0F-5787DA2C407D}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ {045411F0-A746-4DB3-85B9-C9AEDE6D5CBA}.Debug|Win32.ActiveCfg = Debug|Win32
+ {045411F0-A746-4DB3-85B9-C9AEDE6D5CBA}.Debug|Win32.Build.0 = Debug|Win32
+ {045411F0-A746-4DB3-85B9-C9AEDE6D5CBA}.DebugFail|Win32.ActiveCfg = Debug|Win32
+ {045411F0-A746-4DB3-85B9-C9AEDE6D5CBA}.Release|Win32.ActiveCfg = Release|Win32
+ {045411F0-A746-4DB3-85B9-C9AEDE6D5CBA}.Release|Win32.Build.0 = Release|Win32
+ {045411F0-A746-4DB3-85B9-C9AEDE6D5CBA}.ReleaseFail|Win32.ActiveCfg = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {FF998410-FD7E-4B0E-8754-20003E19F51D} = {3D7ED412-11AE-4AE7-8258-0FF6CF8BD11C}
+ EndGlobalSection
+EndGlobal

Modified: branches/CMake/release/libs/statechart/doc/acknowledgments.html
==============================================================================
--- branches/CMake/release/libs/statechart/doc/acknowledgments.html (original)
+++ branches/CMake/release/libs/statechart/doc/acknowledgments.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -84,23 +84,25 @@
 
   <p>Thanks for feedback and/or encouragement go to:</p>
 
- <p>Bardur Arantsson, Robert Bell, Bohdan, Wayne Chao, Topher Cooper, Peter
- Dimov, Reece Dunn, John Fuller, Jeff Garland, Eugene Gladyshev, David A.
- Greene, Douglas Gregor, Gustavo Guerra, Aleksey Gurtovoy, Iain K. Hanson,
- David B. Held, J&uuml;rgen Hunold, Oliver Kowalke, Simon Meiklejohn, Johan
- Nilsson, Matthieu Paindavoine, Chris Russell, Rob Stewart, Kwee Heong Tan,
- Marcin Tustin, Vincent N. Virgilio, Gang Wang and Scott Woods.</p>
+ <p>Bardur Arantsson, Robert Bell, Bohdan, Wayne Chao, Topher Cooper,
+ Philippe David, Peter Dimov, Reece Dunn, John Fuller, Jeff Garland, Eugene
+ Gladyshev, David A. Greene, Douglas Gregor, Gustavo Guerra, Aleksey
+ Gurtovoy, Federico J. Fern&aacute;ndez, Iain K. Hanson, David B. Held,
+ J&uuml;rgen Hunold, Sean Kelly, Oliver Kowalke, Simon Meiklejohn, Jiang
+ Miao, Johan Nilsson, Matthieu Paindavoine, Chris Paulse, Yuval Ronen, Chris
+ Russell, Rob Stewart, Kwee Heong Tan, Marcin Tustin, Vincent N. Virgilio,
+ Gang Wang, Steven Watanabe and Scott Woods.</p>
   <hr>
 
   <p><a href="http://validator.w3.org/check?uri=referer"><img border="0" src=
   "http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Transitional"
   height="31" width="88"></a></p>
 
- <p>Revised
- <!--webbot bot="Timestamp" s-type="EDITED" s-format="%d %B, %Y" startspan -->03 December, 2006<!--webbot bot="Timestamp" endspan i-checksum="38512" --></p>
+ <p>Revised 05 January, 2008</p>
+
+ <p><i>Copyright &copy; 2003-2008 <a href="contact.html">Andreas Huber
+ D&ouml;nni</a></i></p>
 
- <p><i>Copyright &copy; 2003-<!--webbot bot="Timestamp" s-type="EDITED" s-format="%Y" startspan -->2006<!--webbot bot="Timestamp" endspan i-checksum="770" -->
- Andreas Huber Dönni</i></p>
 
   <p><i>Distributed under the Boost Software License, Version 1.0. (See
   accompanying file LICENSE_1_0.txt or

Modified: branches/CMake/release/libs/statechart/doc/configuration.html
==============================================================================
--- branches/CMake/release/libs/statechart/doc/configuration.html (original)
+++ branches/CMake/release/libs/statechart/doc/configuration.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -42,12 +42,6 @@
 
     <dd><a href="#ApplicationDefinedMacros">Application Defined
     Macros</a></dd>
-
- <dt><a href="#CompilerSpecificConfiguration">Compiler-specific
- configuration</a></dt>
-
- <dd><a href="#Intel70">Intel 7.0 (Win32, MS Visual Studio 6 std
- library)</a></dd>
   </dl>
 
   <h1><a id="GeneralConfiguration" name="GeneralConfiguration">General
@@ -158,29 +152,14 @@
   technology such violations may or may not manifest themselves in link-time
   errors.</p>
 
- <h1><a id="CompilerSpecificConfiguration" name=
- "CompilerSpecificConfiguration">Compiler-specific configuration</a></h1>
-
- <h2><a id="Intel70" name="Intel70">Intel 7.0 (Win32, MS Visual Studio 6 std
- library)</a></h2>
-
- <p>By default, this compiler has argument dependent lookup disabled. ADL
- must be enabled to compile the library without errors. To enable ADL,
- <code>/Qoption,c,--arg_dep_lookup</code> must be added to the compiler
- command line. See <a href=
- "../../../boost/config/compiler/intel.hpp">&lt;boost/config/compiler/intel.hpp&gt;</a>
- for more information.</p>
- <hr>
-
   <p><a href="http://validator.w3.org/check?uri=referer"><img border="0" src=
   "http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Transitional"
   height="31" width="88"></a></p>
 
- <p>Revised
- <!--webbot bot="Timestamp" s-type="EDITED" s-format="%d %B, %Y" startspan -->03 December, 2006<!--webbot bot="Timestamp" endspan i-checksum="38512" --></p>
+ <p>Revised 05 January, 2008</p>
 
- <p><i>Copyright &copy; 2003-<!--webbot bot="Timestamp" s-type="EDITED" s-format="%Y" startspan -->2006<!--webbot bot="Timestamp" endspan i-checksum="770" -->
- Andreas Huber Dönni</i></p>
+ <p><i>Copyright &copy; 2003-2008 <a href="contact.html">Andreas Huber
+ D&ouml;nni</a></i></p>
 
   <p><i>Distributed under the Boost Software License, Version 1.0. (See
   accompanying file LICENSE_1_0.txt or

Modified: branches/CMake/release/libs/statechart/doc/faq.html
==============================================================================
--- branches/CMake/release/libs/statechart/doc/faq.html (original)
+++ branches/CMake/release/libs/statechart/doc/faq.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -40,6 +40,9 @@
     state machine and modify its layout in the subclass?</a></dt>
 
     <dt>What about UML2.0 features?</dt>
+
+ <dt><a href="#AssertInStateDestructor">Why do I get an assert when I
+ access the state machine from a state destructor?</a></dt>
 
     <dt><a href="#EmbeddedApplications">Is Boost.Statechart suitable for
     embedded applications?</a></dt>
@@ -244,6 +247,8 @@
   <b>initiate();</b>
 }
 </pre>
+ <p>The PingPong example demonstrates how the inner workings of an
+ asynchronous_state_machine<> subclass can be hidden.</p>
 
   <h2><a name="MachineInheritance" id="MachineInheritance">Is it possible to
   inherit from a given state machine and modify its layout in the
@@ -313,6 +318,40 @@
     transition destination as a template parameter)</li>
   </ul>
 
+ <h2><a name="AssertInStateDestructor" id="AssertInStateDestructor">Why do I
+ get an assert when I access the state machine from a state destructor?</a>
+ </h2>
+
+ <p>When compiled with <code>NDEBUG</code> undefined, running the following
+ program results in a failed assert:</p>
+ <pre>#include &lt;boost/statechart/state_machine.hpp&gt;
+#include &lt;boost/statechart/simple_state.hpp&gt;
+#include &lt;iostream&gt;
+
+struct Initial;
+struct Machine : boost::statechart::state_machine&lt; Machine, Initial &gt;
+{
+ Machine() { someMember_ = 42; }
+ int someMember_;
+};
+
+struct Initial : boost::statechart::simple_state&lt; Initial, Machine &gt;
+{
+ ~Initial() { std::cout &lt;&lt; outermost_context().someMember_; }
+};
+
+int main()
+{
+ Machine().initiate();
+ return 0;
+}</pre>
+ <p>The problem arises because <code>state_machine<>::~state_machine</code>
+ inevitably destructs all remaining active states. At this time,
+ <code>Machine::~Machine</code> has already been run, making it illegal to
+ access any of the <code>Machine</code> members. This problem can be avoided
+ by defining the following destructor:</p>
+ <pre>~Machine() { terminate(); }</pre>
+
   <h2><a name="EmbeddedApplications" id="EmbeddedApplications">Is
   Boost.Statechart suitable for embedded applications?</a></h2>
 
@@ -516,14 +555,13 @@
   and <a href=
   "reference.html#clear_deep_history">simple_state::clear_deep_history()</a>.
   Calling these functions is often preferable to introducting additional
- normal transitions when ...
+ normal transitions when ...</p>
   <ul>
     <li>a state with history is the target of many transitions,
     <b>and/or</b></li>
     <li>the decision to ignore history is made in a different place than
     the transition to a state with history</li>
   </ul>
- </p>
 
   <h2><a name="Dll" id="Dll">How can I compile a state machine into a dynamic
   link library (DLL)?</a></h2>
@@ -732,11 +770,10 @@
   "http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Transitional"
   height="31" width="88"></a></p>
 
- <p>Revised
- <!--webbot bot="Timestamp" s-type="EDITED" s-format="%d %B, %Y" startspan -->15 November, 2007<!--webbot bot="Timestamp" endspan i-checksum="38512" --></p>
+ <p>Revised 05 January, 2008</p>
 
- <p><i>Copyright &copy; 2003-<!--webbot bot="Timestamp" s-type="EDITED" s-format="%Y" startspan -->2007<!--webbot bot="Timestamp" endspan i-checksum="770" -->
- Andreas Huber Dönni</i></p>
+ <p><i>Copyright &copy; 2003-2008 <a href="contact.html">Andreas Huber
+ D&ouml;nni</a></i></p>
 
   <p><i>Distributed under the Boost Software License, Version 1.0. (See
   accompanying file LICENSE_1_0.txt or

Modified: branches/CMake/release/libs/statechart/doc/future_and_history.html
==============================================================================
--- branches/CMake/release/libs/statechart/doc/future_and_history.html (original)
+++ branches/CMake/release/libs/statechart/doc/future_and_history.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -46,7 +46,8 @@
 
   <ol>
     <li>Implement a choice-point-like class, as discussed in
- this thread</li>
+ <a href="http://thread.gmane.org/gmane.comp.lib.boost.devel/164460">this
+ thread</a></li>
 
     <li>Optimize state-entry and state-exit for speed and code-size</li>
 
@@ -139,16 +140,33 @@
 
   <p>(<font color="#FF0000">red</font> = points raised during formal
   review)</p>
+ <p>Unreleased (committed to the SVN trunk)</p>
+ <ul>
+ <li>Removed all permanent warning suppressions from library headers
+ and avoided the resulting warnings with other means (suggested by
+ Steven Watanabe; thanks to Peter Dimov and Yuval Ronen for insight
+ into when C4511 & C4512 are issued)</li>
+ <li>Added the FAQ item <a href="faq.html#AssertInStateDestructor">Why
+ do I get an assert when I access the state machine from a state
+ destructor?</a> (due to feedback from Jiang Miao)</li>
+ <li>Added defaults for the last two template parameters of <a href=
+ "reference.html#ClassTemplatein_state_reaction">in_state_reaction<></a>
+ (due to feedback from Sean Kelly)</li>
+ <li>Adapted fifo_scheduler&lt;&gt; to the changed allocator interface of
+ boost::function</li>
+ <li>Changed the PingPong example to demonstrate how the inner workings of
+ an asynchronous_state_machine<> subclass can be hidden</li>
+ </ul>
 
   <p>1.35.0</p>
-
   <ul>
- <li>Added placement new overload to <code>event&lt;&gt;</code></li>
- <li>Made <code>event&lt;&gt;</code> copy-assignable</li>
+ <li>Added placement new overload to <code>event&lt;&gt;</code> (due to
+ feedback from Federico J. Fern&aacute;ndez)</li>
+ <li>Made <code>event&lt;&gt;</code> copy-assignable (Federico J.
+ Fern&aacute;ndez)</li>
   </ul>
 
   <p>1.34.0</p>
-
   <ul>
     <li>Fixed a bug that prevented compilation of exception_translator.hpp
     (reported by Oliver Kowalke) and adapted TransitionTest.cpp to also test
@@ -670,11 +688,10 @@
   "http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Transitional"
   height="31" width="88"></a></p>
 
- <p>Revised
- <!--webbot bot="Timestamp" s-type="EDITED" s-format="%d %B, %Y" startspan -->09 April, 2007<!--webbot bot="Timestamp" endspan i-checksum="30014" --></p>
+ <p>Revised 05 January, 2008</p>
 
- <p><i>Copyright &copy; 2003-<!--webbot bot="Timestamp" s-type="EDITED" s-format="%Y" startspan -->2007<!--webbot bot="Timestamp" endspan i-checksum="778" -->
- Andreas Huber Dönni</i></p>
+ <p><i>Copyright &copy; 2003-2008 <a href="contact.html">Andreas Huber
+ D&ouml;nni</a></i></p>
 
   <p><i>Distributed under the Boost Software License, Version 1.0. (See
   accompanying file LICENSE_1_0.txt or

Modified: branches/CMake/release/libs/statechart/doc/index.html
==============================================================================
--- branches/CMake/release/libs/statechart/doc/index.html (original)
+++ branches/CMake/release/libs/statechart/doc/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -122,7 +122,7 @@
 
   <p>Whether and how Boost.Statechart will work on your platform is best
   determined on the <a href=
- "http://beta.boost.org/development/tests/trunk/user/statechart.html">
+ "http://www.boost.org/development/tests/trunk/user/statechart.html">
   status page</a>. If the cells in your compilers column are all green, the
   library should work as advertised. Cells of different color indicate
   possible problems; follow the links for details. Before employing the

Modified: branches/CMake/release/libs/statechart/doc/reference.html
==============================================================================
--- branches/CMake/release/libs/statechart/doc/reference.html (original)
+++ branches/CMake/release/libs/statechart/doc/reference.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,11 +4,17 @@
 <head>
   <meta http-equiv="Content-Language" content="en-us">
   <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
- <meta name="GENERATOR" content="Microsoft FrontPage 6.0">
+ <meta name="GENERATOR" content="Microsoft FrontPage 12.0">
   <meta name="ProgId" content="FrontPage.Editor.Document">
   <link rel="stylesheet" type="text/css" href="../../../boost.css">
 
   <title>The Boost Statechart Library - Reference</title>
+ <style type="text/css">
+ .style1
+ {
+ width: 45%;
+ }
+ </style>
 </head>
 
 <body link="#0000FF" vlink="#800080">
@@ -184,27 +190,27 @@
 
   <table border="3" cellpadding="2" width="100%" summary="Scheduler concept">
     <tr>
- <td width="24%"><b>Expression</b></td>
+ <td><b>Expression</b></td>
 
- <td width="25%"><b>Type</b></td>
+ <td><b>Type</b></td>
 
- <td width="48%"><b>Result</b></td>
+ <td><b>Result</b></td>
     </tr>
 
     <tr>
- <td width="24%"><code>cpc.my_scheduler()</code></td>
+ <td><code>cpc.my_scheduler()</code></td>
 
- <td width="25%"><code>S &amp;</code></td>
+ <td><code>S &amp;</code></td>
 
- <td width="48%">A reference to the scheduler</td>
+ <td>A reference to the scheduler</td>
     </tr>
 
     <tr>
- <td width="24%"><code>cpc.my_handle()</code></td>
+ <td><code>cpc.my_handle()</code></td>
 
- <td width="25%"><code>S::processor_handle</code></td>
+ <td><code>S::processor_handle</code></td>
 
- <td width="48%">The handle identifying the
+ <td>The handle identifying the
       <code>event_processor&lt;&gt;</code> subtype object</td>
     </tr>
   </table>
@@ -235,57 +241,56 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "FifoWorker concept">
     <tr>
- <td width="36%"><b>Expression/Statement</b></td>
+ <td><b>Expression/Statement</b></td>
 
- <td width="10%"><b>Type</b></td>
+ <td><b>Type</b></td>
 
- <td width="52%"><b>Effects/Result</b></td>
+ <td><b>Effects/Result</b></td>
     </tr>
 
     <tr>
- <td width="36%"><code>F::work_item</code></td>
+ <td><code>F::work_item</code></td>
 
- <td width="10%"><code>boost::function0&lt;<br>
- &nbsp; void &gt;</code></td>
+ <td><code>boost::function0&lt; void &gt;</code></td>
 
- <td width="52%">&nbsp;</td>
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="36%"><code>F()</code> or <code>F( false )</code></td>
+ <td><code>F()</code> or <code>F( false )</code></td>
 
- <td width="10%"><code>F</code></td>
+ <td><code>F</code></td>
 
- <td width="52%">Constructs a <b>non-blocking</b> (see below) object of
+ <td>Constructs a <b>non-blocking</b> (see below) object of
       the FifoWorker type. In single-threaded builds the second expression is
       not well-formed</td>
     </tr>
 
     <tr>
- <td width="36%"><code>F( true )</code></td>
+ <td><code>F( true )</code></td>
 
- <td width="10%"><code>F</code></td>
+ <td><code>F</code></td>
 
- <td width="52%">Constructs a <b>blocking</b> (see below) object of the
+ <td>Constructs a <b>blocking</b> (see below) object of the
       FifoWorker type. Not well-formed in single-threaded builds</td>
     </tr>
 
     <tr>
- <td width="36%"><code>f.queue_work_item( w );</code></td>
+ <td><code>f.queue_work_item( w );</code></td>
 
- <td width="10%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="52%">Constructs and queues an object of type
+ <td>Constructs and queues an object of type
       <code>F::work_item</code>, passing <code>w</code> as the only
       argument</td>
     </tr>
 
     <tr>
- <td width="36%"><code>f.terminate();</code></td>
+ <td><code>f.terminate();</code></td>
 
- <td width="10%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="52%">Creates and queues an object of type
+ <td>Creates and queues an object of type
       <code>F::work_item</code> that, when later executed in
       <code>operator()()</code>, leads to a modification of internal state so
       that <code>terminated()</code> henceforth returns
@@ -293,11 +298,11 @@
     </tr>
 
     <tr>
- <td width="36%"><code>cf.terminated();</code></td>
+ <td><code>cf.terminated();</code></td>
 
- <td width="10%"><code>bool</code></td>
+ <td><code>bool</code></td>
 
- <td width="52%"><code>true</code> if <code>terminate()</code> has been
+ <td><code>true</code> if <code>terminate()</code> has been
       called and the resulting work item has been executed in
       <code>operator()()</code>. Returns <code>false</code> otherwise<br>
       <br>
@@ -306,11 +311,11 @@
     </tr>
 
     <tr>
- <td width="36%"><code>f( n );</code></td>
+ <td><code>f( n );</code></td>
 
- <td width="10%"><code>unsigned long</code></td>
+ <td><code>unsigned long</code></td>
 
- <td width="52%">
+ <td>
         Enters a loop that, with each cycle, dequeues and calls
         <code>operator()()</code> on the oldest work item in the queue.
 
@@ -341,11 +346,11 @@
     </tr>
 
     <tr>
- <td width="36%"><code>f();</code></td>
+ <td><code>f();</code></td>
 
- <td width="10%"><code>unsigned long</code></td>
+ <td><code>unsigned long</code></td>
 
- <td width="52%">Has exactly the same semantics as <code>f( n );</code>
+ <td>Has exactly the same semantics as <code>f( n );</code>
       with <code>n == 0</code> (see above)</td>
     </tr>
   </table>
@@ -367,19 +372,19 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "ExceptionTranslator concept">
     <tr>
- <td width="299"><b>Expression</b></td>
+ <td><b>Expression</b></td>
 
- <td width="101"><b>Type</b></td>
+ <td><b>Type</b></td>
 
- <td width="1129"><b>Effects/Result</b></td>
+ <td><b>Effects/Result</b></td>
     </tr>
 
     <tr>
- <td width="299"><code>et( a, eh );</code></td>
+ <td><code>et(&nbsp;a,&nbsp;eh&nbsp;);</code></td>
 
- <td width="101"><code>result</code></td>
+ <td><code>result</code></td>
 
- <td width="1129">
+ <td>
         <ol>
           <li>Attempts to execute <code>return a();</code></li>
 
@@ -408,29 +413,29 @@
 
   <table border="3" cellpadding="2" width="100%" summary="StateBase concept">
     <tr>
- <td width="26%"><b>Expression</b></td>
+ <td><b>Expression</b></td>
 
- <td width="12%"><b>Type</b></td>
+ <td><b>Type</b></td>
 
- <td width="60%"><b>Result</b></td>
+ <td><b>Result</b></td>
     </tr>
 
     <tr>
- <td width="26%"><code>cs.outer_state_ptr()</code></td>
+ <td><code>cs.outer_state_ptr()</code></td>
 
- <td width="12%"><code>const S *</code></td>
+ <td><code>const S *</code></td>
 
- <td width="60%"><code>0</code> if <code>cs</code> is an <a href=
+ <td><code>0</code> if <code>cs</code> is an <a href=
       "definitions.html#OutermostState">outermost state</a>, a pointer to the
       direct outer state of <code>cs</code> otherwise</td>
     </tr>
 
     <tr>
- <td width="25%"><code>cs.dynamic_type()</code></td>
+ <td><code>cs.dynamic_type()</code></td>
 
- <td width="12%"><code>S::id_type</code></td>
+ <td><code>S::id_type</code></td>
 
- <td width="60%">A value unambiguously identifying the most-derived type
+ <td>A value unambiguously identifying the most-derived type
       of <code>cs</code>. <code>S::id_type</code> values are comparable with
       <code>operator==()</code> and <code>operator!=()</code>. An unspecified
       collating order can be established with <code>std::less&lt; S::id_type
@@ -440,12 +445,12 @@
     </tr>
 
     <tr>
- <td width="25%"><code>cs.custom_dynamic_type_ptr&lt;<br>
+ <td><code>cs.custom_dynamic_type_ptr&lt;<br>
       &nbsp; Type &gt;()</code></td>
 
- <td width="12%"><code>const Type *</code></td>
+ <td><code>const Type *</code></td>
 
- <td width="60%">A pointer to the custom type identifier or
+ <td>A pointer to the custom type identifier or
       <code>0</code>. If <code>!= 0</code>, <code>Type</code> must match the
       type of the previously set pointer. This function is only available if
       <a href=
@@ -466,22 +471,22 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "SimpleState concept">
     <tr>
- <td width="28%"><b>Expression/Statement</b></td>
+ <td><b>Expression/Statement</b></td>
 
- <td width="29%"><b>Type</b></td>
+ <td><b>Type</b></td>
 
- <td width="42%"><b>Effects/Result/Notes</b></td>
+ <td><b>Effects/Result/Notes</b></td>
     </tr>
 
     <tr>
- <td width="28%"><code><a href=
+ <td><code><a href=
       "#ClassTemplatesimple_state">simple_state</a>&lt;<br>
- &nbsp; S, C, I, h &gt; * pB =<br>
- &nbsp;&nbsp;&nbsp; pS;</code></td>
+ &nbsp;&nbsp;S,&nbsp;C,&nbsp;I,&nbsp;h&nbsp;&gt;&nbsp;*&nbsp;pB&nbsp;=<br>
+ &nbsp;&nbsp;&nbsp;&nbsp;pS;</code></td>
 
- <td width="29%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="42%"><code>simple_state&lt; S, C, I, h &gt;</code> must be
+ <td><code>simple_state&lt; S, C, I, h &gt;</code> must be
       an unambiguous public base of <code>S</code>. See <code><a href=
       "#ClassTemplatesimple_state">simple_state&lt;&gt;</a></code>
       documentation for the requirements and semantics of <code>C</code>,
@@ -489,22 +494,22 @@
     </tr>
 
     <tr>
- <td width="28%"><code>new S()</code></td>
+ <td><code>new S()</code></td>
 
- <td width="29%"><code>S *</code></td>
+ <td><code>S *</code></td>
 
- <td width="42%">Enters the state <code>S</code>. Certain functions must
+ <td>Enters the state <code>S</code>. Certain functions must
       not be called from <code>S::S()</code>, see <a href=
       "#ClassTemplatesimple_state"><code>simple_state&lt;&gt;</code></a>
       documentation for more information</td>
     </tr>
 
     <tr>
- <td width="28%"><code>pS-&gt;exit();</code></td>
+ <td><code>pS-&gt;exit();</code></td>
 
- <td width="29%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="42%">Exits the state <code>S</code> (first stage). The
+ <td>Exits the state <code>S</code> (first stage). The
       definition of an <code>exit</code> member function within models of the
       SimpleState concept is optional since <code>simple_state&lt;&gt;</code>
       already defines the following public member: <code>void exit()
@@ -515,17 +520,17 @@
     </tr>
 
     <tr>
- <td width="28%"><code>delete pS;</code></td>
+ <td><code>delete pS;</code></td>
 
- <td width="29%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="42%">Exits the state <code>S</code> (second stage)</td>
+ <td>Exits the state <code>S</code> (second stage)</td>
     </tr>
 
     <tr>
- <td width="28%"><code>S::reactions</code></td>
+ <td><code>S::reactions</code></td>
 
- <td width="29%">An <code>mpl::list&lt;&gt;</code> that is either empty
+ <td>An <code>mpl::list&lt;&gt;</code> that is either empty
       or contains instantiations of the <code><a href=
       "#ClassTemplatecustom_reaction">custom_reaction</a></code>,
       <code><a href=
@@ -537,7 +542,7 @@
       <code>typedef</code>ed directly, without wrapping it into an
       <code>mpl::list&lt;&gt;</code></td>
 
- <td width="42%">The declaration of a <code>reactions</code> member
+ <td>The declaration of a <code>reactions</code> member
       <code>typedef</code> within models of the SimpleState concept is
       optional since <code>simple_state&lt;&gt;</code> already defines the
       following public member: <code>typedef mpl::list&lt;&gt;
@@ -558,21 +563,20 @@
 
   <table border="3" cellpadding="2" width="100%" summary="State concept">
     <tr>
- <td width="28%"><b>Expression/Statement</b></td>
+ <td><b>Expression/Statement</b></td>
 
- <td width="29%"><b>Type</b></td>
+ <td><b>Type</b></td>
 
- <td width="42%"><b>Effects/Result/Notes</b></td>
+ <td><b>Effects/Result/Notes</b></td>
     </tr>
 
     <tr>
- <td width="28%"><code>state&lt; S, C,
- I, h &gt; *<br>
- &nbsp; pB = pS;</code></td>
+ <td><code>state&lt;&nbsp;S,&nbsp;C,&nbsp;I,&nbsp;h&nbsp;&gt;&nbsp;*<br>
+ &nbsp;&nbsp;pB = pS;</code></td>
 
- <td width="29%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="42%"><code>state&lt; S, C, I, h &gt;</code> must be an
+ <td><code>state&lt; S, C, I, h &gt;</code> must be an
       unambiguous public base of <code>S</code>. See <code><a href=
       "#ClassTemplatestate">state&lt;&gt;</a></code> documentation for the
       requirements and semantics of <code>C</code>, <code>I</code> and
@@ -580,11 +584,11 @@
     </tr>
 
     <tr>
- <td width="28%"><code>new S( mc )</code></td>
+ <td><code>new S( mc )</code></td>
 
- <td width="29%"><code>S *</code></td>
+ <td><code>S *</code></td>
 
- <td width="42%">Enters the state <code>S</code>. No restrictions exist
+ <td>Enters the state <code>S</code>. No restrictions exist
       regarding the functions that can be called from <code>S::S()</code> (in
       contrast to the constructors of models of the SimpleState concept).
       <code>mc</code> must be forwarded to <code>state&lt; S, C, I, h
@@ -604,29 +608,29 @@
 
   <table border="3" cellpadding="2" width="100%" summary="Event concept">
     <tr>
- <td width="28%"><b>Expression/Statement</b></td>
+ <td><b>Expression/Statement</b></td>
 
- <td width="29%"><b>Type</b></td>
+ <td><b>Type</b></td>
 
- <td width="42%"><b>Effects/Result/Notes</b></td>
+ <td><b>Effects/Result/Notes</b></td>
     </tr>
 
     <tr>
- <td width="28%"><code>const event&lt;
+ <td><code>const event&lt;
       E &gt; * pCB = pCE;</code></td>
 
- <td width="29%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="42%"><code>event&lt; E &gt;</code> must be an unambiguous
+ <td><code>event&lt; E &gt;</code> must be an unambiguous
       public base of <code>E</code></td>
     </tr>
 
     <tr>
- <td width="28%"><code>new E( *pCE )</code></td>
+ <td><code>new E( *pCE )</code></td>
 
- <td width="29%"><code>E *</code></td>
+ <td><code>E *</code></td>
 
- <td width="42%">Makes a copy of <code>pE</code></td>
+ <td>Makes a copy of <code>pE</code></td>
     </tr>
   </table>
 
@@ -644,29 +648,29 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "state_machine parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="51%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="18%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
 
- <td width="19%"><b>Default</b></td>
+ <td><b>Default</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>MostDerived</code></td>
+ <td><code>MostDerived</code></td>
 
- <td width="51%">The most-derived subtype of this class template</td>
+ <td>The most-derived subtype of this class template</td>
 
- <td width="18%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="19%">&nbsp;</td>
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="15%"><code>InitialState</code></td>
+ <td><code>InitialState</code></td>
 
- <td width="51%">A model of the SimpleState
+ <td>A model of the SimpleState
       or State concepts. The <code>Context</code>
       argument passed to the <code><a href=
       "#ClassTemplatesimple_state">simple_state&lt;&gt;</a></code> or
@@ -676,34 +680,34 @@
       "definitions.html#OutermostState">outermost state</a> of this state
       machine</td>
 
- <td width="18%">The state that is entered when
+ <td>The state that is entered when
       <code>state_machine&lt;&gt;<br>
       ::initiate()</code> is called</td>
 
- <td width="19%">&nbsp;</td>
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="15%"><code>Allocator</code></td>
+ <td><code>Allocator</code></td>
 
- <td width="51%">A model of the standard Allocator concept</td>
+ <td>A model of the standard Allocator concept</td>
 
- <td width="18%"><code>Allocator::rebind&lt;&gt;::other</code> is used
+ <td><code>Allocator::rebind&lt;&gt;::other</code> is used
       to allocate and deallocate all <code>simple_state</code> subtype
       objects and internal objects of dynamic storage duration</td>
 
- <td width="19%"><code>std::allocator&lt; void &gt;</code></td>
+ <td><code>std::allocator&lt; void &gt;</code></td>
     </tr>
 
     <tr>
- <td width="15%"><code>ExceptionTranslator</code></td>
+ <td><code>ExceptionTranslator</code></td>
 
- <td width="51%">A model of the ExceptionTranslator concept</td>
+ <td>A model of the ExceptionTranslator concept</td>
 
- <td width="18%">see <a href=
+ <td>see <a href=
       "#ExceptionTranslator">ExceptionTranslator</a> concept</td>
 
- <td width="19%"><code>null_exception_translator</code></td>
+ <td><code>null_exception_translator</code></td>
     </tr>
   </table>
 
@@ -1214,29 +1218,29 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "asynchronous_state_machine parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="51%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="18%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
 
- <td width="19%"><b>Default</b></td>
+ <td><b>Default</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>MostDerived</code></td>
+ <td><code>MostDerived</code></td>
 
- <td width="51%">The most-derived subtype of this class template</td>
+ <td>The most-derived subtype of this class template</td>
 
- <td width="18%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="19%">&nbsp;</td>
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="15%"><code>InitialState</code></td>
+ <td><code>InitialState</code></td>
 
- <td width="51%">A model of the SimpleState
+ <td>A model of the SimpleState
       or State concepts. The <code>Context</code>
       argument passed to the <code><a href=
       "#ClassTemplatesimple_state">simple_state&lt;&gt;</a></code> or
@@ -1246,41 +1250,41 @@
       "definitions.html#OutermostState">outermost state</a> of this state
       machine</td>
 
- <td width="18%">The state that is entered when the state machine is
+ <td>The state that is entered when the state machine is
       initiated through the <code>Scheduler</code> object</td>
 
- <td width="19%">&nbsp;</td>
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="15%"><code>Scheduler</code></td>
+ <td><code>Scheduler</code></td>
 
- <td width="51%">A model of the Scheduler concept</td>
+ <td>A model of the Scheduler concept</td>
 
- <td width="18%">see Scheduler concept</td>
+ <td>see Scheduler concept</td>
 
- <td width="19%"><code>fifo_scheduler&lt;&gt;</code></td>
+ <td><code>fifo_scheduler&lt;&gt;</code></td>
     </tr>
 
     <tr>
- <td width="15%"><code>Allocator</code></td>
+ <td><code>Allocator</code></td>
 
- <td width="51%">A model of the standard Allocator concept</td>
+ <td>A model of the standard Allocator concept</td>
 
- <td width="18%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="19%"><code>std::allocator&lt; void &gt;</code></td>
+ <td><code>std::allocator&lt; void &gt;</code></td>
     </tr>
 
     <tr>
- <td width="15%"><code>ExceptionTranslator</code></td>
+ <td><code>ExceptionTranslator</code></td>
 
- <td width="51%">A model of the ExceptionTranslator concept</td>
+ <td>A model of the ExceptionTranslator concept</td>
 
- <td width="18%">see <a href=
+ <td>see <a href=
       "#ExceptionTranslator">ExceptionTranslator</a> concept</td>
 
- <td width="19%"><code>null_exception_translator</code></td>
+ <td><code>null_exception_translator</code></td>
     </tr>
   </table>
 
@@ -1350,23 +1354,19 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "event_processor parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="51%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="18%"><b>Semantics</b></td>
-
- <td width="19%"><b>Default</b></td>
+ <td><b>Semantics</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>Scheduler</code></td>
-
- <td width="51%">A model of the Scheduler concept</td>
+ <td><code>Scheduler</code></td>
 
- <td width="18%">see Scheduler concept</td>
+ <td>A model of the Scheduler concept</td>
 
- <td width="19%">&nbsp;</td>
+ <td>see Scheduler concept</td>
     </tr>
   </table>
 
@@ -1487,33 +1487,33 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "fifo_scheduler parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="28%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="26%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
 
- <td width="29%"><b>Default</b></td>
+ <td><b>Default</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>FifoWorker</code></td>
+ <td><code>FifoWorker</code></td>
 
- <td width="28%">A model of the FifoWorker concept</td>
+ <td>A model of the FifoWorker concept</td>
 
- <td width="26%">see FifoWorker concept</td>
+ <td>see FifoWorker concept</td>
 
- <td width="29%"><code>fifo_worker&lt;&gt;</code></td>
+ <td><code>fifo_worker&lt;&gt;</code></td>
     </tr>
 
     <tr>
- <td width="15%"><code>Allocator</code></td>
+ <td><code>Allocator</code></td>
 
- <td width="28%">A model of the standard Allocator concept</td>
+ <td>A model of the standard Allocator concept</td>
 
- <td width="26%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="29%"><code>std::allocator&lt; void &gt;</code></td>
+ <td><code>std::allocator&lt;&nbsp;void&nbsp;&gt;</code></td>
     </tr>
   </table>
 
@@ -1787,24 +1787,24 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "exception_translator parameters">
     <tr>
- <td width="12%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="30%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="35%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
 
- <td width="24%"><b>Default</b></td>
+ <td><b>Default</b></td>
     </tr>
 
     <tr>
- <td width="12%"><code>ExceptionEvent</code></td>
+ <td><code>ExceptionEvent</code></td>
 
- <td width="30%">A model of the Event concept</td>
+ <td>A model of the Event concept</td>
 
- <td width="35%">The type of event that is dispatched when an exception
+ <td>The type of event that is dispatched when an exception
       is propagated into the framework</td>
 
- <td width="24%"><code>exception_thrown</code></td>
+ <td><code>exception_thrown</code></td>
     </tr>
   </table>
 
@@ -1945,29 +1945,29 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "simple_state parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="51%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="18%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
 
- <td width="19%"><b>Default</b></td>
+ <td><b>Default</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>MostDerived</code></td>
+ <td><code>MostDerived</code></td>
 
- <td width="51%">The most-derived subtype of this class template</td>
+ <td>The most-derived subtype of this class template</td>
 
- <td width="18%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="19%">&nbsp;</td>
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="15%"><code>Context</code></td>
+ <td><code>Context</code></td>
 
- <td width="51%">A most-derived direct or indirect subtype of the
+ <td>A most-derived direct or indirect subtype of the
       <code>state_machine</code> or
       <code><a href=
       "#ClassTemplateasynchronous_state_machine">asynchronous_state_machine</a></code>
@@ -1977,16 +1977,16 @@
       "#ClassTemplatesimple_state">simple_state&lt;&gt;::orthogonal</a></code>
       class template. Must be a complete type</td>
 
- <td width="18%">Defines the states' position in the state
+ <td>Defines the states' position in the state
       hierarchy</td>
 
- <td width="19%">&nbsp;</td>
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="15%"><code>InnerInitial</code></td>
+ <td><code>InnerInitial</code></td>
 
- <td width="51%">An <code>mpl::list&lt;&gt;</code> containing models of
+ <td>An <code>mpl::list&lt;&gt;</code> containing models of
       the SimpleState or <a href=
       "#State">State</a> concepts or instantiations of the <code><a href=
       "#ClassTemplateshallow_history">shallow_history</a></code> or
@@ -2004,22 +2004,22 @@
       <code>MostDerived::orthogonal&lt; 0 &gt;</code> and
       <code>MostDerived</code> are synonymous</td>
 
- <td width="18%">Defines the inner initial state for each orthogonal
+ <td>Defines the inner initial state for each orthogonal
       region. By default, a state does not have inner states</td>
 
- <td width="19%"><i><code>unspecified</code></i></td>
+ <td><i><code>unspecified</code></i></td>
     </tr>
 
     <tr>
- <td width="15%"><code>historyMode</code></td>
+ <td><code>historyMode</code></td>
 
- <td width="51%">One of the values defined in the <code><a href=
+ <td>One of the values defined in the <code><a href=
       "#Enumhistory_mode">history_mode</a></code> enumeration</td>
 
- <td width="18%">Defines whether the state saves shallow, deep or both
+ <td>Defines whether the state saves shallow, deep or both
       histories upon exit</td>
 
- <td width="19%"><code>has_no_history</code></td>
+ <td><code>has_no_history</code></td>
     </tr>
   </table>
 
@@ -2524,9 +2524,11 @@
 
   <p><b>Requires</b>: If called from a constructor of a direct or indirect
   subtype then the most-derived type must directly or indirectly derive from
- the <code>state</code> class template<b><br>
- Returns</b>: A reference to the outermost context, which is always the
- state machine this state belongs to</p>
+ the <code>state</code> class template. If called from a destructor of a
+ direct or indirect subtype then the <code>state_machine<></code> subclass
+ portion must still exist<br>
+ <b>Returns</b>: A reference to the outermost context, which is always the
+ state machine this state belongs to<br></p>
   <pre>
 const outermost_context_type &amp; <a name="outermost_contextconst" id=
 "outermost_contextconst">outermost_context() const</a>;
@@ -2534,8 +2536,10 @@
 
   <p><b>Requires</b>: If called from a constructor of a direct or indirect
   subtype then the most-derived type must directly or indirectly derive from
- the <code>state</code> class template<b><br>
- Returns</b>: A reference to the const outermost context, which is always
+ the <code>state</code> class template. If called from a destructor of a
+ direct or indirect subtype then the <code>state_machine<></code> subclass
+ portion must still exist<br>
+ <b>Returns</b>: A reference to the const outermost context, which is always
   the state machine this state belongs to</p>
   <pre>
 template&lt; class OtherContext &gt;
@@ -2544,8 +2548,11 @@
 
   <p><b>Requires</b>: If called from a constructor of a direct or indirect
   subtype then the most-derived type must directly or indirectly derive from
- the <code>state</code> class template<b><br>
- Returns</b>: A reference to a direct or indirect context</p>
+ the <code>state</code> class template. If called from a destructor of a
+ direct or indirect subtype with a <code>state_machine<></code> subtype as
+ argument then the <code>state_machine<></code> subclass portion must still
+ exist<br>
+ <b>Returns</b>: A reference to a direct or indirect context</p>
   <pre>
 template&lt; class OtherContext &gt;
 const OtherContext &amp; <a name="contextconst" id=
@@ -2554,8 +2561,11 @@
 
   <p><b>Requires</b>: If called from a constructor of a direct or indirect
   subtype then the most-derived type must directly or indirectly derive from
- the <code>state</code> class template<b><br>
- Returns</b>: A reference to a const direct or indirect context</p>
+ the <code>state</code> class template. If called from a destructor of a
+ direct or indirect subtype with a <code>state_machine<></code> subtype as
+ argument then the <code>state_machine<></code> subclass portion must still
+ exist<br>
+ <b>Returns</b>: A reference to a const direct or indirect context</p>
   <pre>
 template&lt; class Target &gt;
 Target <a name="simple_state::state_cast" id=
@@ -2746,17 +2756,17 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "shallow_history parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="45%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="24%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>DefaultState</code></td>
+ <td><code>DefaultState</code></td>
 
- <td width="45%">A model of the SimpleState
+ <td>A model of the SimpleState
       or State concepts. The type passed as
       <code>Context</code> argument to the <code><a href=
       "#ClassTemplatesimple_state">simple_state&lt;&gt;</a></code> or
@@ -2767,8 +2777,7 @@
       "#ClassTemplatesimple_state">simple_state&lt;&gt;</a></code> or
       <code>state<></code> base</td>
 
- <td width="24%">The state that is entered if shallow history is not
- available</td>
+ <td>The state that is entered if shallow history is not available</td>
     </tr>
   </table>
 
@@ -2804,17 +2813,17 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "deep_history parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="45%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="24%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>DefaultState</code></td>
+ <td><code>DefaultState</code></td>
 
- <td width="45%">A model of the SimpleState
+ <td>A model of the SimpleState
       or State concepts. The type passed as
       <code>Context</code> argument to the <code><a href=
       "#ClassTemplatesimple_state">simple_state&lt;&gt;</a></code> or
@@ -2825,8 +2834,7 @@
       "#ClassTemplatesimple_state">simple_state&lt;&gt;</a></code> or
       <code>state<></code> base</td>
 
- <td width="24%">The state that is entered if deep history is not
- available</td>
+ <td>The state that is entered if deep history is not available</td>
     </tr>
   </table>
 
@@ -2944,36 +2952,36 @@
 
   <table border="3" cellpadding="2" width="100%" summary="event parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="51%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="18%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
 
- <td width="19%"><b>Default</b></td>
+ <td><b>Default</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>MostDerived</code></td>
+ <td><code>MostDerived</code></td>
 
- <td width="51%">The most-derived subtype of this class template</td>
+ <td>The most-derived subtype of this class template</td>
 
- <td width="18%">&nbsp;</td>
+ <td>&nbsp;</td>
 
- <td width="19%">&nbsp;</td>
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="15%"><code>Allocator</code></td>
+ <td><code>Allocator</code></td>
 
- <td width="51%">A model of the standard Allocator concept</td>
+ <td>A model of the standard Allocator concept</td>
 
- <td width="18%"><code>Allocator::rebind&lt; MostDerived
+ <td><code>Allocator::rebind&lt; MostDerived
       &gt;::other</code> is used to allocate and deallocate all event subtype
       objects of dynamic storage duration, see <code><a href=
       "#event::operatornew">operator new</a></code></td>
 
- <td width="19%"><code>std::allocator&lt; void &gt;</code></td>
+ <td><code>std::allocator&lt; void &gt;</code></td>
     </tr>
   </table>
 
@@ -2989,6 +2997,8 @@
     public:
       static void * <a href=
 "#event::operatornew">operator new</a>( std::size_t size );
+ static void * <a href=
+"#event::operatornew2">operator new</a>( std::size_t size, void * p );
       static void <a href=
 "#event::operatordelete">operator delete</a>( void * pEvent );
 
@@ -3034,6 +3044,13 @@
   <b>Returns</b>: The return value of the above call<br>
   <b>Throws</b>: Whatever the above call throws</p>
   <pre>
+static void * <a name="event::operatornew2" id=
+"event::operatornew2">operator new</a>( std::size_t size, void * p );
+</pre>
+
+ <p><b>Effects</b>: None<br>
+ <b>Returns</b>: <code>p</code></p>
+ <pre>
 static void <a name="event::operatordelete" id=
 "event::operatordelete">operator delete</a>( void * pEvent );
 </pre>
@@ -3094,33 +3111,33 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "transition parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="45%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="24%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
 
- <td width="19%"><b>Default</b></td>
+ <td><b>Default</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>Event</code></td>
+ <td><code>Event</code></td>
 
- <td width="45%">A model of the Event concept or
+ <td>A model of the Event concept or
       the class <code>event_base</code></td>
 
- <td width="24%">The event triggering the transition. If <code><a href=
+ <td>The event triggering the transition. If <code><a href=
       "#Classevent_base">event_base</a></code> is specified, the transition
       is triggered by all models of the Event
       concept</td>
 
- <td width="19%">&nbsp;</td>
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="15%"><code>Destination</code></td>
+ <td><code>Destination</code></td>
 
- <td width="45%">A model of the SimpleState
+ <td>A model of the SimpleState
       or State concepts or an instantiation of the
       <code><a href=
       "#ClassTemplateshallow_history">shallow_history</a></code> or
@@ -3129,35 +3146,35 @@
       is defined) and <code>Destination</code> must have a common direct or
       indirect context</td>
 
- <td width="24%">The destination state to make a transition to</td>
+ <td>The destination state to make a transition to</td>
 
- <td width="19%">&nbsp;</td>
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="15%"><code>TransitionContext</code></td>
+ <td><code>TransitionContext</code></td>
 
- <td width="45%">A common context of the source and
+ <td>A common context of the source and
       <code>Destination</code> state</td>
 
- <td width="24%">The state of which the transition action is a
+ <td>The state of which the transition action is a
       member</td>
 
- <td width="19%"><i><code>unspecified</code></i></td>
+ <td><i><code>unspecified</code></i></td>
     </tr>
 
     <tr>
- <td width="15%"><code>pTransitionAction</code></td>
+ <td><code>pTransitionAction</code></td>
 
- <td width="45%">A pointer to a member function of
+ <td>A pointer to a member function of
       <code>TransitionContext</code>. The member function must accept a
       <code>const Event &amp;</code> parameter and return
       <code>void</code></td>
 
- <td width="24%">The transition action that is executed during the
+ <td>The transition action that is executed during the
       transition. By default no transition action is executed</td>
 
- <td width="19%"><i><code>unspecified</code></i></td>
+ <td><i><code>unspecified</code></i></td>
     </tr>
   </table>
 
@@ -3212,44 +3229,52 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "in_state_reaction parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
+
+ <td><b>Requirements</b></td>
 
- <td width="45%"><b>Requirements</b></td>
+ <td><b>Semantics</b></td>
 
- <td width="24%"><b>Semantics</b></td>
+ <td><b>Default</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>Event</code></td>
+ <td><code>Event</code></td>
 
- <td width="45%">A model of the Event concept or
+ <td>A model of the Event concept or
       the class <code>event_base</code></td>
 
- <td width="24%">The event triggering the in-state reaction. If
+ <td>The event triggering the in-state reaction. If
       <code>event_base</code> is specified,
       the in-state reaction is triggered by all models of the <a href=
       "#Event">Event</a> concept</td>
+
+ <td>&nbsp;</td>
     </tr>
 
     <tr>
- <td width="15%"><code>ReactionContext</code></td>
+ <td><code>ReactionContext</code></td>
 
- <td width="45%">Either the state defining the in-state reaction itself
+ <td>Either the state defining the in-state reaction itself
       or one of it direct or indirect contexts</td>
 
- <td width="24%">The state of which the action is a member</td>
+ <td>The state of which the action is a member</td>
+
+ <td><i><code>unspecified</code></i></td>
     </tr>
 
     <tr>
- <td width="15%"><code>pAction</code></td>
+ <td><code>pAction</code></td>
 
- <td width="45%">A pointer to a member function of
+ <td>A pointer to a member function of
       <code>ReactionContext</code>. The member function must accept a
       <code>const Event &amp;</code> parameter and return
       <code>void</code></td>
 
- <td width="24%">The action that is executed during the in-state
+ <td>The action that is executed during the in-state
       reaction</td>
+
+ <td><i><code>unspecified</code></i></td>
     </tr>
   </table>
 
@@ -3261,8 +3286,9 @@
 {
   template&lt;
     class Event,
- class ReactionContext,
- void ( ReactionContext::*pAction )( const Event &amp; ) &gt;
+ class ReactionContext = <i>unspecified</i>,
+ void ( ReactionContext::*pAction )(
+ const Event &amp; ) = <i>unspecified</i> &gt;
   class in_state_reaction
   {
     // <i>implementation-defined</i>
@@ -3273,10 +3299,14 @@
 
   <h3>Class template <code>in_state_reaction</code> semantics</h3>
 
- <p>When executed, <code>pAction</code> is called, passing the triggering
- event as the only argument. Afterwards, a call is made to the
- <code>discard_event</code> member function of
- the state for which the reaction was defined.</p>
+ <p>When executed then the following happens:</p>
+ <ol>
+ <li>If an action was specified, <code>pAction</code> is called, passing
+ the triggering event as the only argument</li>
+ <li>A call is made to the <code>discard_event
+ </code> member function of the state for which the reaction was defined
+ </li>
+ </ol>
 
   <h1>Header &lt;boost/statechart/<a name="termination.hpp" id=
   "termination.hpp">termination.hpp</a>&gt;</h1>
@@ -3294,20 +3324,20 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "termination parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="45%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="24%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>Event</code></td>
+ <td><code>Event</code></td>
 
- <td width="45%">A model of the Event concept or
+ <td>A model of the Event concept or
       the class <code>event_base</code></td>
 
- <td width="24%">The event triggering the termination. If <code><a href=
+ <td>The event triggering the termination. If <code><a href=
       "#Classevent_base">event_base</a></code> is specified, the termination
       is triggered by all models of the Event
       concept</td>
@@ -3351,20 +3381,20 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "deferral parameters">
     <tr>
- <td width="15%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="45%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="24%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
     </tr>
 
     <tr>
- <td width="15%"><code>Event</code></td>
+ <td><code>Event</code></td>
 
- <td width="45%">A model of the Event concept or
+ <td>A model of the Event concept or
       the class <code>event_base</code></td>
 
- <td width="24%">The event triggering the deferral. If <code><a href=
+ <td>The event triggering the deferral. If <code><a href=
       "#Classevent_base">event_base</a></code> is specified, the deferral is
       triggered by all models of the Event concept</td>
     </tr>
@@ -3408,20 +3438,20 @@
   <table border="3" cellpadding="2" width="100%" summary=
   "custom_reaction parameters">
     <tr>
- <td width="17%"><b>Template parameter</b></td>
+ <td><b>Template parameter</b></td>
 
- <td width="56%"><b>Requirements</b></td>
+ <td><b>Requirements</b></td>
 
- <td width="24%"><b>Semantics</b></td>
+ <td><b>Semantics</b></td>
     </tr>
 
     <tr>
- <td width="17%"><code>Event</code></td>
+ <td><code>Event</code></td>
 
- <td width="56%">A model of the Event concept or
+ <td>A model of the Event concept or
       the class <code>event_base</code></td>
 
- <td width="24%">The event triggering the custom reaction. If
+ <td>The event triggering the custom reaction. If
       <code>event_base</code> is specified,
       the custom reaction is triggered by all models of the <a href=
       "#Event">Event</a> concept</td>
@@ -3525,11 +3555,10 @@
   "http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Transitional"
   height="31" width="88"></a></p>
 
- <p>Revised
- <!--webbot bot="Timestamp" s-type="EDITED" s-format="%d %B, %Y" startspan -->09 April, 2007<!--webbot bot="Timestamp" endspan i-checksum="30014" --></p>
+ <p>Revised 06 January, 2008</p>
 
- <p><i>Copyright &copy; 2003-<!--webbot bot="Timestamp" s-type="EDITED" s-format="%Y" startspan -->2007<!--webbot bot="Timestamp" endspan i-checksum="778" -->
- Andreas Huber Dönni</i></p>
+ <p><i>Copyright &copy; 2003-2008 <a href="contact.html">Andreas Huber
+ D&ouml;nni</a></i></p>
 
   <p><i>Distributed under the Boost Software License, Version 1.0. (See
   accompanying file LICENSE_1_0.txt or

Modified: branches/CMake/release/libs/statechart/doc/reference.pdf
==============================================================================
Binary files. No diff available.

Modified: branches/CMake/release/libs/statechart/example/BitMachine/BitMachine.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/example/BitMachine/BitMachine.vcproj (original)
+++ branches/CMake/release/libs/statechart/example/BitMachine/BitMachine.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,211 +1,301 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="BitMachine"
- ProjectGUID="{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/Zm300"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- BufferSecurityCheck="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/BitMachine.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/BitMachine.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/Zm300"
- Optimization="3"
- GlobalOptimizations="TRUE"
- InlineFunctionExpansion="2"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- StringPooling="TRUE"
- ExceptionHandling="TRUE"
- RuntimeLibrary="4"
- BufferSecurityCheck="FALSE"
- EnableFunctionLevelLinking="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="0"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/BitMachine.exe"
- LinkIncremental="1"
- GenerateDebugInformation="FALSE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
- <File
- RelativePath="BitMachine.cpp">
- </File>
- </Filter>
- <Filter
- Name="Statechart Header Files"
- Filter="h;hpp;hxx;hm;inl;inc">
- <File
- RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\deep_history.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\deferral.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event_base.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event_processor.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\result.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\simple_state.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\state.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\state_machine.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\termination.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\transition.hpp">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="">
- <File
- RelativePath=".\UniqueObject.hpp">
- </File>
- <File
- RelativePath=".\UniqueObjectAllocator.hpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="BitMachine"
+ ProjectGUID="{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
+ RootNamespace="BitMachine"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="Debug"
+ IntermediateDirectory="Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalOptions="/Zm300 /bigobj"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ BufferSecurityCheck="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ EnablePREfast="false"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/BitMachine.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/BitMachine.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ EmbedManifest="true"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="Release"
+ IntermediateDirectory="Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalOptions="/Zm300 /bigobj"
+ Optimization="3"
+ InlineFunctionExpansion="2"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ StringPooling="true"
+ ExceptionHandling="1"
+ RuntimeLibrary="2"
+ BufferSecurityCheck="false"
+ EnableFunctionLevelLinking="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="0"
+ EnablePREfast="false"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/BitMachine.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="false"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ EmbedManifest="true"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm"
+ >
+ <File
+ RelativePath="BitMachine.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Statechart Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc"
+ >
+ <File
+ RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\deep_history.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\deferral.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event_base.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event_processor.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\result.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\simple_state.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\state.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\state_machine.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\termination.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\transition.hpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ >
+ <File
+ RelativePath=".\UniqueObject.hpp"
+ >
+ </File>
+ <File
+ RelativePath=".\UniqueObjectAllocator.hpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/example/Camera/Camera.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/example/Camera/Camera.vcproj (original)
+++ branches/CMake/release/libs/statechart/example/Camera/Camera.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,239 +1,335 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="Camera"
- ProjectGUID="{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- BufferSecurityCheck="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="3"
- PrecompiledHeaderThrough="Precompiled.hpp"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/Camera.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/Camera.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="3"
- GlobalOptimizations="TRUE"
- InlineFunctionExpansion="2"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- StringPooling="TRUE"
- RuntimeLibrary="4"
- BufferSecurityCheck="FALSE"
- EnableFunctionLevelLinking="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- UsePrecompiledHeader="3"
- PrecompiledHeaderThrough="Precompiled.hpp"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="0"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/Camera.exe"
- LinkIncremental="1"
- GenerateDebugInformation="FALSE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
- <File
- RelativePath="Camera.cpp">
- </File>
- <File
- RelativePath=".\Configuring.cpp">
- </File>
- <File
- RelativePath="Main.cpp">
- </File>
- <File
- RelativePath="Precompiled.cpp">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"/>
- </FileConfiguration>
- </File>
- <File
- RelativePath=".\Shooting.cpp">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc">
- <File
- RelativePath="Camera.hpp">
- </File>
- <File
- RelativePath="Configuring.hpp">
- </File>
- <File
- RelativePath="Precompiled.hpp">
- </File>
- <File
- RelativePath="Shooting.hpp">
- </File>
- </Filter>
- <Filter
- Name="Statechart Header Files"
- Filter="">
- <File
- RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\deep_history.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\deferral.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event_base.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event_processor.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\result.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\simple_state.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\state.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\state_machine.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\termination.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\transition.hpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="Camera"
+ ProjectGUID="{7FD5B025-1675-4D68-BA85-588AFC99C5B8}"
+ RootNamespace="Camera"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="Debug"
+ IntermediateDirectory="Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ BufferSecurityCheck="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="2"
+ PrecompiledHeaderThrough="Precompiled.hpp"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/Camera.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/Camera.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="Release"
+ IntermediateDirectory="Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="3"
+ InlineFunctionExpansion="2"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ StringPooling="true"
+ RuntimeLibrary="2"
+ BufferSecurityCheck="false"
+ EnableFunctionLevelLinking="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ UsePrecompiledHeader="2"
+ PrecompiledHeaderThrough="Precompiled.hpp"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="0"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/Camera.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="false"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm"
+ >
+ <File
+ RelativePath="Camera.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Configuring.cpp"
+ >
+ </File>
+ <File
+ RelativePath="Main.cpp"
+ >
+ </File>
+ <File
+ RelativePath="Precompiled.cpp"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ UsePrecompiledHeader="1"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ UsePrecompiledHeader="1"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\Shooting.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc"
+ >
+ <File
+ RelativePath="Camera.hpp"
+ >
+ </File>
+ <File
+ RelativePath="Configuring.hpp"
+ >
+ </File>
+ <File
+ RelativePath="Precompiled.hpp"
+ >
+ </File>
+ <File
+ RelativePath="Shooting.hpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Statechart Header Files"
+ >
+ <File
+ RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\deep_history.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\deferral.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event_base.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event_processor.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\result.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\simple_state.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\state.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\state_machine.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\termination.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\transition.hpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/example/Handcrafted/Handcrafted.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/example/Handcrafted/Handcrafted.vcproj (original)
+++ branches/CMake/release/libs/statechart/example/Handcrafted/Handcrafted.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,140 +1,205 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="Handcrafted"
- ProjectGUID="{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/Zm300"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- BufferSecurityCheck="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/Handcrafted.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/Handcrafted.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/Zm300"
- Optimization="3"
- GlobalOptimizations="TRUE"
- InlineFunctionExpansion="2"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- StringPooling="TRUE"
- RuntimeLibrary="4"
- BufferSecurityCheck="FALSE"
- EnableFunctionLevelLinking="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="0"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/Handcrafted.exe"
- LinkIncremental="1"
- GenerateDebugInformation="FALSE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
- <File
- RelativePath="Handcrafted.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="Handcrafted"
+ ProjectGUID="{155DB9E1-28AC-4671-8248-5FD03E8FCDAD}"
+ RootNamespace="Handcrafted"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="Debug"
+ IntermediateDirectory="Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalOptions="/Zm300"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ BufferSecurityCheck="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/Handcrafted.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/Handcrafted.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="Release"
+ IntermediateDirectory="Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalOptions="/Zm300"
+ Optimization="3"
+ InlineFunctionExpansion="2"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ StringPooling="true"
+ RuntimeLibrary="2"
+ BufferSecurityCheck="false"
+ EnableFunctionLevelLinking="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="0"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/Handcrafted.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="false"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm"
+ >
+ <File
+ RelativePath="Handcrafted.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/example/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/statechart/example/Jamfile.v2 (original)
+++ branches/CMake/release/libs/statechart/example/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -59,11 +59,11 @@
     [ statechart-st-example-build KeyboardNative
         : Keyboard : Keyboard : $(native) ]
     [ statechart-st-example-build PingPongSingle
- : PingPong : PingPong : $(custom) ]
+ : PingPong : PingPong Player : $(custom) ]
     [ statechart-mt-example-build PingPongMulti1
- : PingPong : PingPong : $(custom) ]
+ : PingPong : PingPong Player : $(custom) ]
     [ statechart-mt-example-build PingPongMulti2
- : PingPong : PingPong : $(custom) <define>USE_TWO_THREADS ]
+ : PingPong : PingPong Player : $(custom) <define>USE_TWO_THREADS ]
     [ statechart-st-example-build StopWatch : StopWatch : StopWatch ]
     [ statechart-st-example-build StopWatch2 : StopWatch : StopWatch2 ]
     [ statechart-st-example-build PerformanceNormal

Modified: branches/CMake/release/libs/statechart/example/Keyboard/Keyboard.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/example/Keyboard/Keyboard.vcproj (original)
+++ branches/CMake/release/libs/statechart/example/Keyboard/Keyboard.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,201 +1,284 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="Keyboard"
- ProjectGUID="{4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- ExceptionHandling="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- BufferSecurityCheck="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/Keyboard.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/Keyboard.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="3"
- GlobalOptimizations="TRUE"
- InlineFunctionExpansion="2"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- StringPooling="TRUE"
- ExceptionHandling="TRUE"
- RuntimeLibrary="4"
- BufferSecurityCheck="FALSE"
- EnableFunctionLevelLinking="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="0"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/Keyboard.exe"
- LinkIncremental="1"
- GenerateDebugInformation="FALSE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\Keyboard.cpp">
- </File>
- </Filter>
- <Filter
- Name="Statechart Header Files"
- Filter="">
- <File
- RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\deep_history.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\deferral.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event_base.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event_processor.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\result.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\simple_state.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\state.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\state_machine.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\termination.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\transition.hpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="Keyboard"
+ ProjectGUID="{4CBF564B-EEC6-49E1-B69B-CABF5DDFC684}"
+ RootNamespace="Keyboard"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="Debug"
+ IntermediateDirectory="Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ ExceptionHandling="1"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ BufferSecurityCheck="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/Keyboard.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/Keyboard.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="Release"
+ IntermediateDirectory="Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="3"
+ InlineFunctionExpansion="2"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ StringPooling="true"
+ ExceptionHandling="1"
+ RuntimeLibrary="2"
+ BufferSecurityCheck="false"
+ EnableFunctionLevelLinking="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="0"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/Keyboard.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="false"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\Keyboard.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Statechart Header Files"
+ >
+ <File
+ RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\deep_history.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\deferral.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event_base.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event_processor.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\result.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\simple_state.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\state.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\state_machine.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\termination.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\transition.hpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/example/Performance/Performance.cpp
==============================================================================
--- branches/CMake/release/libs/statechart/example/Performance/Performance.cpp (original)
+++ branches/CMake/release/libs/statechart/example/Performance/Performance.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -444,19 +444,24 @@
 template< class NoOfBits >
 struct PerfResultBackInserter
 {
- PerfResultBackInserter( PerfResultList & perfResultList ) :
- perfResultList_( perfResultList )
- {
- }
-
- template< class FirstTransitionBit >
- void operator()( const FirstTransitionBit & )
- {
- perfResultList_.push_back(
- PerformanceTester< NoOfBits, FirstTransitionBit >::Test() );
- }
+ public:
+ PerfResultBackInserter( PerfResultList & perfResultList ) :
+ perfResultList_( perfResultList )
+ {
+ }
+
+ template< class FirstTransitionBit >
+ void operator()( const FirstTransitionBit & )
+ {
+ perfResultList_.push_back(
+ PerformanceTester< NoOfBits, FirstTransitionBit >::Test() );
+ }
+
+ private:
+ // avoids C4512 (assignment operator could not be generated)
+ PerfResultBackInserter & operator=( const PerfResultBackInserter & );
 
- PerfResultList & perfResultList_;
+ PerfResultList & perfResultList_;
 };
 
 template< class NoOfBits >

Modified: branches/CMake/release/libs/statechart/example/Performance/Performance.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/example/Performance/Performance.vcproj (original)
+++ branches/CMake/release/libs/statechart/example/Performance/Performance.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,201 +1,285 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="Performance"
- ProjectGUID="{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/Zm800"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- BufferSecurityCheck="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/Performance.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/Performance.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/Zm800"
- Optimization="3"
- GlobalOptimizations="TRUE"
- InlineFunctionExpansion="2"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- StringPooling="TRUE"
- ExceptionHandling="TRUE"
- RuntimeLibrary="4"
- BufferSecurityCheck="FALSE"
- EnableFunctionLevelLinking="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="0"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/Performance.exe"
- LinkIncremental="1"
- GenerateDebugInformation="FALSE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
- <File
- RelativePath="Performance.cpp">
- </File>
- </Filter>
- <Filter
- Name="Statechart Header Files"
- Filter="h;hpp;hxx;hm;inl;inc">
- <File
- RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\deep_history.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\deferral.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event_base.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event_processor.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\result.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\simple_state.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\state.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\state_machine.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\termination.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\transition.hpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="Performance"
+ ProjectGUID="{045411F0-A746-4DB3-85B9-C9AEDE6D5CBA}"
+ RootNamespace="Performance"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="Debug"
+ IntermediateDirectory="Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalOptions="/Zm800"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ BufferSecurityCheck="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/Performance.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/Performance.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="Release"
+ IntermediateDirectory="Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalOptions="/Zm800"
+ Optimization="3"
+ InlineFunctionExpansion="2"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ StringPooling="true"
+ ExceptionHandling="1"
+ RuntimeLibrary="2"
+ BufferSecurityCheck="false"
+ EnableFunctionLevelLinking="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="0"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/Performance.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="false"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm"
+ >
+ <File
+ RelativePath="Performance.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Statechart Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc"
+ >
+ <File
+ RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\deep_history.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\deferral.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event_base.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event_processor.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\result.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\simple_state.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\state.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\state_machine.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\termination.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\transition.hpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/example/PingPong/PingPong.cpp
==============================================================================
--- branches/CMake/release/libs/statechart/example/PingPong/PingPong.cpp (original)
+++ branches/CMake/release/libs/statechart/example/PingPong/PingPong.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2002-2006 Andreas Huber Doenni
+// Copyright 2002-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -29,53 +29,23 @@
 //////////////////////////////////////////////////////////////////////////////
 
 
+#include "Player.hpp"
 
-#include <boost/statechart/event.hpp>
 #include <boost/statechart/asynchronous_state_machine.hpp>
-#include <boost/statechart/state.hpp>
-#include <boost/statechart/transition.hpp>
-#include <boost/statechart/custom_reaction.hpp>
-#include <boost/statechart/fifo_scheduler.hpp>
 #include <boost/statechart/fifo_worker.hpp>
 
 #include <boost/mpl/list.hpp>
-
 #include <boost/config.hpp>
 #include <boost/intrusive_ptr.hpp>
-#include <boost/shared_ptr.hpp>
 #include <boost/function.hpp>
 #include <boost/bind.hpp>
 
-#ifdef BOOST_MSVC
-# pragma warning( push )
-# pragma warning( disable: 4127 ) // conditional expression is constant
-# pragma warning( disable: 4251 ) // class needs to have dll-interface
-# pragma warning( disable: 4275 ) // non-dll class used as base for dll class
-# pragma warning( disable: 4800 ) // forcing value to bool 'true' or 'false'
-#endif
-
 #ifdef BOOST_HAS_THREADS
 # include <boost/thread/thread.hpp>
 #endif
-#ifdef CUSTOMIZE_MEMORY_MANAGEMENT
-# ifdef BOOST_HAS_THREADS
- // for some reason the following is not automatically defined
-# if defined( BOOST_MSVC ) | defined( BOOST_INTEL )
-# define __WIN32__
-# endif
-# else
-# define BOOST_NO_MT
-# endif
-# include <boost/pool/pool_alloc.hpp>
-#endif
-
-#ifdef BOOST_MSVC
-# pragma warning( pop )
-#endif
 
 #include <iostream>
 #include <ctime>
-#include <memory> // std::allocator
 
 #ifdef BOOST_NO_STDC_NAMESPACE
 namespace std
@@ -94,133 +64,12 @@
 
 
 namespace sc = boost::statechart;
-namespace mpl = boost::mpl;
 
 
 
 //////////////////////////////////////////////////////////////////////////////
 const unsigned int noOfEvents = 1000000;
 
-template< class T >
-boost::intrusive_ptr< T > MakeIntrusive( T * pObject )
-{
- return boost::intrusive_ptr< T >( pObject );
-}
-
-
-//////////////////////////////////////////////////////////////////////////////
-struct BallReturned : sc::event< BallReturned >
-{
- boost::function1< void, const boost::intrusive_ptr< const BallReturned > & >
- returnToOpponent;
- boost::function0< void > abortGame;
-};
-
-struct GameAborted : sc::event< GameAborted > {};
-
-#ifdef CUSTOMIZE_MEMORY_MANAGEMENT
-typedef boost::fast_pool_allocator< int > MyAllocator;
-typedef sc::fifo_scheduler<
- sc::fifo_worker< MyAllocator >, MyAllocator > MyScheduler;
-#else
-typedef std::allocator< void > MyAllocator;
-typedef sc::fifo_scheduler<> MyScheduler;
-#endif
-
-struct Waiting;
-struct Player : sc::asynchronous_state_machine<
- Player, Waiting, MyScheduler, MyAllocator >
-{
- public:
- Player(
- my_context ctx,
- unsigned int maxNoOfReturns
- ) :
- my_base( ctx ),
- maxNoOfReturns_( maxNoOfReturns )
- {
- }
-
- static unsigned int & TotalNoOfProcessedEvents()
- {
- return totalNoOfProcessedEvents_;
- }
-
- unsigned int GetMaxNoOfReturns() const
- {
- return maxNoOfReturns_;
- }
-
- private:
- static unsigned int totalNoOfProcessedEvents_;
- const unsigned int maxNoOfReturns_;
-};
-
-unsigned int Player::totalNoOfProcessedEvents_ = 0;
-
-
-struct Waiting : sc::state< Waiting, Player >
-{
- public:
- //////////////////////////////////////////////////////////////////////////
- typedef mpl::list<
- sc::custom_reaction< BallReturned >,
- sc::custom_reaction< GameAborted >
- > reactions;
-
- Waiting( my_context ctx ) :
- my_base( ctx ),
- noOfReturns_( 0 ),
- pBallReturned_( new BallReturned() )
- {
- outermost_context_type & machine = outermost_context();
- // as we will always return the same event to the opponent, we construct
- // and fill it here so that we can reuse it over and over
- pBallReturned_->returnToOpponent = boost::bind(
- &MyScheduler::queue_event,
- &machine.my_scheduler(), machine.my_handle(), _1 );
- pBallReturned_->abortGame = boost::bind(
- &MyScheduler::queue_event,
- &machine.my_scheduler(), machine.my_handle(),
- MakeIntrusive( new GameAborted() ) );
- }
-
- sc::result react( const GameAborted & )
- {
- return DestroyMyself();
- }
-
- sc::result react( const BallReturned & ballReturned )
- {
- outermost_context_type & machine = outermost_context();
- ++machine.TotalNoOfProcessedEvents();
-
- if ( noOfReturns_++ < machine.GetMaxNoOfReturns() )
- {
- ballReturned.returnToOpponent( pBallReturned_ );
- return discard_event();
- }
- else
- {
- ballReturned.abortGame();
- return DestroyMyself();
- }
- }
-
- private:
- //////////////////////////////////////////////////////////////////////////
- sc::result DestroyMyself()
- {
- outermost_context_type & machine = outermost_context();
- machine.my_scheduler().destroy_processor( machine.my_handle() );
- machine.my_scheduler().terminate();
- return terminate();
- }
-
- unsigned int noOfReturns_;
- const boost::intrusive_ptr< BallReturned > pBallReturned_;
-};
-
 
 //////////////////////////////////////////////////////////////////////////////
 char GetKey()
@@ -275,15 +124,15 @@
         MyScheduler & scheduler2 = scheduler1;
         #endif
 
- MyScheduler::processor_handle player1 =
+ MyScheduler::processor_handle player1 =
           scheduler1.create_processor< Player >( noOfEvents / 2 );
         scheduler1.initiate_processor( player1 );
- MyScheduler::processor_handle player2 =
+ MyScheduler::processor_handle player2 =
           scheduler2.create_processor< Player >( noOfEvents / 2 );
         scheduler2.initiate_processor( player2 );
 
         boost::intrusive_ptr< BallReturned > pInitialBall = new BallReturned();
- pInitialBall->returnToOpponent = boost::bind(
+ pInitialBall->returnToOpponent = boost::bind(
           &MyScheduler::queue_event, &scheduler1, player1, _1 );
         pInitialBall->abortGame = boost::bind(
           &MyScheduler::queue_event,

Modified: branches/CMake/release/libs/statechart/example/PingPong/PingPong.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/example/PingPong/PingPong.vcproj (original)
+++ branches/CMake/release/libs/statechart/example/PingPong/PingPong.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,129 +1,193 @@
 <?xml version="1.0" encoding="Windows-1252"?>
 <VisualStudioProject
         ProjectType="Visual C++"
- Version="7.10"
+ Version="9.00"
         Name="PingPong"
         ProjectGUID="{11CCA9FC-6012-4B64-8C61-808D0F8D1B51}"
         RootNamespace="PingPong"
- Keyword="Win32Proj">
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
         <Platforms>
                 <Platform
- Name="Win32"/>
+ Name="Win32"
+ />
         </Platforms>
+ <ToolFiles>
+ </ToolFiles>
         <Configurations>
                 <Configuration
                         Name="Debug|Win32"
                         OutputDirectory="Debug"
                         IntermediateDirectory="Debug"
                         ConfigurationType="1"
- CharacterSet="2">
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
                         <Tool
                                 Name="VCCLCompilerTool"
                                 Optimization="0"
                                 AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;BOOST_ALL_DYN_LINK"
+ MinimalRebuild="true"
                                 BasicRuntimeChecks="3"
                                 RuntimeLibrary="3"
- BufferSecurityCheck="TRUE"
- DisableLanguageExtensions="FALSE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
+ BufferSecurityCheck="true"
+ DisableLanguageExtensions="false"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
                                 UsePrecompiledHeader="0"
                                 WarningLevel="4"
- WarnAsError="FALSE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
                         <Tool
- Name="VCCustomBuildTool"/>
+ Name="VCPreLinkEventTool"
+ />
                         <Tool
                                 Name="VCLinkerTool"
                                 OutputFile="$(OutDir)/PingPong.exe"
                                 LinkIncremental="2"
- AdditionalLibraryDirectories="&quot;..\..\..\..\bin\boost\libs\thread\build\libboost_thread.lib\vc-7_1\debug\threading-multi&quot;"
- GenerateDebugInformation="TRUE"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\..\bin.v2\libs\thread\build\msvc-9.0\$(ConfigurationName)\threading-multi&quot;;&quot;$(ProjectDir)..\..\..\..\bin.v2\libs\date_time\build\msvc-9.0\$(ConfigurationName)\threading-multi&quot;"
+ GenerateDebugInformation="true"
                                 ProgramDatabaseFile="$(OutDir)/PingPong.pdb"
                                 SubSystem="1"
- TargetMachine="1"/>
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
                         <Tool
- Name="VCMIDLTool"/>
+ Name="VCALinkTool"
+ />
                         <Tool
- Name="VCPostBuildEventTool"/>
+ Name="VCManifestTool"
+ />
                         <Tool
- Name="VCPreBuildEventTool"/>
+ Name="VCXDCMakeTool"
+ />
                         <Tool
- Name="VCPreLinkEventTool"/>
+ Name="VCBscMakeTool"
+ />
                         <Tool
- Name="VCResourceCompilerTool"/>
+ Name="VCFxCopTool"
+ />
                         <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
+ Name="VCAppVerifierTool"
+ />
                         <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ Name="VCPostBuildEventTool"
+ CommandLine="copy $(ProjectDir)..\..\..\..\bin.v2\libs\thread\build\msvc-9.0\$(ConfigurationName)\threading-multi\*.dll $(TargetDir)&#x0D;&#x0A;copy $(ProjectDir)..\..\..\..\bin.v2\libs\date_time\build\msvc-9.0\$(ConfigurationName)\threading-multi\*.dll $(TargetDir)&#x0D;&#x0A;"
+ />
                 </Configuration>
                 <Configuration
                         Name="Release|Win32"
                         OutputDirectory="Release"
                         IntermediateDirectory="Release"
                         ConfigurationType="1"
- CharacterSet="2">
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
                         <Tool
                                 Name="VCCLCompilerTool"
                                 Optimization="3"
- GlobalOptimizations="TRUE"
                                 InlineFunctionExpansion="2"
                                 AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- StringPooling="TRUE"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;BOOST_ALL_DYN_LINK"
+ StringPooling="true"
                                 RuntimeLibrary="2"
- BufferSecurityCheck="FALSE"
- EnableFunctionLevelLinking="TRUE"
- DisableLanguageExtensions="FALSE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
+ BufferSecurityCheck="false"
+ EnableFunctionLevelLinking="true"
+ DisableLanguageExtensions="false"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
                                 UsePrecompiledHeader="0"
                                 WarningLevel="4"
- WarnAsError="FALSE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="0"/>
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="0"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
                         <Tool
- Name="VCCustomBuildTool"/>
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
                         <Tool
                                 Name="VCLinkerTool"
                                 OutputFile="$(OutDir)/PingPong.exe"
                                 LinkIncremental="1"
- AdditionalLibraryDirectories="&quot;..\..\..\..\bin\boost\libs\thread\build\libboost_thread.lib\vc-7_1\release\threading-multi&quot;"
- GenerateDebugInformation="FALSE"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\..\bin.v2\libs\thread\build\msvc-9.0\$(ConfigurationName)\threading-multi&quot;;&quot;$(ProjectDir)..\..\..\..\bin.v2\libs\date_time\build\msvc-9.0\$(ConfigurationName)\threading-multi&quot;"
+ GenerateDebugInformation="false"
                                 SubSystem="1"
                                 OptimizeReferences="2"
                                 EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
                         <Tool
- Name="VCPostBuildEventTool"/>
+ Name="VCALinkTool"
+ />
                         <Tool
- Name="VCPreBuildEventTool"/>
+ Name="VCManifestTool"
+ />
                         <Tool
- Name="VCPreLinkEventTool"/>
+ Name="VCXDCMakeTool"
+ />
                         <Tool
- Name="VCResourceCompilerTool"/>
+ Name="VCBscMakeTool"
+ />
                         <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
+ Name="VCFxCopTool"
+ />
                         <Tool
- Name="VCXMLDataGeneratorTool"/>
+ Name="VCAppVerifierTool"
+ />
                         <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ Name="VCPostBuildEventTool"
+ CommandLine="copy $(ProjectDir)..\..\..\..\bin.v2\libs\thread\build\msvc-9.0\$(ConfigurationName)\threading-multi\*.dll $(TargetDir)&#x0D;&#x0A;copy $(ProjectDir)..\..\..\..\bin.v2\libs\date_time\build\msvc-9.0\$(ConfigurationName)\threading-multi\*.dll $(TargetDir)&#x0D;&#x0A;"
+ />
                 </Configuration>
         </Configurations>
         <References>
@@ -132,67 +196,103 @@
                 <Filter
                         Name="Source Files"
                         Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\PingPong.cpp"
+ >
+ </File>
                         <File
- RelativePath=".\PingPong.cpp">
+ RelativePath=".\Player.cpp"
+ >
                         </File>
                 </Filter>
                 <Filter
                         Name="Statechart Header Files"
- Filter="">
+ >
+ <File
+ RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp"
+ >
+ </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp">
+ RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp">
+ RelativePath="..\..\..\..\boost\statechart\deep_history.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\deep_history.hpp">
+ RelativePath="..\..\..\..\boost\statechart\deferral.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\deferral.hpp">
+ RelativePath="..\..\..\..\boost\statechart\event.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\event.hpp">
+ RelativePath="..\..\..\..\boost\statechart\event_base.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\event_base.hpp">
+ RelativePath="..\..\..\..\boost\statechart\event_processor.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\event_processor.hpp">
+ RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp">
+ RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp">
+ RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp">
+ RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp">
+ RelativePath="..\..\..\..\boost\statechart\result.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\result.hpp">
+ RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp">
+ RelativePath="..\..\..\..\boost\statechart\simple_state.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\simple_state.hpp">
+ RelativePath="..\..\..\..\boost\statechart\state.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\state.hpp">
+ RelativePath="..\..\..\..\boost\statechart\state_machine.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\state_machine.hpp">
+ RelativePath="..\..\..\..\boost\statechart\termination.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\termination.hpp">
+ RelativePath="..\..\..\..\boost\statechart\transition.hpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ >
+ <File
+ RelativePath=".\Player.hpp"
+ >
                         </File>
                         <File
- RelativePath="..\..\..\..\boost\statechart\transition.hpp">
+ RelativePath=".\Waiting.hpp"
+ >
                         </File>
                 </Filter>
         </Files>

Modified: branches/CMake/release/libs/statechart/example/StopWatch/StopWatch.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/example/StopWatch/StopWatch.vcproj (original)
+++ branches/CMake/release/libs/statechart/example/StopWatch/StopWatch.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,198 +1,282 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="StopWatch"
- ProjectGUID="{CF66596F-7DEA-4BB6-A728-F7FEF2889855}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- BufferSecurityCheck="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/StopWatch.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/StopWatch.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="3"
- GlobalOptimizations="TRUE"
- InlineFunctionExpansion="2"
- AdditionalIncludeDirectories="..\..\..\.."
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- StringPooling="TRUE"
- RuntimeLibrary="4"
- BufferSecurityCheck="FALSE"
- EnableFunctionLevelLinking="TRUE"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- WarnAsError="TRUE"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="0"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/StopWatch.exe"
- LinkIncremental="1"
- GenerateDebugInformation="FALSE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
- <File
- RelativePath="StopWatch.cpp">
- </File>
- </Filter>
- <Filter
- Name="Statechart Header Files"
- Filter="h;hpp;hxx;hm;inl;inc">
- <File
- RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\deep_history.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\deferral.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event_base.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\event_processor.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\result.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\simple_state.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\state.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\state_machine.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\termination.hpp">
- </File>
- <File
- RelativePath="..\..\..\..\boost\statechart\transition.hpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="StopWatch"
+ ProjectGUID="{DFA55264-E7F5-43FE-841F-D56AC48FF2A8}"
+ RootNamespace="StopWatch"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="Debug"
+ IntermediateDirectory="Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ BufferSecurityCheck="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/StopWatch.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/StopWatch.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="Release"
+ IntermediateDirectory="Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="3"
+ InlineFunctionExpansion="2"
+ AdditionalIncludeDirectories="..\..\..\.."
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ StringPooling="true"
+ RuntimeLibrary="2"
+ BufferSecurityCheck="false"
+ EnableFunctionLevelLinking="true"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="0"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/StopWatch.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="false"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm"
+ >
+ <File
+ RelativePath="StopWatch.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Statechart Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc"
+ >
+ <File
+ RelativePath="..\..\..\..\boost\statechart\asynchronous_state_machine.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\custom_reaction.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\deep_history.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\deferral.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event_base.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\event_processor.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\exception_translator.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\fifo_scheduler.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\in_state_reaction.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\null_exception_translator.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\result.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\shallow_history.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\simple_state.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\state.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\state_machine.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\termination.hpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\boost\statechart\transition.hpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/CustomReactionTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/CustomReactionTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/CustomReactionTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="CustomReactionTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/CustomReactionTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/CustomReactionTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/CustomReactionTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\CustomReactionTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="CustomReactionTest"
+ ProjectGUID="{2D85E7DE-2347-43EA-843F-691101E6F98F}"
+ RootNamespace="CustomReactionTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/CustomReactionTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/CustomReactionTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/CustomReactionTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\CustomReactionTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/DeferralTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/DeferralTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/DeferralTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="DeferralTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/DeferralTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/DeferralTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/DeferralTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\DeferralTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="DeferralTest"
+ ProjectGUID="{E599D469-A2BD-42FB-A217-73A420213D06}"
+ RootNamespace="DeferralTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/DeferralTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/DeferralTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/DeferralTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\DeferralTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/FifoSchedulerTest.cpp
==============================================================================
--- branches/CMake/release/libs/statechart/test/FifoSchedulerTest.cpp (original)
+++ branches/CMake/release/libs/statechart/test/FifoSchedulerTest.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2005-2006 Andreas Huber Doenni
+// Copyright 2005-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -31,8 +31,13 @@
 
 struct EvCheckCtorArgs : sc::event< EvCheckCtorArgs >
 {
- EvCheckCtorArgs( int expectedArgs ) : expectedArgs_( expectedArgs ) {}
- const int expectedArgs_;
+ public:
+ EvCheckCtorArgs( int expectedArgs ) : expectedArgs_( expectedArgs ) {}
+ const int expectedArgs_;
+
+ private:
+ // avoids C4512 (assignment operator could not be generated)
+ EvCheckCtorArgs & operator=( const EvCheckCtorArgs & );
 };
 
 struct EvTerminate : sc::event< EvTerminate > {};

Modified: branches/CMake/release/libs/statechart/test/FifoSchedulerTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/FifoSchedulerTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/FifoSchedulerTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="FifoSchedulerTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/FifoSchedulerTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/FifoSchedulerTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/FifoSchedulerTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\FifoSchedulerTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="FifoSchedulerTest"
+ ProjectGUID="{3A9E80AF-DD29-4CE7-AB7D-1A13C766AC96}"
+ RootNamespace="FifoSchedulerTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/FifoSchedulerTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/FifoSchedulerTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/FifoSchedulerTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\FifoSchedulerTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/HistoryTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/HistoryTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/HistoryTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="HistoryTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/HistoryTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/HistoryTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/HistoryTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\HistoryTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="HistoryTest"
+ ProjectGUID="{206654FA-7AA0-4E06-BCFA-DC94D4281755}"
+ RootNamespace="HistoryTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/HistoryTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/HistoryTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/HistoryTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\HistoryTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InStateReactionTest.cpp
==============================================================================
--- branches/CMake/release/libs/statechart/test/InStateReactionTest.cpp (original)
+++ branches/CMake/release/libs/statechart/test/InStateReactionTest.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2005-2006 Andreas Huber Doenni
+// Copyright 2005-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////
@@ -24,10 +24,10 @@
 struct F : sc::event< F > {};
 struct G : sc::event< G > {};
 struct H : sc::event< H > {};
+struct I : sc::event< I > {};
 
 struct A;
-struct InStateReactionTest :
- sc::state_machine< InStateReactionTest, A > {};
+struct InStateReactionTest : sc::state_machine< InStateReactionTest, A > {};
 
 struct B;
 struct A : sc::simple_state< A, InStateReactionTest, B >
@@ -59,7 +59,8 @@
 
     typedef mpl::list<
       sc::in_state_reaction< F, B, &B::IncrementCount >,
- sc::in_state_reaction< G, A, &A::IncrementCount >
+ sc::in_state_reaction< G, A, &A::IncrementCount >,
+ sc::in_state_reaction< I >
> reactions;
 
     unsigned int eventCount_;
@@ -67,29 +68,35 @@
 
 
 
+void RequireEventCounts(
+ const InStateReactionTest & machine,
+ unsigned int aCount, unsigned int bCount)
+{
+ BOOST_REQUIRE(
+ machine.state_downcast< const A & >().eventCount_ == aCount );
+ BOOST_REQUIRE(
+ machine.state_downcast< const B & >().eventCount_ == bCount );
+}
+
 int test_main( int, char* [] )
 {
   InStateReactionTest machine;
   machine.initiate();
 
- BOOST_REQUIRE( machine.state_downcast< const A & >().eventCount_ == 0 );
- BOOST_REQUIRE( machine.state_downcast< const B & >().eventCount_ == 0 );
+ RequireEventCounts(machine, 0, 0);
   machine.process_event( F() );
- BOOST_REQUIRE( machine.state_downcast< const A & >().eventCount_ == 0 );
- BOOST_REQUIRE( machine.state_downcast< const B & >().eventCount_ == 1 );
+ RequireEventCounts(machine, 0, 1);
   machine.process_event( E() );
- BOOST_REQUIRE( machine.state_downcast< const A & >().eventCount_ == 1 );
- BOOST_REQUIRE( machine.state_downcast< const B & >().eventCount_ == 1 );
+ RequireEventCounts(machine, 1, 1);
   machine.process_event( E() );
   machine.process_event( F() );
- BOOST_REQUIRE( machine.state_downcast< const A & >().eventCount_ == 2 );
- BOOST_REQUIRE( machine.state_downcast< const B & >().eventCount_ == 2 );
+ RequireEventCounts(machine, 2, 2);
   machine.process_event( G() );
- BOOST_REQUIRE( machine.state_downcast< const A & >().eventCount_ == 3 );
- BOOST_REQUIRE( machine.state_downcast< const B & >().eventCount_ == 2 );
+ RequireEventCounts(machine, 3, 2);
   machine.process_event( H() );
- BOOST_REQUIRE( machine.state_downcast< const A & >().eventCount_ == 4 );
- BOOST_REQUIRE( machine.state_downcast< const B & >().eventCount_ == 2 );
+ RequireEventCounts(machine, 4, 2);
+ machine.process_event( I() );
+ RequireEventCounts(machine, 4, 2);
 
   return 0;
 }

Modified: branches/CMake/release/libs/statechart/test/InStateReactionTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InStateReactionTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InStateReactionTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InStateReactionTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/InStateReactionTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InStateReactionTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/InStateReactionTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InStateReactionTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InStateReactionTest"
+ ProjectGUID="{DAD64722-72C8-4424-9024-185A0D0D897A}"
+ RootNamespace="InStateReactionTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/InStateReactionTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InStateReactionTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/InStateReactionTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InStateReactionTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InconsistentHistoryTest1.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InconsistentHistoryTest1.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InconsistentHistoryTest1.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InconsistentHistoryTest1"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest1.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest1.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest1.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InconsistentHistoryTest1.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InconsistentHistoryTest1"
+ ProjectGUID="{B2739180-6048-4CA7-A96B-ECE182100321}"
+ RootNamespace="InconsistentHistoryTest1"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest1.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest1.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest1.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InconsistentHistoryTest1.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InconsistentHistoryTest2.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InconsistentHistoryTest2.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InconsistentHistoryTest2.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InconsistentHistoryTest2"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest2.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest2.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest2.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InconsistentHistoryTest2.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InconsistentHistoryTest2"
+ ProjectGUID="{7C58D72A-C6EA-4E25-92E8-5ADEB5F61662}"
+ RootNamespace="InconsistentHistoryTest2"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest2.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest2.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest2.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InconsistentHistoryTest2.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InconsistentHistoryTest3.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InconsistentHistoryTest3.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InconsistentHistoryTest3.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InconsistentHistoryTest3"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest3.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest3.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest3.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InconsistentHistoryTest3.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InconsistentHistoryTest3"
+ ProjectGUID="{801027D8-DC4E-48DC-9F98-75BA0B7F2997}"
+ RootNamespace="InconsistentHistoryTest3"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest3.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest3.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest3.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InconsistentHistoryTest3.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InconsistentHistoryTest4.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InconsistentHistoryTest4.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InconsistentHistoryTest4.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InconsistentHistoryTest4"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest4.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest4.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest4.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InconsistentHistoryTest4.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InconsistentHistoryTest4"
+ ProjectGUID="{A211FFC9-D4B4-4C3A-900E-044A7519F8E4}"
+ RootNamespace="InconsistentHistoryTest4"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest4.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest4.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest4.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InconsistentHistoryTest4.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InconsistentHistoryTest5.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InconsistentHistoryTest5.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InconsistentHistoryTest5.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InconsistentHistoryTest5"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest5.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest5.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest5.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InconsistentHistoryTest5.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InconsistentHistoryTest5"
+ ProjectGUID="{BE34C83E-6D4A-4E49-B9BA-EFF47ECBAA39}"
+ RootNamespace="InconsistentHistoryTest5"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest5.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest5.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest5.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InconsistentHistoryTest5.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InconsistentHistoryTest6.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InconsistentHistoryTest6.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InconsistentHistoryTest6.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InconsistentHistoryTest6"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest6.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest6.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest6.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InconsistentHistoryTest6.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InconsistentHistoryTest6"
+ ProjectGUID="{7D2AB32E-930A-4758-8FAF-F5E0A19A411C}"
+ RootNamespace="InconsistentHistoryTest6"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest6.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest6.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest6.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InconsistentHistoryTest6.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InconsistentHistoryTest7.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InconsistentHistoryTest7.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InconsistentHistoryTest7.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InconsistentHistoryTest7"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest7.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest7.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest7.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InconsistentHistoryTest7.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InconsistentHistoryTest7"
+ ProjectGUID="{41A33CE9-785E-4EC2-9022-A3B229D4935B}"
+ RootNamespace="InconsistentHistoryTest7"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest7.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest7.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest7.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InconsistentHistoryTest7.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InconsistentHistoryTest8.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InconsistentHistoryTest8.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InconsistentHistoryTest8.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InconsistentHistoryTest8"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest8.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest8.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InconsistentHistoryTest8.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InconsistentHistoryTest8.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InconsistentHistoryTest8"
+ ProjectGUID="{FDBCBAEF-C973-42C2-BD8B-4796C0A1E6A8}"
+ RootNamespace="InconsistentHistoryTest8"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest8.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InconsistentHistoryTest8.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InconsistentHistoryTest8.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InconsistentHistoryTest8.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InvalidChartTest1.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InvalidChartTest1.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InvalidChartTest1.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InvalidChartTest1"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidChartTest1.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InvalidChartTest1.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidChartTest1.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InvalidChartTest1.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InvalidChartTest1"
+ ProjectGUID="{AA1A7669-702E-4D56-A390-849612EB9CDF}"
+ RootNamespace="InvalidChartTest1"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidChartTest1.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InvalidChartTest1.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidChartTest1.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InvalidChartTest1.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InvalidChartTest2.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InvalidChartTest2.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InvalidChartTest2.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InvalidChartTest2"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidChartTest2.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InvalidChartTest2.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidChartTest2.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InvalidChartTest2.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InvalidChartTest2"
+ ProjectGUID="{CCB4DBF2-626B-4DA5-AB02-9504B0A97F9A}"
+ RootNamespace="InvalidChartTest2"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidChartTest2.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InvalidChartTest2.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidChartTest2.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InvalidChartTest2.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InvalidChartTest3.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InvalidChartTest3.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InvalidChartTest3.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InvalidChartTest3"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidChartTest3.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InvalidChartTest3.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidChartTest3.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InvalidChartTest3.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InvalidChartTest3"
+ ProjectGUID="{7083917A-4A8D-4BEF-A435-61AAF3BA554C}"
+ RootNamespace="InvalidChartTest3"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidChartTest3.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InvalidChartTest3.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidChartTest3.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InvalidChartTest3.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InvalidResultAssignTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InvalidResultAssignTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InvalidResultAssignTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InvalidResultAssignTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidResultAssignTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InvalidResultAssignTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidResultAssignTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InvalidResultAssignTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InvalidResultAssignTest"
+ ProjectGUID="{962F23F9-D433-4825-9945-D5A5C5337B7F}"
+ RootNamespace="InvalidResultAssignTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidResultAssignTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InvalidResultAssignTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidResultAssignTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InvalidResultAssignTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InvalidResultCopyTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InvalidResultCopyTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InvalidResultCopyTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InvalidResultCopyTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/InvalidResultCopyTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InvalidResultCopyTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/InvalidResultCopyTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InvalidResultCopyTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InvalidResultCopyTest"
+ ProjectGUID="{856A30E8-85E8-4BE4-B208-B5FC395408AF}"
+ RootNamespace="InvalidResultCopyTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/InvalidResultCopyTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InvalidResultCopyTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/InvalidResultCopyTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InvalidResultCopyTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InvalidResultDefCtorTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InvalidResultDefCtorTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InvalidResultDefCtorTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InvalidResultDefCtorTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidResultDefCtorTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InvalidResultDefCtorTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidResultDefCtorTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InvalidResultDefCtorTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InvalidResultDefCtorTest"
+ ProjectGUID="{8381EC0A-7D7B-4127-93E8-DFE12F023611}"
+ RootNamespace="InvalidResultDefCtorTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidResultDefCtorTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InvalidResultDefCtorTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidResultDefCtorTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InvalidResultDefCtorTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InvalidTransitionTest1.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InvalidTransitionTest1.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InvalidTransitionTest1.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InvalidTransitionTest1"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidTransitionTest1.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InvalidTransitionTest1.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidTransitionTest1.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InvalidTransitionTest1.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InvalidTransitionTest1"
+ ProjectGUID="{345A4DD5-8B5C-40E4-95D2-4CF5A2621040}"
+ RootNamespace="InvalidTransitionTest1"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidTransitionTest1.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InvalidTransitionTest1.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidTransitionTest1.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InvalidTransitionTest1.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/InvalidTransitionTest2.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/InvalidTransitionTest2.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/InvalidTransitionTest2.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="InvalidTransitionTest2"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidTransitionTest2.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/InvalidTransitionTest2.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/InvalidTransitionTest2.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\InvalidTransitionTest2.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="InvalidTransitionTest2"
+ ProjectGUID="{FCB42B5B-DDE0-4E12-8474-F55DC85606FE}"
+ RootNamespace="InvalidTransitionTest2"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidTransitionTest2.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/InvalidTransitionTest2.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/InvalidTransitionTest2.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories=""
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\InvalidTransitionTest2.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/statechart/test/Jamfile.v2 (original)
+++ branches/CMake/release/libs/statechart/test/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -151,6 +151,6 @@
     [ statechart-st-compile-example Handcrafted : Handcrafted : Handcrafted ]
     [ statechart-st-compile-example Keyboard : Keyboard : Keyboard : ]
     [ statechart-st-compile-example Performance : Performance : Performance ]
- [ statechart-st-compile-example PingPong : PingPong : PingPong ]
+ [ statechart-st-compile-example PingPong : PingPong : PingPong Player ]
     [ statechart-st-compile-example StopWatch : StopWatch : StopWatch ]
     [ statechart-st-compile-example StopWatch2 : StopWatch : StopWatch2 ] ;

Modified: branches/CMake/release/libs/statechart/test/StateCastTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/StateCastTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/StateCastTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="StateCastTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/StateCastTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/StateCastTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/StateCastTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\StateCastTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="StateCastTest"
+ ProjectGUID="{1826122F-4DB3-4C69-8BB2-E0B18D809FA9}"
+ RootNamespace="StateCastTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/StateCastTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/StateCastTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/StateCastTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\StateCastTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/StateIterationTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/StateIterationTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/StateIterationTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="StateIterationTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/StateIterationTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/StateIterationTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/StateIterationTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\StateIterationTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="StateIterationTest"
+ ProjectGUID="{D52BF95D-392C-4535-B332-CB3CC29C8227}"
+ RootNamespace="StateIterationTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/StateIterationTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/StateIterationTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/StateIterationTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\StateIterationTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/TerminationTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/TerminationTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/TerminationTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="TerminationTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/TerminationTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/TerminationTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/TerminationTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\TerminationTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="TerminationTest"
+ ProjectGUID="{A9921F2C-D8D3-4A4A-87C8-9A34DDD588B2}"
+ RootNamespace="TerminationTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/TerminationTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/TerminationTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/TerminationTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\TerminationTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/TransitionTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/TransitionTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/TransitionTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,147 +1,218 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="TransitionTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/TransitionTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/TransitionTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/TransitionTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\TransitionTest.cpp">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
- <File
- RelativePath=".\InnermostDefault.hpp">
- </File>
- <File
- RelativePath=".\OuterOrthogonal.hpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="TransitionTest"
+ ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
+ RootNamespace="TransitionTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/TransitionTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/TransitionTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/TransitionTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\TransitionTest.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+ >
+ <File
+ RelativePath=".\InnermostDefault.hpp"
+ >
+ </File>
+ <File
+ RelativePath=".\OuterOrthogonal.hpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/TuTest.cpp
==============================================================================
--- branches/CMake/release/libs/statechart/test/TuTest.cpp (original)
+++ branches/CMake/release/libs/statechart/test/TuTest.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,5 +1,5 @@
 //////////////////////////////////////////////////////////////////////////////
-// Copyright 2005-2006 Andreas Huber Doenni
+// Copyright 2005-2008 Andreas Huber Doenni
 // Distributed under the Boost Software License, Version 1.0. (See accompany-
 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 //////////////////////////////////////////////////////////////////////////////

Modified: branches/CMake/release/libs/statechart/test/TuTest.hpp
==============================================================================
--- branches/CMake/release/libs/statechart/test/TuTest.hpp (original)
+++ branches/CMake/release/libs/statechart/test/TuTest.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -31,7 +31,13 @@
 
 namespace sc = boost::statechart;
 
-
+#ifdef BOOST_MSVC
+# pragma warning( push )
+ // class X needs to have dll-interface to be used by clients of class Y
+# pragma warning( disable: 4251 )
+ // non dll-interface class X used as base for dll-interface class
+# pragma warning( disable: 4275 )
+#endif
 
 struct BOOST_STATECHART_DECL EvX : sc::event< EvX > {};
 struct BOOST_STATECHART_DECL EvY : sc::event< EvY > {};
@@ -43,6 +49,9 @@
   void unconsumed_event( const sc::event_base & );
 };
 
+#ifdef BOOST_MSVC
+# pragma warning( pop )
+#endif
 
 
 #endif

Modified: branches/CMake/release/libs/statechart/test/TuTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/TuTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/TuTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,147 +1,218 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="TuTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/TuTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/TuTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/TuTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\TuTest.cpp">
- </File>
- <File
- RelativePath=".\TuTestMain.cpp">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
- <File
- RelativePath=".\TuTest.hpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="TuTest"
+ ProjectGUID="{892D213C-F575-4003-BB0F-5787DA2C407D}"
+ RootNamespace="TuTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/TuTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/TuTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/TuTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\TuTest.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\TuTestMain.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+ >
+ <File
+ RelativePath=".\TuTest.hpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/TypeInfoTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/TypeInfoTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/TypeInfoTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="TypeInfoTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/TypeInfoTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/TypeInfoTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/TypeInfoTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\TypeInfoTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="TypeInfoTest"
+ ProjectGUID="{6FBB8140-6B00-4BF1-AD6D-9D394DE3610F}"
+ RootNamespace="TypeInfoTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/TypeInfoTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/TypeInfoTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/TypeInfoTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\TypeInfoTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/UnconsumedResultTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/UnconsumedResultTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/UnconsumedResultTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,136 +1,204 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="UnconsumedResultTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-gd-1_34.lib"
- OutputFile="$(OutDir)/UnconsumedResultTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/UnconsumedResultTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libboost_test_exec_monitor-vc71-mt-1_34.lib"
- OutputFile="$(OutDir)/UnconsumedResultTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\UnconsumedResultTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="UnconsumedResultTest"
+ ProjectGUID="{93FEA76A-3C04-4A70-B53B-485490CF38A1}"
+ RootNamespace="UnconsumedResultTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-gd-1_35.lib"
+ OutputFile="$(OutDir)/UnconsumedResultTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/UnconsumedResultTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="libboost_test_exec_monitor-vc90-mt-1_35.lib"
+ OutputFile="$(OutDir)/UnconsumedResultTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="&quot;$(ProjectDir)..\..\..\bin.v2\libs\test\build\msvc-9.0\$(ConfigurationName)\asynch-exceptions-on\link-static\threading-multi&quot;"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\UnconsumedResultTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/statechart/test/UnsuppDeepHistoryTest.vcproj
==============================================================================
--- branches/CMake/release/libs/statechart/test/UnsuppDeepHistoryTest.vcproj (original)
+++ branches/CMake/release/libs/statechart/test/UnsuppDeepHistoryTest.vcproj 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,134 +1,202 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="UnsuppDeepHistoryTest"
- ProjectGUID="{D9103E3E-640D-4AB7-910C-ACA96709ED0A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/UnsuppDeepHistoryTest.exe"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/UnsuppDeepHistoryTest.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- DisableLanguageExtensions="TRUE"
- TreatWChar_tAsBuiltInType="TRUE"
- ForceConformanceInForLoopScope="TRUE"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="4"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/UnsuppDeepHistoryTest.exe"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\UnsuppDeepHistoryTest.cpp">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="UnsuppDeepHistoryTest"
+ ProjectGUID="{7B6A4F61-6210-4FDC-BC23-660DA10EE7DD}"
+ RootNamespace="UnsuppDeepHistoryTest"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(ProjectName)Debug"
+ IntermediateDirectory="$(ProjectName)Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/UnsuppDeepHistoryTest.exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\debug\threading-multi"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/UnsuppDeepHistoryTest.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(ProjectName)Release"
+ IntermediateDirectory="$(ProjectName)Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ DisableLanguageExtensions="true"
+ TreatWChar_tAsBuiltInType="true"
+ ForceConformanceInForLoopScope="true"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="4"
+ WarnAsError="true"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/UnsuppDeepHistoryTest.exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="..\..\..\bin\boost\libs\test\build\libboost_test_exec_monitor.lib\vc-7_1\release\threading-multi"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\UnsuppDeepHistoryTest.cpp"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: branches/CMake/release/libs/static_assert/doc/static_assert.qbk
==============================================================================
--- branches/CMake/release/libs/static_assert/doc/static_assert.qbk (original)
+++ branches/CMake/release/libs/static_assert/doc/static_assert.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,7 +16,7 @@
 ]
 
 This manual is also available in
-[@http:svn.boost.org/svn/boost/sandbox/pdf/static_assert/release/static_assert.pdf
+[@http://svn.boost.org/svn/boost/sandbox/pdf/static_assert/release/static_assert.pdf
 printer friendly PDF format].
 
 [section:intro Overview and Tutorial]

Modified: branches/CMake/release/libs/system/doc/index.html
==============================================================================
--- branches/CMake/release/libs/system/doc/index.html (original)
+++ branches/CMake/release/libs/system/doc/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,10 +11,10 @@
 
 <body>
 
-<table border="0" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="637">
+<table border="0" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111">
   <tr>
     <td width="277">
-<a href="../../../index.htm">
+<a href="../../../index.html">
 <img src="../../../boost.png" alt="boost.png (6897 bytes)" align="middle" width="277" height="86" border="0"></a></td>
     <td width="337" align="middle">
     <font size="7">System Library</font>
@@ -132,14 +132,16 @@
 paper. Johan Nilsson's comments led to several of the refinements in N2066 .</p>
 <hr>
 
-<p>© Copyright Beman Dawes, 1999<br>
-Distributed under the Boost Software License, Version 1.0. See
-www.boost.org/LICENSE_1_0.txt</p>
-
 <p>Revised
-<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%B %d, %Y" startspan -->November 12, 2007<!--webbot bot="Timestamp" endspan i-checksum="39581" --> </font>
+<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%B %d, %Y" startspan -->February 23, 2008<!--webbot bot="Timestamp" endspan i-checksum="41408" --> </font>
 </p>
 
+<p>© Copyright Beman Dawes, 1999</p>
+
+<p>Distributed under the Boost Software License, Version 1.0.
+(See file LICENSE_1_0.txt
+or&nbsp; www.boost.org/LICENSE_1_0.txt) </p>
+
 </body>
 
 </html>
\ No newline at end of file

Modified: branches/CMake/release/libs/system/doc/reference.html
==============================================================================
--- branches/CMake/release/libs/system/doc/reference.html (original)
+++ branches/CMake/release/libs/system/doc/reference.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -132,10 +132,10 @@
     template< class T="" >
       struct is_error_condition_enum { static const bool value = false; };
 
- // portable error_conditions
- namespace posix_error
+ // generic error_conditions
+ namespace errc
     {
- enum posix_errno
+ enum errc_t
       {
         success = 0,
         address_family_not_supported, //EAFNOSUPPORT
@@ -218,9 +218,9 @@
         wrong_protocol_type //EPROTOTYPE
       };
 
- } // namespace posix_error
+ } // namespace errc
 
- template<> struct is_error_condition_enum<posix::posix_errno>&lt;posix_error::posix_errno&gt;
+ template<> struct is_error_condition_enum<posix::posix_errno>&lt;errc::errc_t&gt;
       { static const bool value = true; };
 
     bool operator==( const error_code &amp; lhs, const error_code &amp; rhs );
@@ -236,8 +236,8 @@
     bool operator&lt;( const error_code &amp; lhs, const error_code &amp; rhs );
     bool operator&lt;( const error_condition &amp; lhs, const error_condition &amp; rhs );
 
- error_code make_error_code( posix_error::posix_errno e );
- error_condition make_error_condition( posix_error::posix_errno e );
+ error_code make_error_code( errc::errc_t e );
+ error_condition make_error_condition( errc::errc_t e );
 
     template &lt;class charT, class traits&gt;
       std::basic_ostream&lt;charT,traits&gt;&amp;
@@ -247,7 +247,7 @@
   }
 }</pre>
 </blockquote>
-<p>The value of each<code> posix_errno</code> constant shall be the same as the
+<p>The value of each<code> errc_t</code> constant shall be the same as the
 value of the <code>&lt;cerrno&gt;</code> macro shown in the above synopsis.</p>
 <p>Users may specialize <code>is_error_code_enum</code> and <code>
 is_error_condition_enum</code> templates to indicate that a type is eligible for
@@ -290,10 +290,10 @@
     };
 
     const error_category &amp; get_system_category();
- const error_category &amp; get_posix_category();
+ const error_category &amp; get_generic_category();
 
     static const error_category &amp; system_category = get_system_category();
- static const error_category &amp; posix_category = get_posix_category();
+ static const error_category &amp; generic_category = get_generic_category();
   }
 }</pre>
 </blockquote>
@@ -316,7 +316,7 @@
   <p><i>Returns:</i>&nbsp; <code>error_condition( ev, *this )</code>.</p>
   <blockquote>
     <p>&nbsp;[<i>--Note:</i> Derived classes will typically convert <code>ev</code>
- to some portable <code>error_category</code>, such as <code>posix_category</code>,
+ to some portable <code>error_category</code>, such as <code>generic_category</code>,
     and return it as an <code>error_condition</code> for that category. <i>--end
     note</i>]</p>
   </blockquote>
@@ -361,7 +361,7 @@
   identifying errors originating from the operating system.</p>
   <p><i>Throws:</i> Nothing.</p>
 </blockquote>
-<pre>const error_category &amp; get_posix_category();</pre>
+<pre>const error_category &amp; get_generic_category();</pre>
 <blockquote>
   <p><i>Returns:</i> A reference to a <code>error_category</code> object
   identifying portable error conditions.</p>
@@ -370,7 +370,7 @@
 <h3><a name="Class-error_category-predefined-objects">Class <code>error_category</code>
 predefined objects</a></h3>
 <p>Predefined objects <code>system_category</code>
-and <code>posix_category</code> identify operating system error codes and portable error conditions, respectively.</p>
+and <code>generic_category</code> identify operating system error codes and portable error conditions, respectively.</p>
 <h2><a name="Class-error_code">Class <code>
 error_code</code></a></h2>
 <p>The class <code>error_code</code> describes an object used to hold error code
@@ -454,7 +454,7 @@
 </blockquote>
 <p><code>void clear();</code></p>
 <blockquote>
- <p><i>postcondition:</i> <code>value() == 0 &amp;&amp; category() == posix_category</code></p>
+ <p><i>postcondition:</i> <code>value() == 0 &amp;&amp; category() == generic_category</code></p>
 </blockquote>
   <h3><a name="Class-error_code-observers">Class <code>
 error_code</code> observers</a></h3>
@@ -538,7 +538,7 @@
 <pre>error_condition(); </pre>
 <blockquote>
   <p><i>Effects:</i> Constructs an object of type <code>error_condition</code>.</p>
- <p><i>Postconditions:</i> <code>val_ == 0 and cat_ == posix_category</code>.</p>
+ <p><i>Postconditions:</i> <code>val_ == 0 and cat_ == generic_category</code>.</p>
   <p><i>Throws:</i> Nothing.</p>
 </blockquote>
 <pre>error_condition( value_type val, const error_category &amp; cat );</pre>
@@ -571,7 +571,7 @@
 </blockquote>
 <p><code>void clear();</code></p>
 <blockquote>
- <p><i>postcondition:</i> <code>value() == 0 &amp;&amp; category() == posix_category</code></p>
+ <p><i>postcondition:</i> <code>value() == 0 &amp;&amp; category() == generic_category</code></p>
 </blockquote>
 <h3><a name="Class-error_condition-observers">Class <code>error_condition</code>
 observers</a></h3>
@@ -651,13 +651,13 @@
   &nbsp; || (lhs.category() == rhs.category() &amp;&amp; lhs.value() &lt; rhs.value())</code>.</p>
   <p><i>Throws: </i>Nothing.</p>
 </blockquote>
-<pre>error_code make_error_code( posix_error::posix_errno e );</pre>
+<pre>error_code make_error_code( errc::errc_t e );</pre>
 <blockquote>
- <p><i>Returns:</i> <code>error_code( e, posix_category)</code>.</p>
+ <p><i>Returns:</i> <code>error_code( e, generic_category)</code>.</p>
 </blockquote>
-<pre>error_condition make_error_condition( posix_error::posix_errno e );</pre>
+<pre>error_condition make_error_condition( errc::errc_t e );</pre>
 <blockquote>
- <p><i>Returns:</i> <code>error_condition( e, posix_category)</code>.</p>
+ <p><i>Returns:</i> <code>error_condition( e, generic_category)</code>.</p>
 </blockquote>
 
 <pre>template &lt;class charT, class traits&gt;
@@ -689,8 +689,11 @@
     {
     public:
       system_error( error_code ec );
+ system_error( error_code ec, const char * what_arg );
       system_error( error_code ec, const std::string &amp; what_arg );
       system_error( error_code::value_type ev, const error_category &amp; ecat,
+ const char * what_arg );
+ system_error( error_code::value_type ev, const error_category &amp; ecat,
                     const std::string &amp; what_arg );
       system_error( error_code::value_type ev, const error_category &amp; ecat);
 
@@ -706,6 +709,12 @@
   <p><i>Postcondition:</i> <code>code() == ec <br>
 &nbsp; &amp;&amp; std::strcmp( this-&gt;runtime_error::what(), &quot;&quot; ) == 0</code></p>
 </blockquote>
+<pre>system_error( error_code ec, const char * what_arg );</pre>
+<blockquote>
+ <p><i>Effects:</i> Constructs an object of class <code>system_error</code>.</p>
+ <p><i>Postcondition:</i> <code>code() == ec <br>
+&nbsp; &amp;&amp; std::strcmp( this-&gt;runtime_error::what(), what_arg ) == 0</code></p>
+</blockquote>
 <pre>system_error( error_code ec, const std::string &amp; what_arg );</pre>
 <blockquote>
   <p><i>Effects:</i> Constructs an object of class <code>system_error</code>.</p>
@@ -713,6 +722,13 @@
 &nbsp; &amp;&amp; std::strcmp( this-&gt;runtime_error::what(), what_arg.c_str() ) == 0</code></p>
 </blockquote>
 <pre>system_error( error_code::value_type ev, const error_category &amp; ecat,
+ const char * what_arg );</pre>
+<blockquote>
+ <p><i>Effects:</i> Constructs an object of class <code>system_error</code>.</p>
+ <p><i>Postcondition:</i> <code>code() == error_code( ev, ecat )<br>
+&nbsp; &amp;&amp; std::strcmp( this-&gt;runtime_error::what(), what_arg ) == 0</code></p>
+</blockquote>
+<pre>system_error( error_code::value_type ev, const error_category &amp; ecat,
              const std::string &amp; what_arg );</pre>
 <blockquote>
   <p><i>Effects:</i> Constructs an object of class <code>system_error</code>.</p>
@@ -743,7 +759,7 @@
 <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a></p>
 
 <p>Revised
-<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%B %d, %Y" startspan -->November 12, 2007<!--webbot bot="Timestamp" endspan i-checksum="39581" --> </font>
+<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%B %d, %Y" startspan -->June 25, 2008<!--webbot bot="Timestamp" endspan i-checksum="14296" --> </font>
 </p>
 
 </body>

Modified: branches/CMake/release/libs/system/src/error_code.cpp
==============================================================================
--- branches/CMake/release/libs/system/src/error_code.cpp (original)
+++ branches/CMake/release/libs/system/src/error_code.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,14 +9,7 @@
 
 //----------------------------------------------------------------------------//
 
-// VC++ 8.0 warns on usage of certain Standard Library and API functions that
-// can be cause buffer overruns or other possible security issues if misused.
-// See http://msdn.microsoft.com/msdnmag/issues/05/05/SafeCandC/default.aspx
-// But the wording of the warning is misleading and unsettling, there are no
-// portable alternative functions, and VC++ 8.0's own libraries use the
-// functions in question. So turn off the warnings.
-#define _CRT_SECURE_NO_DEPRECATE
-#define _SCL_SECURE_NO_DEPRECATE
+#include <boost/config/warning_disable.hpp>
 
 // define BOOST_SYSTEM_SOURCE so that <boost/system/config.hpp> knows
 // the library is being built (possibly exporting rather than importing code)
@@ -45,12 +38,12 @@
 
 namespace
 {
- // standard error categories -------------------------------------------//
+ // standard error categories ---------------------------------------------//
 
- class posix_error_category : public error_category
+ class generic_error_category : public error_category
   {
   public:
- posix_error_category(){}
+ generic_error_category(){}
     const char * name() const;
     std::string message( int ev ) const;
   };
@@ -64,14 +57,14 @@
     error_condition default_error_condition( int ev ) const;
   };
 
- // posix_error_category implementation ---------------------------------//
+ // generic_error_category implementation ---------------------------------//
 
- const char * posix_error_category::name() const
+ const char * generic_error_category::name() const
   {
- return "POSIX";
+ return "GENERIC";
   }
 
- std::string posix_error_category::message( int ev ) const
+ std::string generic_error_category::message( int ev ) const
   {
   // strerror_r is preferred because it is always thread safe,
   // however, we fallback to strerror in certain cases because:
@@ -325,7 +318,7 @@
 
   std::string system_error_category::message( int ev ) const
   {
- return posix_category.message( ev );
+ return generic_category.message( ev );
   }
 # else
 // TODO:
@@ -409,10 +402,10 @@
       return system_category_const;
     }
 
- BOOST_SYSTEM_DECL const error_category & get_posix_category()
+ BOOST_SYSTEM_DECL const error_category & get_generic_category()
     {
- static const posix_error_category posix_category_const;
- return posix_category_const;
+ static const generic_error_category generic_category_const;
+ return generic_category_const;
     }
 
   } // namespace system

Modified: branches/CMake/release/libs/system/test/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/system/test/Jamfile.v2 (original)
+++ branches/CMake/release/libs/system/test/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,31 +19,24 @@
            : # command line
            : # input files
            : # requirements
- <define>BOOST_SYSTEM_STATIC_LINK
                    <link>static
          ]
          [ run error_code_test.cpp
- : : : <define>BOOST_SYSTEM_DYN_LINK
- : error_code_test_dll
+ : : : : error_code_test_dll
          ]
          [ run error_code_user_test.cpp
- : : : <define>BOOST_SYSTEM_STATIC_LINK
- <link>static
+ : : : <link>static
          ]
          [ run error_code_user_test.cpp
- : : : <define>BOOST_SYSTEM_DYN_LINK
- : error_code_user_test_dll
+ : : : : error_code_user_test_dll
          ]
          [ run system_error_test.cpp
- : : : <define>BOOST_SYSTEM_STATIC_LINK
- <link>static
+ : : : <link>static
          ]
          [ run system_error_test.cpp
- : : : <define>BOOST_SYSTEM_DYN_LINK
- : system_error_test_dll
+ : : : : system_error_test_dll
          ]
          [ run initialization_test.cpp
- : : : <define>BOOST_SYSTEM_DYN_LINK
          ]
          [ run header_only_test.cpp
            : : : <link>static

Modified: branches/CMake/release/libs/system/test/error_code_test.cpp
==============================================================================
--- branches/CMake/release/libs/system/test/error_code_test.cpp (original)
+++ branches/CMake/release/libs/system/test/error_code_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,14 +9,7 @@
 
 //----------------------------------------------------------------------------//
 
-// VC++ 8.0 warns on usage of certain Standard Library and API functions that
-// can cause buffer overruns or other possible security issues if misused.
-// See http://msdn.microsoft.com/msdnmag/issues/05/05/SafeCandC/default.aspx
-// But the wording of the warning is misleading and unsettling, there are no
-// portable alternative functions, and VC++ 8.0's own libraries use the
-// functions in question. So turn off the warnings.
-#define _CRT_SECURE_NO_DEPRECATE
-#define _SCL_SECURE_NO_DEPRECATE
+#include <boost/config/warning_disable.hpp>
 
 #include <boost/test/minimal.hpp>
 #include <boost/system/error_code.hpp>

Modified: branches/CMake/release/libs/system/test/header_only_test.cpp
==============================================================================
--- branches/CMake/release/libs/system/test/header_only_test.cpp (original)
+++ branches/CMake/release/libs/system/test/header_only_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,14 +9,7 @@
 
 //----------------------------------------------------------------------------//
 
-// VC++ 8.0 warns on usage of certain Standard Library and API functions that
-// can cause buffer overruns or other possible security issues if misused.
-// See http://msdn.microsoft.com/msdnmag/issues/05/05/SafeCandC/default.aspx
-// But the wording of the warning is misleading and unsettling, there are no
-// portable altersystem functions, and VC++ 8.0's own libraries use the
-// functions in question. So turn off the warnings.
-#define _CRT_SECURE_NO_DEPRECATE
-#define _SCL_SECURE_NO_DEPRECATE
+#include <boost/config/warning_disable.hpp>
 
 #define BOOST_ERROR_CODE_HEADER_ONLY
 

Modified: branches/CMake/release/libs/system/test/system_error_test.cpp
==============================================================================
--- branches/CMake/release/libs/system/test/system_error_test.cpp (original)
+++ branches/CMake/release/libs/system/test/system_error_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,18 +9,12 @@
 
 //----------------------------------------------------------------------------//
 
-// VC++ 8.0 warns on usage of certain Standard Library and API functions that
-// can cause buffer overruns or other possible security issues if misused.
-// See http://msdn.microsoft.com/msdnmag/issues/05/05/SafeCandC/default.aspx
-// But the wording of the warning is misleading and unsettling, there are no
-// portable alternative functions, and VC++ 8.0's own libraries use the
-// functions in question. So turn off the warnings.
-#define _CRT_SECURE_NO_DEPRECATE
-#define _SCL_SECURE_NO_DEPRECATE
+#include <boost/config/warning_disable.hpp>
 
 #include <boost/test/minimal.hpp>
 #include <boost/system/system_error.hpp>
 #include <iostream>
+#include <string>
 
 #ifdef BOOST_WINDOWS_API
 #include <windows.h>
@@ -29,6 +23,7 @@
 using boost::system::system_error;
 using boost::system::error_code;
 using boost::system::system_category;
+using std::string;
 
 #define TEST(x,v,w) test(#x,x,v,w)
 
@@ -58,29 +53,52 @@
 # endif
   }
 
- const boost::uint_least32_t uvalue = 1u;
+ const boost::uint_least32_t uvalue = 2u;
 }
 
 int test_main( int, char *[] )
 {
- // all combinations of constructors:
+ // all constructors, in the same order as they appear in the header:
 
- system_error se_0_m( error_code(0, system_category), "se_0_m" );
- system_error se_1_m( 1, system_category, "se_1_m" );
- system_error se_0_nm( error_code(0, system_category), "" );
- system_error se_1_nm( 1, system_category, "" );
- system_error se_0_nmx( error_code(0, system_category), "" );
- system_error se_1_nmx( 1, system_category, "" );
- system_error se_1u_m( uvalue, system_category, "se_1u_m" );
-
- TEST( se_0_m, 0, "se_0_m" );
- TEST( se_1_m, 1, "se_1_m: Incorrect function" );
- TEST( se_0_nm, 0, "" );
- TEST( se_1_nm, 1, "Incorrect function" );
- TEST( se_0_nmx, 0, "" );
- TEST( se_1_nmx, 1, "Incorrect function" );
- TEST( se_1u_m, 1, "se_1u_m: Incorrect function" );
+ system_error c1_0( error_code(0, system_category) );
+ system_error c1_1( error_code(1, system_category) );
+ system_error c1_2u( error_code(uvalue, system_category) );
 
+ system_error c2_0( error_code(0, system_category), string("c2_0") );
+ system_error c2_1( error_code(1, system_category), string("c2_1") );
+
+ system_error c3_0( error_code(0, system_category), "c3_0" );
+ system_error c3_1( error_code(1, system_category), "c3_1" );
+
+ system_error c4_0( 0, system_category );
+ system_error c4_1( 1, system_category );
+ system_error c4_2u( uvalue, system_category );
+
+ system_error c5_0( 0, system_category, string("c5_0") );
+ system_error c5_1( 1, system_category, string("c5_1") );
+
+ system_error c6_0( 0, system_category, "c6_0" );
+ system_error c6_1( 1, system_category, "c6_1" );
+
+ TEST( c1_0, 0, "" );
+ TEST( c1_1, 1, "Incorrect function" );
+ TEST( c1_2u, 2, "The system cannot find the file specified" );
+
+ TEST( c2_0, 0, "c2_0" );
+ TEST( c2_1, 1, "c2_1: Incorrect function" );
+
+ TEST( c3_0, 0, "c3_0" );
+ TEST( c3_1, 1, "c3_1: Incorrect function" );
+
+ TEST( c4_0, 0, "" );
+ TEST( c4_1, 1, "Incorrect function" );
+ TEST( c4_2u, 2, "The system cannot find the file specified" );
+
+ TEST( c5_0, 0, "c5_0" );
+ TEST( c5_1, 1, "c5_1: Incorrect function" );
+
+ TEST( c6_0, 0, "c6_0" );
+ TEST( c6_1, 1, "c6_1: Incorrect function" );
 
   return 0;
 }

Modified: branches/CMake/release/libs/tr1/doc/tr1.qbk
==============================================================================
--- branches/CMake/release/libs/tr1/doc/tr1.qbk (original)
+++ branches/CMake/release/libs/tr1/doc/tr1.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,8 +5,7 @@
     [license
         Distributed under the Boost Software License, Version 1.0.
         (See accompanying file LICENSE_1_0.txt or copy at
- <ulink url="http://www.boost.org/LICENSE_1_0.txt">
- http://www.boost.org/LICENSE_1_0.txt>)]
+ [@
http://www.boost.org/LICENSE_1_0.txt])]
     [authors [Maddock, John]]
     [category misc]
     [last-revision $Date$]

Modified: branches/CMake/release/libs/tr1/test/Jamfile.v2
==============================================================================
--- branches/CMake/release/libs/tr1/test/Jamfile.v2 (original)
+++ branches/CMake/release/libs/tr1/test/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -46,13 +46,11 @@
    }
    for local file2 in [ glob config/tr1_has_tr1*fail.cpp ]
    {
- local test = [ compile-fail $(file2) ] ;
- all_rules += $(test) ;
+ all_rules += [ compile-fail $(file2) ] ;
    }
    for local filec in [ glob config/tr1_has_tr1*pass.cpp ]
    {
- local test = [ compile $(filec) ] ;
- all_rules += $(test) ;
+ all_rules += [ compile $(filec) ] ;
    }
    
    for local file3 in [ glob type_traits/*.cpp ]
@@ -73,6 +71,12 @@
       : $(file5:B)_std_header
       ] ;
    }
+ for local file6 in [ glob cyclic_depend/*.cpp ]
+ {
+ all_rules += [ compile $(file6)
+ : $(TR1_PROPERTIES)
+ ] ;
+ }
    #ECHO $(all_rules) ;
    return $(all_rules) ;
 }
@@ -88,3 +92,4 @@
 
 
 
+

Modified: branches/CMake/release/libs/type_traits/doc/function_traits.qbk
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/function_traits.qbk (original)
+++ branches/CMake/release/libs/type_traits/doc/function_traits.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,7 +8,7 @@
 [section:function_traits function_traits]
 [def __argN '''arg<replaceable>N</replaceable>_type''']
 
- template <class T>
+ template <class F>
    struct function_traits
    {
       static const std::size_t arity = __below;
@@ -19,7 +19,7 @@
 The class template function_traits will only compile if:
 
 * The compiler supports partial specialization of class templates.
-* The template argument `T` is a /function type/, note that this ['[*is not]]
+* The template argument `F` is a /function type/, note that this ['[*is not]]
 the same thing as a /pointer to a function/.
 
 [tip
@@ -30,11 +30,11 @@
 
 [table Function Traits Members
 [[Member] [Description]]
-[[`function_traits<T>::arity`]
+[[`function_traits<F>::arity`]
    [An integral constant expression that gives the number of arguments accepted by the function type `F`.]]
-[[`function_traits<T>::result_type`]
+[[`function_traits<F>::result_type`]
    [The type returned by function type `F`.]]
-[[`function_traits<T>::__argN`]
+[[`function_traits<F>::__argN`]
    [The '''<replaceable>N</replaceable>th''' argument type of function type `F`, where `1 <= N <= arity` of `F`.]]
 ]
 
@@ -47,7 +47,7 @@
 [[`function_traits<long (int)>::result_type`] [The type `long`.]]
 [[`function_traits<long (int)>::arg1_type`] [The type `int`.]]
 [[`function_traits<long (int, long, double, void*)>::arg4_type`] [The type `void*`.]]
-[[`function_traits<long (int, long, double, void*)>::arg5_type`] [A compiler error: there is no `arg4_type` since there are only three arguments.]]
+[[`function_traits<long (int, long, double, void*)>::arg5_type`] [A compiler error: there is no `arg5_type` since there are only four arguments.]]
 [[`function_traits<long (*)(void)>::arity`] [A compiler error: argument type is a /function pointer/, and not a /function type/.]]
 
 ]

Modified: branches/CMake/release/libs/type_traits/doc/has_virtual_destructor.qbk
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/has_virtual_destructor.qbk (original)
+++ branches/CMake/release/libs/type_traits/doc/has_virtual_destructor.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -18,7 +18,7 @@
 always inherits from __false_type, and has to be explicitly specialized for
 types with virtual destructors unless the compiler used has compiler __intrinsics
 that enable the trait to do the right thing: currently (May 2005) only Visual C++
-8 has the necessary __intrinsics.
+8 and GCC-4.3 have the necessary __intrinsics.
 
 __std_ref 12.4.
 

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/background.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/background.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/background.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Background and Tutorial</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="prev" href="intro.html" title="Introduction">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_typetraits.background"></a><a class="link" href="background.html" title="Background and Tutorial"> Background and Tutorial</a>
+<a name="boost_typetraits.background"></a> Background and Tutorial
 </h2></div></div></div>
 <p>
       The following is an updated version of the article "C++ Type traits"
@@ -56,19 +56,19 @@
       method available to them.
     </p>
 <a name="boost_typetraits.background.type_traits"></a><h5>
-<a name="id2586461"></a>
- <a class="link" href="background.html#boost_typetraits.background.type_traits">Type Traits</a>
+<a name="id446121"></a>
+ Type Traits
     </h5>
 <p>
       Class <code class="computeroutput"><span class="identifier">char_traits</span></code> is a classic
       example of a collection of type specific properties wrapped up in a single
- class - what Nathan Myers termed a <span class="emphasis"><em>baggage class</em></span><a class="link" href="background.html#background.references">[1]</a>. In the Boost type-traits library,
- we<a class="link" href="background.html#background.references">[2]</a> have written a set of very
+ class - what Nathan Myers termed a <span class="emphasis"><em>baggage class</em></span>[1]. In the Boost type-traits library,
+ we[2] have written a set of very
       specific traits classes, each of which encapsulate a single trait from the
       C++ type system; for example, is a type a pointer or a reference type? Or does
       a type have a trivial constructor, or a const-qualifier? The type-traits classes
- share a unified design: each class inherits from a the type <a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a>
- if the type has the specified property and inherits from <a class="link" href="reference/integral_constant.html" title="integral_constant">false_type</a>
+ share a unified design: each class inherits from a the type true_type
+ if the type has the specified property and inherits from false_type
       otherwise. As we will show, these classes can be used in generic programming
       to determine the properties of a given type and introduce optimizations that
       are appropriate for that case.
@@ -84,8 +84,8 @@
       given.
     </p>
 <a name="boost_typetraits.background.implementation"></a><h5>
-<a name="id2585291"></a>
- <a class="link" href="background.html#boost_typetraits.background.implementation">Implementation</a>
+<a name="id446232"></a>
+ Implementation
     </h5>
 <p>
       There are far too many separate classes contained in the type-traits library
@@ -94,18 +94,17 @@
       anyway, so here we will just give you a flavor for how some of the classes
       are implemented. Beginning with possibly the simplest class in the library,
       <code class="computeroutput"><span class="identifier">is_void</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span></code> inherits
- from <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a></code>
+ from <code class="computeroutput">true_type</code>
       only if <code class="computeroutput"><span class="identifier">T</span></code> is <code class="computeroutput"><span class="keyword">void</span></code>.
     </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="reference/is_void.html" title="is_void">is_void</a> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="reference/integral_constant.html" title="integral_constant">false_type</a><span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> is_void <span class="special">:</span> <span class="keyword">public</span> false_type<span class="special">{};</span>
 
 <span class="keyword">template</span> <span class="special">&lt;&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="reference/is_void.html" title="is_void">is_void</a><span class="special">&lt;</span><span class="keyword">void</span><span class="special">&gt;</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a><span class="special">{};</span>
+<span class="keyword">struct</span> is_void<span class="special">&lt;</span><span class="keyword">void</span><span class="special">&gt;</span> <span class="special">:</span> <span class="keyword">public</span> true_type<span class="special">{};</span>
 </pre>
 <p>
- Here we define a primary version of the template class <code class="computeroutput"><a class="link" href="reference/is_void.html" title="is_void">is_void</a></code>,
+ Here we define a primary version of the template class <code class="computeroutput">is_void</code>,
       and provide a full-specialization when <code class="computeroutput"><span class="identifier">T</span></code>
       is <code class="computeroutput"><span class="keyword">void</span></code>. While full specialization
       of a template class is an important technique, sometimes we need a solution
@@ -116,12 +115,11 @@
       a pointer, and a partial specialization to handle all the cases where T is
       a pointer:
     </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="reference/is_pointer.html" title="is_pointer">is_pointer</a> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="reference/integral_constant.html" title="integral_constant">false_type</a><span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> is_pointer <span class="special">:</span> <span class="keyword">public</span> false_type<span class="special">{};</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="reference/is_pointer.html" title="is_pointer">is_pointer</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">*&gt;</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a><span class="special">{};</span>
+<span class="keyword">struct</span> is_pointer<span class="special">&lt;</span><span class="identifier">T</span><span class="special">*&gt;</span> <span class="special">:</span> <span class="keyword">public</span> true_type<span class="special">{};</span>
 </pre>
 <p>
       The syntax for partial specialization is somewhat arcane and could easily occupy
@@ -134,15 +132,13 @@
       but as a rule of thumb if you can legally write two function overloads of the
       form:
     </p>
-<pre class="programlisting">
-<span class="keyword">void</span> <span class="identifier">foo</span><span class="special">(</span><span class="identifier">T</span><span class="special">);</span>
+<pre class="programlisting"><span class="keyword">void</span> <span class="identifier">foo</span><span class="special">(</span><span class="identifier">T</span><span class="special">);</span>
 <span class="keyword">void</span> <span class="identifier">foo</span><span class="special">(</span><span class="identifier">U</span><span class="special">);</span>
 </pre>
 <p>
       Then you can also write a partial specialization of the form:
     </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">class</span> <span class="identifier">c</span><span class="special">{</span> <span class="comment">/*details*/</span> <span class="special">};</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
@@ -158,19 +154,18 @@
       that is the same type as T but with any top-level array bounds removed; this
       is an example of a traits class that performs a transformation on a type:
     </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="reference/remove_extent.html" title="remove_extent">remove_extent</a>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> remove_extent
 <span class="special">{</span> <span class="keyword">typedef</span> <span class="identifier">T</span> <span class="identifier">type</span><span class="special">;</span> <span class="special">};</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="reference/remove_extent.html" title="remove_extent">remove_extent</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">[</span><span class="identifier">N</span><span class="special">]&gt;</span>
+<span class="keyword">struct</span> remove_extent<span class="special">&lt;</span><span class="identifier">T</span><span class="special">[</span><span class="identifier">N</span><span class="special">]&gt;</span>
 <span class="special">{</span> <span class="keyword">typedef</span> <span class="identifier">T</span> <span class="identifier">type</span><span class="special">;</span> <span class="special">};</span>
 </pre>
 <p>
- The aim of <code class="computeroutput"><a class="link" href="reference/remove_extent.html" title="remove_extent">remove_extent</a></code>
+ The aim of <code class="computeroutput">remove_extent</code>
       is this: imagine a generic algorithm that is passed an array type as a template
- parameter, <code class="computeroutput"><a class="link" href="reference/remove_extent.html" title="remove_extent">remove_extent</a></code>
+ parameter, <code class="computeroutput">remove_extent</code>
       provides a means of determining the underlying type of the array. For example
       <code class="computeroutput"><span class="identifier">remove_extent</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">[</span><span class="number">4</span><span class="special">][</span><span class="number">5</span><span class="special">]&gt;::</span><span class="identifier">type</span></code> would evaluate to the type <code class="computeroutput"><span class="keyword">int</span><span class="special">[</span><span class="number">5</span><span class="special">]</span></code>. This example also shows that the number of
       template parameters in a partial specialization does not have to match the
@@ -179,15 +174,14 @@
       in the default template.
     </p>
 <a name="boost_typetraits.background.optimized_copy"></a><h5>
-<a name="id2636072"></a>
- <a class="link" href="background.html#boost_typetraits.background.optimized_copy">Optimized copy</a>
+<a name="id500131"></a>
+ Optimized copy
     </h5>
 <p>
       As an example of how the type traits classes can be used, consider the standard
       library algorithm copy:
     </p>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Iter1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Iter2</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Iter1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Iter2</span><span class="special">&gt;</span>
 <span class="identifier">Iter2</span> <span class="identifier">copy</span><span class="special">(</span><span class="identifier">Iter1</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">Iter1</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">Iter2</span> <span class="identifier">out</span><span class="special">);</span>
 </pre>
 <p>
@@ -214,7 +208,7 @@
       </li>
 </ul></div>
 <p>
- By trivial assignment operator we mean that the type is either a scalar type<a class="link" href="background.html#background.references">[3]</a> or:
+ By trivial assignment operator we mean that the type is either a scalar type[3] or:
     </p>
 <div class="itemizedlist"><ul type="disc">
 <li>
@@ -230,20 +224,20 @@
 </ul></div>
 <p>
       If all these conditions are met then a type can be copied using <code class="computeroutput"><span class="identifier">memcpy</span></code> rather than using a compiler generated
- assignment operator. The type-traits library provides a class <code class="computeroutput"><a class="link" href="reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a></code>,
+ assignment operator. The type-traits library provides a class <code class="computeroutput">has_trivial_assign</code>,
       such that <code class="computeroutput"><span class="identifier">has_trivial_assign</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span></code> is true only if T has a trivial assignment
       operator. This class "just works" for scalar types, but has to be
       explicitly specialised for class/struct types that also happen to have a trivial
- assignment operator. In other words if <a class="link" href="reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a>
+ assignment operator. In other words if has_trivial_assign
       gives the wrong answer, it will give the "safe" wrong answer - that
       trivial assignment is not allowable.
     </p>
 <p>
       The code for an optimized version of copy that uses <code class="computeroutput"><span class="identifier">memcpy</span></code>
- where appropriate is given in <a class="link" href="examples/copy.html" title="An Optimized Version of std::copy">the
+ where appropriate is given in <a href="examples/copy.html" title="An Optimized Version of std::copy">the
       examples</a>. The code begins by defining a template function <code class="computeroutput"><span class="identifier">do_copy</span></code> that performs a "slow but safe"
- copy. The last parameter passed to this function may be either a <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a></code>
- or a <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">false_type</a></code>.
+ copy. The last parameter passed to this function may be either a <code class="computeroutput">true_type</code>
+ or a <code class="computeroutput">false_type</code>.
       Following that there is an overload of do<span class="underline">copy that
       uses `memcpy`: this time the iterators are required to actually be pointers
       to the same type, and the final parameter must be a `</span>_true_type<code class="computeroutput"><span class="special">.</span> <span class="identifier">Finally</span><span class="special">,</span> <span class="identifier">the</span> <span class="identifier">version</span>
@@ -253,15 +247,15 @@
       otherwise it will call the "slow but safe version".
     </p>
 <a name="boost_typetraits.background.was_it_worth_it_"></a><h5>
-<a name="id2636516"></a>
- <a class="link" href="background.html#boost_typetraits.background.was_it_worth_it_">Was it worth it?</a>
+<a name="id500676"></a>
+ Was it worth it?
     </h5>
 <p>
       It has often been repeated in these columns that "premature optimization
- is the root of all evil" <a class="link" href="background.html#background.references">[4]</a>.
+ is the root of all evil" [4].
       So the question must be asked: was our optimization premature? To put this
       in perspective the timings for our version of copy compared a conventional
- generic copy<a class="link" href="background.html#background.references">[5]</a> are shown in table
+ generic copy[5] are shown in table
       1.
     </p>
 <p>
@@ -286,7 +280,7 @@
       </li>
 </ul></div>
 <div class="table">
-<a name="id2636577"></a><p class="title"><b>Table 1.1. Time taken to copy 1000 elements using `copy&lt;const
+<a name="id500747"></a><p class="title"><b>Table 1.1. Time taken to copy 1000 elements using `copy&lt;const
     T*, T*&gt;` (times in micro-seconds)</b></p>
 <div class="table-contents"><table class="table" summary="Time taken to copy 1000 elements using `copy&lt;const
     T*, T*&gt;` (times in micro-seconds)">
@@ -385,8 +379,8 @@
 </table></div>
 </div>
 <br class="table-break"><a name="boost_typetraits.background.pair_of_references"></a><h5>
-<a name="id2636715"></a>
- <a class="link" href="background.html#boost_typetraits.background.pair_of_references">Pair of References</a>
+<a name="id500903"></a>
+ Pair of References
     </h5>
 <p>
       The optimized copy example shows how type traits may be used to perform optimization
@@ -394,15 +388,14 @@
       code to compile that otherwise would not do so unless excessive partial specialization
       is used. This is possible by delegating partial specialization to the type
       traits classes. Our example for this form of usage is a pair that can hold
- references <a class="link" href="background.html#background.references">[6]</a>.
+ references [6].
     </p>
 <p>
       First, let us examine the definition of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code>, omitting
       the comparison operators, default constructor, and template copy constructor
       for simplicity:
     </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">pair</span>
 <span class="special">{</span>
 <span class="keyword">typedef</span> <span class="identifier">T1</span> <span class="identifier">first_type</span><span class="special">;</span>
@@ -418,12 +411,12 @@
 <p>
       Now, this "pair" cannot hold references as it currently stands, because
       the constructor would require taking a reference to a reference, which is currently
- illegal <a class="link" href="background.html#background.references">[7]</a>. Let us consider what
+ illegal [7]. Let us consider what
       the constructor's parameters would have to be in order to allow "pair"
       to hold non-reference types, references, and constant references:
     </p>
 <div class="table">
-<a name="id2637023"></a><p class="title"><b>Table 1.2. Required Constructor Argument Types</b></p>
+<a name="id501265"></a><p class="title"><b>Table 1.2. Required Constructor Argument Types</b></p>
 <div class="table-contents"><table class="table" summary="Required Constructor Argument Types">
 <colgroup>
 <col>
@@ -484,11 +477,11 @@
 <br class="table-break"><p>
       A little familiarity with the type traits classes allows us to construct a
       single mapping that allows us to determine the type of parameter from the type
- of the contained class. The type traits classes provide a transformation <a class="link" href="reference/add_reference.html" title="add_reference">add_reference</a>, which
+ of the contained class. The type traits classes provide a transformation add_reference, which
       adds a reference to its type, unless it is already a reference.
     </p>
 <div class="table">
-<a name="id2637134"></a><p class="title"><b>Table 1.3. Using add_reference to synthesize the correct constructor
+<a name="id501390"></a><p class="title"><b>Table 1.3. Using add_reference to synthesize the correct constructor
     type</b></p>
 <div class="table-contents"><table class="table" summary="Using add_reference to synthesize the correct constructor
     type">
@@ -574,8 +567,7 @@
       that can contain non-reference types, reference types, and constant reference
       types:
     </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">pair</span>
 <span class="special">{</span>
 <span class="keyword">typedef</span> <span class="identifier">T1</span> <span class="identifier">first_type</span><span class="special">;</span>
@@ -584,8 +576,8 @@
 <span class="identifier">T1</span> <span class="identifier">first</span><span class="special">;</span>
 <span class="identifier">T2</span> <span class="identifier">second</span><span class="special">;</span>
 
-<span class="identifier">pair</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><a class="link" href="reference/add_reference.html" title="add_reference">add_reference</a><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">T1</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nfirst</span><span class="special">,</span>
- <span class="identifier">boost</span><span class="special">::</span><a class="link" href="reference/add_reference.html" title="add_reference">add_reference</a><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">T2</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nsecond</span><span class="special">)</span>
+<span class="identifier">pair</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span>add_reference<span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">T1</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nfirst</span><span class="special">,</span>
+ <span class="identifier">boost</span><span class="special">::</span>add_reference<span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">T2</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nsecond</span><span class="special">)</span>
 <span class="special">:</span><span class="identifier">first</span><span class="special">(</span><span class="identifier">nfirst</span><span class="special">),</span> <span class="identifier">second</span><span class="special">(</span><span class="identifier">nsecond</span><span class="special">)</span> <span class="special">{</span> <span class="special">}</span>
 <span class="special">};</span>
 </pre>
@@ -606,8 +598,8 @@
       easier to maintain and easier to understand.
     </p>
 <a name="boost_typetraits.background.conclusion"></a><h5>
-<a name="id2637656"></a>
- <a class="link" href="background.html#boost_typetraits.background.conclusion">Conclusion</a>
+<a name="id502012"></a>
+ Conclusion
     </h5>
 <p>
       We hope that in this article we have been able to give you some idea of what
@@ -619,16 +611,16 @@
       can be optimal as well as generic.
     </p>
 <a name="boost_typetraits.background.acknowledgements"></a><h5>
-<a name="id2637697"></a>
- <a class="link" href="background.html#boost_typetraits.background.acknowledgements">Acknowledgements</a>
+<a name="id502058"></a>
+ Acknowledgements
     </h5>
 <p>
       The authors would like to thank Beman Dawes and Howard Hinnant for their helpful
       comments when preparing this article.
     </p>
 <a name="background.references"></a><a name="boost_typetraits.background.references"></a><h5>
-<a name="id2637724"></a>
- <a class="link" href="background.html#boost_typetraits.background.references">References</a>
+<a name="id502092"></a>
+ References
     </h5>
 <div class="orderedlist"><ol type="1">
 <li>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Type Traits by Category</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="prev" href="background.html" title="Background and Tutorial">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_typetraits.category"></a><a class="link" href="category.html" title="Type Traits by Category"> Type Traits by Category</a>
+<a name="boost_typetraits.category"></a> Type Traits by Category
 </h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"><a href="category/value_traits.html"> Type Traits

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/alignment.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/alignment.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/alignment.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Synthesizing Types with Specific Alignments</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../category.html" title="Type Traits by Category">
 <link rel="prev" href="transform.html" title="Type Traits that Transform One Type to Another">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,24 +24,23 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.category.alignment"></a><a class="link" href="alignment.html" title="Synthesizing Types with Specific Alignments"> Synthesizing Types
+<a name="boost_typetraits.category.alignment"></a><a href="alignment.html" title="Synthesizing Types with Specific Alignments"> Synthesizing Types
       with Specific Alignments</a>
 </h3></div></div></div>
 <p>
         Some low level memory management routines need to synthesize a POD type with
- specific alignment properties. The template <code class="computeroutput"><a class="link" href="../reference/type_with_alignment.html" title="type_with_alignment">type_with_alignment</a></code>
- finds the smallest type with a specified alignment, while template <code class="computeroutput"><a class="link" href="../reference/aligned_storage.html" title="aligned_storage">aligned_storage</a></code>
+ specific alignment properties. The template <code class="computeroutput">type_with_alignment</code>
+ finds the smallest type with a specified alignment, while template <code class="computeroutput">aligned_storage</code>
         creates a type with a specific size and alignment.
       </p>
 <p>
         <span class="bold"><strong>Synopsis</strong></span>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Align</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/type_with_alignment.html" title="type_with_alignment">type_with_alignment</a><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Align</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> type_with_alignment<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Size</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Align</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/aligned_storage.html" title="aligned_storage">aligned_storage</a><span class="special">;</span>
+<span class="keyword">struct</span> aligned_storage<span class="special">;</span>
 </pre>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/function.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/function.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/function.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Decomposing Function Types</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../category.html" title="Type Traits by Category">
 <link rel="prev" href="alignment.html" title="Synthesizing Types with Specific Alignments">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,21 +24,20 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.category.function"></a><a class="link" href="function.html" title="Decomposing Function Types"> Decomposing Function
+<a name="boost_typetraits.category.function"></a><a href="function.html" title="Decomposing Function Types"> Decomposing Function
       Types</a>
 </h3></div></div></div>
 <p>
- The class template <a class="link" href="../reference/function_traits.html" title="function_traits">function_traits</a>
- extracts information from function types (see also <a class="link" href="../reference/is_function.html" title="is_function">is_function</a>).
+ The class template function_traits
+ extracts information from function types (see also is_function).
         This traits class allows you to tell how many arguments a function takes,
         what those argument types are, and what the return type is.
       </p>
 <p>
         <span class="bold"><strong>Synopsis</strong></span>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Align</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/function_traits.html" title="function_traits">function_traits</a><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Align</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> function_traits<span class="special">;</span>
 </pre>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/transform.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/transform.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/transform.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Type Traits that Transform One Type to Another</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../category.html" title="Type Traits by Category">
 <link rel="prev" href="value_traits/relate.html" title="Relationships Between Two Types">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.category.transform"></a><a class="link" href="transform.html" title="Type Traits that Transform One Type to Another"> Type Traits that
+<a name="boost_typetraits.category.transform"></a><a href="transform.html" title="Type Traits that Transform One Type to Another"> Type Traits that
       Transform One Type to Another</a>
 </h3></div></div></div>
 <p>
@@ -36,64 +36,63 @@
 <p>
         <span class="bold"><strong>Synopsis:</strong></span>
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/add_const.html" title="add_const">add_const</a><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> add_const<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/add_cv.html" title="add_cv">add_cv</a><span class="special">;</span>
+<span class="keyword">struct</span> add_cv<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/add_pointer.html" title="add_pointer">add_pointer</a><span class="special">;</span>
+<span class="keyword">struct</span> add_pointer<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/add_reference.html" title="add_reference">add_reference</a><span class="special">;</span>
+<span class="keyword">struct</span> add_reference<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/add_volatile.html" title="add_volatile">add_volatile</a><span class="special">;</span>
+<span class="keyword">struct</span> add_volatile<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/decay.html" title="decay">decay</a><span class="special">;</span>
+<span class="keyword">struct</span> decay<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/floating_point_promotion.html" title="floating_point_promotion">floating_point_promotion</a><span class="special">;</span>
+<span class="keyword">struct</span> floating_point_promotion<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/integral_promotion.html" title="integral_promotion">integral_promotion</a><span class="special">;</span>
+<span class="keyword">struct</span> integral_promotion<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/make_signed.html" title="make_signed">make_signed</a><span class="special">;</span>
+<span class="keyword">struct</span> make_signed<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/make_unsigned.html" title="make_unsigned">make_unsigned</a><span class="special">;</span>
+<span class="keyword">struct</span> make_unsigned<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/promote.html" title="promote">promote</a><span class="special">;</span>
+<span class="keyword">struct</span> promote<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/remove_all_extents.html" title="remove_all_extents">remove_all_extents</a><span class="special">;</span>
+<span class="keyword">struct</span> remove_all_extents<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/remove_const.html" title="remove_const">remove_const</a><span class="special">;</span>
+<span class="keyword">struct</span> remove_const<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/remove_cv.html" title="remove_cv">remove_cv</a><span class="special">;</span>
+<span class="keyword">struct</span> remove_cv<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/remove_extent.html" title="remove_extent">remove_extent</a><span class="special">;</span>
+<span class="keyword">struct</span> remove_extent<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/remove_pointer.html" title="remove_pointer">remove_pointer</a><span class="special">;</span>
+<span class="keyword">struct</span> remove_pointer<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/remove_reference.html" title="remove_reference">remove_reference</a><span class="special">;</span>
+<span class="keyword">struct</span> remove_reference<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../reference/remove_volatile.html" title="remove_volatile">remove_volatile</a><span class="special">;</span>
+<span class="keyword">struct</span> remove_volatile<span class="special">;</span>
 </pre>
 <a name="boost_typetraits.category.transform.broken_compiler_workarounds_"></a><h5>
-<a name="id2640926"></a>
- <a class="link" href="transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">Broken
+<a name="id506039"></a>
+ <a href="transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">Broken
         Compiler Workarounds:</a>
       </h5>
 <p>
@@ -117,8 +116,7 @@
 <p>
         The first part guarantees the successful compilation of something like this:
       </p>
-<pre class="programlisting">
-<span class="identifier">BOOST_STATIC_ASSERT</span><span class="special">((</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">));</span>
+<pre class="programlisting"><span class="identifier">BOOST_STATIC_ASSERT</span><span class="special">((</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">));</span>
 <span class="identifier">BOOST_STATIC_ASSERT</span><span class="special">((</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="keyword">char</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="keyword">char</span> <span class="keyword">const</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">));</span>
 <span class="identifier">BOOST_STATIC_ASSERT</span><span class="special">((</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="keyword">char</span> <span class="keyword">volatile</span><span class="special">,</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="keyword">char</span> <span class="keyword">volatile</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">));</span>
 <span class="identifier">BOOST_STATIC_ASSERT</span><span class="special">((</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="keyword">char</span> <span class="keyword">const</span> <span class="keyword">volatile</span><span class="special">,</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="keyword">char</span> <span class="keyword">const</span> <span class="keyword">volatile</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">));</span>
@@ -133,8 +131,7 @@
         <code class="computeroutput"><span class="keyword">int</span></code> or other built-in type,
         but for their own types as well:
       </p>
-<pre class="programlisting">
-<span class="keyword">namespace</span> <span class="identifier">myspace</span><span class="special">{</span>
+<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">myspace</span><span class="special">{</span>
    <span class="keyword">struct</span> <span class="identifier">MyClass</span> <span class="special">{};</span>
 <span class="special">}</span>
 <span class="comment">// declare this at global scope:

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Type Traits that Describe the Properties of a Type</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../category.html" title="Type Traits by Category">
 <link rel="prev" href="../category.html" title="Type Traits by Category">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.category.value_traits"></a><a class="link" href="value_traits.html" title="Type Traits that Describe the Properties of a Type"> Type Traits
+<a name="boost_typetraits.category.value_traits"></a><a href="value_traits.html" title="Type Traits that Describe the Properties of a Type"> Type Traits
       that Describe the Properties of a Type</a>
 </h3></div></div></div>
 <div class="toc"><dl>
@@ -37,13 +37,13 @@
 </dl></div>
 <p>
         These traits are all <span class="emphasis"><em>value traits</em></span>, which is to say the
- traits classes all inherit from <a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a>,
+ traits classes all inherit from integral_constant,
         and are used to access some numerical property of a type. Often this is a
         simple true or false Boolean value, but in a few cases may be some other
         integer value (for example when dealing with type alignments, or array bounds:
- see <code class="computeroutput"><a class="link" href="../reference/alignment_of.html" title="alignment_of">alignment_of</a></code>,
- <code class="computeroutput"><a class="link" href="../reference/rank.html" title="rank">rank</a></code>
- and <code class="computeroutput"><a class="link" href="../reference/extent.html" title="extent">extent</a></code>).
+ see <code class="computeroutput">alignment_of</code>,
+ <code class="computeroutput">rank</code>
+ and <code class="computeroutput">extent</code>).
       </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/primary.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/primary.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/primary.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Categorizing a Type</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../value_traits.html" title="Type Traits that Describe the Properties of a Type">
 <link rel="prev" href="../value_traits.html" title="Type Traits that Describe the Properties of a Type">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_typetraits.category.value_traits.primary"></a><a class="link" href="primary.html" title="Categorizing a Type"> Categorizing
+<a name="boost_typetraits.category.value_traits.primary"></a><a href="primary.html" title="Categorizing a Type"> Categorizing
         a Type</a>
 </h4></div></div></div>
 <p>
@@ -33,13 +33,13 @@
           are compositions of one or more primary traits.
         </p>
 <p>
- For any given type, exactly one primary type trait will inherit from <a class="link" href="../../reference/integral_constant.html" title="integral_constant">true_type</a>,
- and all the others will inherit from <a class="link" href="../../reference/integral_constant.html" title="integral_constant">false_type</a>,
+ For any given type, exactly one primary type trait will inherit from true_type,
+ and all the others will inherit from false_type,
           in other words these traits are mutually exclusive.
         </p>
 <p>
- This means that <code class="computeroutput"><a class="link" href="../../reference/is_integral.html" title="is_integral">is_integral</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span></code>
- and <code class="computeroutput"><a class="link" href="../../reference/is_floating_point.html" title="is_floating_point">is_floating_point</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span></code>
+ This means that <code class="computeroutput">is_integral<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span></code>
+ and <code class="computeroutput">is_floating_point<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span></code>
           will only ever be true for built-in types; if you want to check for a user-defined
           class type that behaves "as if" it is an integral or floating
           point type, then use the <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span>
@@ -48,69 +48,67 @@
 <p>
           <span class="bold"><strong>Synopsis:</strong></span>
         </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_array.html" title="is_array">is_array</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> is_array<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
   
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_class.html" title="is_class">is_class</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_class<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_complex.html" title="is_complex">is_complex</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_complex<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
   
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_enum.html" title="is_enum">is_enum</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_enum<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
   
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_floating_point.html" title="is_floating_point">is_floating_point</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_floating_point<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
   
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_function.html" title="is_function">is_function</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_function<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_integral.html" title="is_integral">is_integral</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_integral<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
   
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_member_function_pointer.html" title="is_member_function_pointer">is_member_function_pointer</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_member_function_pointer<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
   
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_member_object_pointer.html" title="is_member_object_pointer">is_member_object_pointer</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_member_object_pointer<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
   
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_pointer.html" title="is_pointer">is_pointer</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_pointer<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
   
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_reference.html" title="is_reference">is_reference</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_reference<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
   
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_union.html" title="is_union">is_union</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_union<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
   
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_void.html" title="is_void">is_void</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
+<span class="keyword">struct</span> is_void<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;;</span>
 </pre>
 <p>
           The following traits are made up of the union of one or more type categorizations.
           A type may belong to more than one of these categories, in addition to
           one of the primary categories.
         </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_arithmetic.html" title="is_arithmetic">is_arithmetic</a><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> is_arithmetic<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_compound.html" title="is_compound">is_compound</a><span class="special">;</span>
+<span class="keyword">struct</span> is_compound<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_fundamental.html" title="is_fundamental">is_fundamental</a><span class="special">;</span>
+<span class="keyword">struct</span> is_fundamental<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_member_pointer.html" title="is_member_pointer">is_member_pointer</a><span class="special">;</span>
+<span class="keyword">struct</span> is_member_pointer<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_object.html" title="is_object">is_object</a><span class="special">;</span>
+<span class="keyword">struct</span> is_object<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_scalar.html" title="is_scalar">is_scalar</a><span class="special">;</span>
+<span class="keyword">struct</span> is_scalar<span class="special">;</span>
 </pre>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/properties.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/properties.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/properties.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>General Type Properties</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../value_traits.html" title="Type Traits that Describe the Properties of a Type">
 <link rel="prev" href="primary.html" title="Categorizing a Type">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_typetraits.category.value_traits.properties"></a><a class="link" href="properties.html" title="General Type Properties">
+<a name="boost_typetraits.category.value_traits.properties"></a><a href="properties.html" title="General Type Properties">
         General Type Properties</a>
 </h4></div></div></div>
 <p>
@@ -33,78 +33,77 @@
 <p>
           <span class="bold"><strong>Synopsis:</strong></span>
         </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/alignment_of.html" title="alignment_of">alignment_of</a><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> alignment_of<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_nothrow_assign.html" title="has_nothrow_assign">has_nothrow_assign</a><span class="special">;</span>
+<span class="keyword">struct</span> has_nothrow_assign<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_nothrow_constructor.html" title="has_nothrow_constructor">has_nothrow_constructor</a><span class="special">;</span>
+<span class="keyword">struct</span> has_nothrow_constructor<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_nothrow_constructor.html" title="has_nothrow_constructor">has_nothrow_default_constructor</a><span class="special">;</span>
+<span class="keyword">struct</span> has_nothrow_default_constructor<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_nothrow_copy.html" title="has_nothrow_copy">has_nothrow_copy</a><span class="special">;</span>
+<span class="keyword">struct</span> has_nothrow_copy<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_nothrow_copy.html" title="has_nothrow_copy">has_nothrow_copy_constructor</a><span class="special">;</span>
+<span class="keyword">struct</span> has_nothrow_copy_constructor<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a><span class="special">;</span>
+<span class="keyword">struct</span> has_trivial_assign<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_trivial_constructor.html" title="has_trivial_constructor">has_trivial_constructor</a><span class="special">;</span>
+<span class="keyword">struct</span> has_trivial_constructor<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_trivial_constructor.html" title="has_trivial_constructor">has_trivial_default_constructor</a><span class="special">;</span>
+<span class="keyword">struct</span> has_trivial_default_constructor<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_trivial_copy.html" title="has_trivial_copy">has_trivial_copy</a><span class="special">;</span>
+<span class="keyword">struct</span> has_trivial_copy<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_trivial_copy.html" title="has_trivial_copy">has_trivial_copy_constructor</a><span class="special">;</span>
+<span class="keyword">struct</span> has_trivial_copy_constructor<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_trivial_destructor.html" title="has_trivial_destructor">has_trivial_destructor</a><span class="special">;</span>
+<span class="keyword">struct</span> has_trivial_destructor<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/has_virtual_destructor.html" title="has_virtual_destructor">has_virtual_destructor</a><span class="special">;</span>
+<span class="keyword">struct</span> has_virtual_destructor<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_abstract.html" title="is_abstract">is_abstract</a><span class="special">;</span>
+<span class="keyword">struct</span> is_abstract<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_const.html" title="is_const">is_const</a><span class="special">;</span>
+<span class="keyword">struct</span> is_const<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_empty.html" title="is_empty">is_empty</a><span class="special">;</span>
+<span class="keyword">struct</span> is_empty<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_stateless.html" title="is_stateless">is_stateless</a><span class="special">;</span>
+<span class="keyword">struct</span> is_stateless<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_pod.html" title="is_pod">is_pod</a><span class="special">;</span>
+<span class="keyword">struct</span> is_pod<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_polymorphic.html" title="is_polymorphic">is_polymorphic</a><span class="special">;</span>
+<span class="keyword">struct</span> is_polymorphic<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_signed.html" title="is_signed">is_signed</a><span class="special">;</span>
+<span class="keyword">struct</span> is_signed<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_unsigned.html" title="is_unsigned">is_unsigned</a><span class="special">;</span>
+<span class="keyword">struct</span> is_unsigned<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_volatile.html" title="is_volatile">is_volatile</a><span class="special">;</span>
+<span class="keyword">struct</span> is_volatile<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span> <span class="special">=</span> <span class="number">0</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/extent.html" title="extent">extent</a><span class="special">;</span>
+<span class="keyword">struct</span> extent<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/rank.html" title="rank">rank</a><span class="special">;</span>
+<span class="keyword">struct</span> rank<span class="special">;</span>
 </pre>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/relate.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/relate.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/category/value_traits/relate.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Relationships Between Two Types</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../value_traits.html" title="Type Traits that Describe the Properties of a Type">
 <link rel="prev" href="properties.html" title="General Type Properties">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="boost_typetraits.category.value_traits.relate"></a><a class="link" href="relate.html" title="Relationships Between Two Types"> Relationships
+<a name="boost_typetraits.category.value_traits.relate"></a><a href="relate.html" title="Relationships Between Two Types"> Relationships
         Between Two Types</a>
 </h4></div></div></div>
 <p>
@@ -34,15 +34,14 @@
 <p>
           <span class="bold"><strong>Synopsis:</strong></span>
         </p>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Base</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Derived</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_base_of.html" title="is_base_of">is_base_of</a><span class="special">;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Base</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Derived</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> is_base_of<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">From</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">To</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_convertible.html" title="is_convertible">is_convertible</a><span class="special">;</span>
+<span class="keyword">struct</span> is_convertible<span class="special">;</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">U</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <a class="link" href="../../reference/is_same.html" title="is_same">is_same</a><span class="special">;</span>
+<span class="keyword">struct</span> is_same<span class="special">;</span>
 </pre>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/credits.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/credits.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/credits.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Credits</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="prev" href="reference/type_with_alignment.html" title="type_with_alignment">
@@ -13,8 +13,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -23,7 +23,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_typetraits.credits"></a><a class="link" href="credits.html" title="Credits"> Credits</a>
+<a name="boost_typetraits.credits"></a> Credits
 </h2></div></div></div>
 <p>
       This documentation was pulled together by John Maddock, using Boost.Quickbook
@@ -49,7 +49,7 @@
       Aleksey Gurtovoy added MPL integration to the library.
     </p>
 <p>
- The <a class="link" href="reference/is_convertible.html" title="is_convertible">is_convertible</a>
+ The is_convertible
       template is based on code originally devised by Andrei Alexandrescu, see "<a href="http://www.cuj.com/experts/1810/alexandr.htm?topic=experts" target="_top">Generic&lt;Programming&gt;:
       Mappings between Types and Values</a>".
     </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Examples</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="prev" href="mpl.html" title="MPL Interoperability">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_typetraits.examples"></a><a class="link" href="examples.html" title="Examples"> Examples</a>
+<a name="boost_typetraits.examples"></a> Examples
 </h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"><a href="examples/copy.html"> An Optimized Version

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/copy.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/copy.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/copy.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>An Optimized Version of std::copy</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../examples.html" title="Examples">
 <link rel="prev" href="../examples.html" title="Examples">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,17 +24,16 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.examples.copy"></a><a class="link" href="copy.html" title="An Optimized Version of std::copy"> An Optimized Version
+<a name="boost_typetraits.examples.copy"></a><a href="copy.html" title="An Optimized Version of std::copy"> An Optimized Version
       of std::copy</a>
 </h3></div></div></div>
 <p>
         Demonstrates a version of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">copy</span></code>
- that uses <code class="computeroutput"><a class="link" href="../reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a></code>
+ that uses <code class="computeroutput">has_trivial_assign</code>
         to determine whether to use <code class="computeroutput"><span class="identifier">memcpy</span></code>
         to optimise the copy operation (see copy_example.cpp):
       </p>
-<pre class="programlisting">
-<span class="comment">//
+<pre class="programlisting"><span class="comment">//
 </span><span class="comment">// opt::copy
 </span><span class="comment">// same semantics as std::copy
 </span><span class="comment">// calls memcpy where appropriate.
@@ -43,7 +42,7 @@
 <span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span>
 
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">I2</span><span class="special">,</span> <span class="keyword">bool</span> <span class="identifier">b</span><span class="special">&gt;</span>
-<span class="identifier">I2</span> <span class="identifier">copy_imp</span><span class="special">(</span><span class="identifier">I1</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">I1</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">I2</span> <span class="identifier">out</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="identifier">b</span><span class="special">&gt;&amp;)</span>
+<span class="identifier">I2</span> <span class="identifier">copy_imp</span><span class="special">(</span><span class="identifier">I1</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">I1</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">I2</span> <span class="identifier">out</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span>integral_constant<span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="identifier">b</span><span class="special">&gt;&amp;)</span>
 <span class="special">{</span>
    <span class="keyword">while</span><span class="special">(</span><span class="identifier">first</span> <span class="special">!=</span> <span class="identifier">last</span><span class="special">)</span>
    <span class="special">{</span>
@@ -55,7 +54,7 @@
 <span class="special">}</span>
 
 <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="identifier">T</span><span class="special">*</span> <span class="identifier">copy_imp</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">first</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">out</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">true_type</a><span class="special">&amp;)</span>
+<span class="identifier">T</span><span class="special">*</span> <span class="identifier">copy_imp</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">first</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">out</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span>true_type<span class="special">&amp;)</span>
 <span class="special">{</span>
    <span class="identifier">memcpy</span><span class="special">(</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">first</span><span class="special">,</span> <span class="special">(</span><span class="identifier">last</span><span class="special">-</span><span class="identifier">first</span><span class="special">)*</span><span class="keyword">sizeof</span><span class="special">(</span><span class="identifier">T</span><span class="special">));</span>
    <span class="keyword">return</span> <span class="identifier">out</span><span class="special">+(</span><span class="identifier">last</span><span class="special">-</span><span class="identifier">first</span><span class="special">);</span>
@@ -73,7 +72,7 @@
 </span> <span class="comment">// requirement we detect with overload resolution):
 </span> <span class="comment">//
 </span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">I1</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="identifier">value_type</span><span class="special">;</span>
- <span class="keyword">return</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">copy_imp</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">out</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;());</span>
+ <span class="keyword">return</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">copy_imp</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">out</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span>has_trivial_assign<span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;());</span>
 <span class="special">}</span>
 </pre>
 </div>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/destruct.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/destruct.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/destruct.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>An Example that Omits Destructor Calls For Types with Trivial Destructors</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../examples.html" title="Examples">
 <link rel="prev" href="fill.html" title="An Optimised Version of std::fill">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,15 +24,14 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.examples.destruct"></a><a class="link" href="destruct.html" title="An Example that Omits Destructor Calls For Types with Trivial Destructors"> An Example that
+<a name="boost_typetraits.examples.destruct"></a><a href="destruct.html" title="An Example that Omits Destructor Calls For Types with Trivial Destructors"> An Example that
       Omits Destructor Calls For Types with Trivial Destructors</a>
 </h3></div></div></div>
 <p>
         Demonstrates a simple algorithm that uses <code class="computeroutput"><span class="identifier">__has_trivial_destruct</span></code>
         to determine whether to destructors need to be called (see trivial_destructor_example.cpp):
       </p>
-<pre class="programlisting">
-<span class="comment">//
+<pre class="programlisting"><span class="comment">//
 </span><span class="comment">// algorithm destroy_array:
 </span><span class="comment">// The reverse of std::unitialized_copy, takes a block of
 </span><span class="comment">// initialized memory and calls destructors on all objects therein.
@@ -41,7 +40,7 @@
 <span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">void</span> <span class="identifier">do_destroy_array</span><span class="special">(</span><span class="identifier">T</span><span class="special">*</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">false_type</a><span class="special">&amp;)</span>
+<span class="keyword">void</span> <span class="identifier">do_destroy_array</span><span class="special">(</span><span class="identifier">T</span><span class="special">*</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span>false_type<span class="special">&amp;)</span>
 <span class="special">{</span>
    <span class="keyword">while</span><span class="special">(</span><span class="identifier">first</span> <span class="special">!=</span> <span class="identifier">last</span><span class="special">)</span>
    <span class="special">{</span>
@@ -51,7 +50,7 @@
 <span class="special">}</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">inline</span> <span class="keyword">void</span> <span class="identifier">do_destroy_array</span><span class="special">(</span><span class="identifier">T</span><span class="special">*</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">true_type</a><span class="special">&amp;)</span>
+<span class="keyword">inline</span> <span class="keyword">void</span> <span class="identifier">do_destroy_array</span><span class="special">(</span><span class="identifier">T</span><span class="special">*</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span>true_type<span class="special">&amp;)</span>
 <span class="special">{</span>
 <span class="special">}</span>
 
@@ -60,7 +59,7 @@
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">inline</span> <span class="keyword">void</span> <span class="identifier">destroy_array</span><span class="special">(</span><span class="identifier">T</span><span class="special">*</span> <span class="identifier">p1</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">p2</span><span class="special">)</span>
 <span class="special">{</span>
- <span class="identifier">detail</span><span class="special">::</span><span class="identifier">do_destroy_array</span><span class="special">(</span><span class="identifier">p1</span><span class="special">,</span> <span class="identifier">p2</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/has_trivial_destructor.html" title="has_trivial_destructor">has_trivial_destructor</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;());</span>
+ <span class="identifier">detail</span><span class="special">::</span><span class="identifier">do_destroy_array</span><span class="special">(</span><span class="identifier">p1</span><span class="special">,</span> <span class="identifier">p2</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span>has_trivial_destructor<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;());</span>
 <span class="special">}</span>
 </pre>
 </div>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/fill.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/fill.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/fill.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>An Optimised Version of std::fill</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../examples.html" title="Examples">
 <link rel="prev" href="copy.html" title="An Optimized Version of std::copy">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,24 +24,23 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.examples.fill"></a><a class="link" href="fill.html" title="An Optimised Version of std::fill"> An Optimised Version
+<a name="boost_typetraits.examples.fill"></a><a href="fill.html" title="An Optimised Version of std::fill"> An Optimised Version
       of std::fill</a>
 </h3></div></div></div>
 <p>
         Demonstrates a version of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">fill</span></code>
- that uses <code class="computeroutput"><a class="link" href="../reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a></code>
+ that uses <code class="computeroutput">has_trivial_assign</code>
         to determine whether to use <code class="computeroutput"><span class="identifier">memset</span></code>
         to optimise the fill operation (see fill_example.cpp):
       </p>
-<pre class="programlisting">
-<span class="comment">//
+<pre class="programlisting"><span class="comment">//
 </span><span class="comment">// fill
 </span><span class="comment">// same as std::fill, but uses memset where appropriate
 </span><span class="comment">//
 </span><span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">bool</span> <span class="identifier">b</span><span class="special">&gt;</span>
-<span class="keyword">void</span> <span class="identifier">do_fill</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="identifier">b</span><span class="special">&gt;&amp;)</span>
+<span class="keyword">void</span> <span class="identifier">do_fill</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span>integral_constant<span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="identifier">b</span><span class="special">&gt;&amp;)</span>
 <span class="special">{</span>
    <span class="keyword">while</span><span class="special">(</span><span class="identifier">first</span> <span class="special">!=</span> <span class="identifier">last</span><span class="special">)</span>
    <span class="special">{</span>
@@ -51,7 +50,7 @@
 <span class="special">}</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">void</span> <span class="identifier">do_fill</span><span class="special">(</span><span class="identifier">T</span><span class="special">*</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">true_type</a><span class="special">&amp;)</span>
+<span class="keyword">void</span> <span class="identifier">do_fill</span><span class="special">(</span><span class="identifier">T</span><span class="special">*</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span>true_type<span class="special">&amp;)</span>
 <span class="special">{</span>
    <span class="identifier">std</span><span class="special">::</span><span class="identifier">memset</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">val</span><span class="special">,</span> <span class="identifier">last</span><span class="special">-</span><span class="identifier">first</span><span class="special">);</span>
 <span class="special">}</span>
@@ -65,8 +64,8 @@
 </span> <span class="comment">// We can do an optimised fill if T has a trivial assignment
 </span> <span class="comment">// operator and if it's size is one:
 </span> <span class="comment">//
-</span> <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span>
- <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span> <span class="special">&amp;&amp;</span> <span class="special">(</span><span class="keyword">sizeof</span><span class="special">(</span><span class="identifier">T</span><span class="special">)</span> <span class="special">==</span> <span class="number">1</span><span class="special">)&gt;</span> <span class="identifier">truth_type</span><span class="special">;</span>
+</span> <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span>integral_constant<span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span>
+ <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span>has_trivial_assign<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span> <span class="special">&amp;&amp;</span> <span class="special">(</span><span class="keyword">sizeof</span><span class="special">(</span><span class="identifier">T</span><span class="special">)</span> <span class="special">==</span> <span class="number">1</span><span class="special">)&gt;</span> <span class="identifier">truth_type</span><span class="special">;</span>
    <span class="identifier">detail</span><span class="special">::</span><span class="identifier">do_fill</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">val</span><span class="special">,</span> <span class="identifier">truth_type</span><span class="special">());</span>
 <span class="special">}</span>
 </pre>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/iter.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/iter.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/iter.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>An improved Version of std::iter_swap</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../examples.html" title="Examples">
 <link rel="prev" href="destruct.html" title="An Example that Omits Destructor Calls For Types with Trivial Destructors">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.examples.iter"></a><a class="link" href="iter.html" title="An improved Version of std::iter_swap"> An improved Version
+<a name="boost_typetraits.examples.iter"></a><a href="iter.html" title="An improved Version of std::iter_swap"> An improved Version
       of std::iter_swap</a>
 </h3></div></div></div>
 <p>
@@ -36,8 +36,7 @@
         the swap to ensure that the algorithm works correctly for both proxying iterators,
         and even iterators of different types (see iter_swap_example.cpp):
       </p>
-<pre class="programlisting">
-<span class="comment">//
+<pre class="programlisting"><span class="comment">//
 </span><span class="comment">// iter_swap:
 </span><span class="comment">// tests whether iterator is a proxying iterator or not, and
 </span><span class="comment">// uses optimal form accordingly:
@@ -45,7 +44,7 @@
 </span><span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I</span><span class="special">&gt;</span>
-<span class="keyword">static</span> <span class="keyword">void</span> <span class="identifier">do_swap</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">one</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">two</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">false_type</a><span class="special">&amp;)</span>
+<span class="keyword">static</span> <span class="keyword">void</span> <span class="identifier">do_swap</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">one</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">two</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span>false_type<span class="special">&amp;)</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="identifier">v_t</span><span class="special">;</span>
    <span class="identifier">v_t</span> <span class="identifier">v</span> <span class="special">=</span> <span class="special">*</span><span class="identifier">one</span><span class="special">;</span>
@@ -53,7 +52,7 @@
    <span class="special">*</span><span class="identifier">two</span> <span class="special">=</span> <span class="identifier">v</span><span class="special">;</span>
 <span class="special">}</span>
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I</span><span class="special">&gt;</span>
-<span class="keyword">static</span> <span class="keyword">void</span> <span class="identifier">do_swap</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">one</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">two</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">true_type</a><span class="special">&amp;)</span>
+<span class="keyword">static</span> <span class="keyword">void</span> <span class="identifier">do_swap</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">one</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">two</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span>true_type<span class="special">&amp;)</span>
 <span class="special">{</span>
    <span class="keyword">using</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">swap</span><span class="special">;</span>
    <span class="identifier">swap</span><span class="special">(*</span><span class="identifier">one</span><span class="special">,</span> <span class="special">*</span><span class="identifier">two</span><span class="special">);</span>
@@ -71,10 +70,10 @@
 </span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">I1</span><span class="special">&gt;::</span><span class="identifier">reference</span> <span class="identifier">r1_t</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">I2</span><span class="special">&gt;::</span><span class="identifier">reference</span> <span class="identifier">r2_t</span><span class="special">;</span>
 
- <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span>
- <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/is_reference.html" title="is_reference">is_reference</a><span class="special">&lt;</span><span class="identifier">r1_t</span><span class="special">&gt;::</span><span class="identifier">value</span>
- <span class="special">&amp;&amp;</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/is_reference.html" title="is_reference">is_reference</a><span class="special">&lt;</span><span class="identifier">r2_t</span><span class="special">&gt;::</span><span class="identifier">value</span>
- <span class="special">&amp;&amp;</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/is_same.html" title="is_same">is_same</a><span class="special">&lt;</span><span class="identifier">r1_t</span><span class="special">,</span> <span class="identifier">r2_t</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">&gt;</span> <span class="identifier">truth_type</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span>integral_constant<span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span>
+ <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span>is_reference<span class="special">&lt;</span><span class="identifier">r1_t</span><span class="special">&gt;::</span><span class="identifier">value</span>
+ <span class="special">&amp;&amp;</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span>is_reference<span class="special">&lt;</span><span class="identifier">r2_t</span><span class="special">&gt;::</span><span class="identifier">value</span>
+ <span class="special">&amp;&amp;</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span>is_same<span class="special">&lt;</span><span class="identifier">r1_t</span><span class="special">,</span> <span class="identifier">r2_t</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">&gt;</span> <span class="identifier">truth_type</span><span class="special">;</span>
 
    <span class="identifier">detail</span><span class="special">::</span><span class="identifier">do_swap</span><span class="special">(</span><span class="identifier">one</span><span class="special">,</span> <span class="identifier">two</span><span class="special">,</span> <span class="identifier">truth_type</span><span class="special">());</span>
 <span class="special">}</span>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/to_double.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/to_double.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/examples/to_double.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Convert Numeric Types and Enums to double</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../examples.html" title="Examples">
 <link rel="prev" href="iter.html" title="An improved Version of std::iter_swap">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,15 +24,14 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.examples.to_double"></a><a class="link" href="to_double.html" title="Convert Numeric Types and Enums to double"> Convert Numeric
+<a name="boost_typetraits.examples.to_double"></a><a href="to_double.html" title="Convert Numeric Types and Enums to double"> Convert Numeric
       Types and Enums to double</a>
 </h3></div></div></div>
 <p>
         Demonstrates a conversion of <a href="../../../../../../libs/numeric/conversion/doc/html/boost_numericconversion/definitions.html#boost_numericconversion.definitions.numeric_types" target="_top">Numeric
         Types</a> and enum types to double:
       </p>
-<pre class="programlisting">
-<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">inline</span> <span class="keyword">double</span> <span class="identifier">to_double</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">value</span><span class="special">)</span>
 <span class="special">{</span>
     <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">promote</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">promoted</span><span class="special">;</span>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/intrinsics.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/intrinsics.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/intrinsics.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Support for Compiler Intrinsics</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="prev" href="user_defined.html" title="User Defined Specializations">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,30 +24,30 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_typetraits.intrinsics"></a><a class="link" href="intrinsics.html" title="Support for Compiler Intrinsics"> Support for Compiler Intrinsics</a>
+<a name="boost_typetraits.intrinsics"></a> Support for Compiler Intrinsics
 </h2></div></div></div>
 <p>
       There are some traits that can not be implemented within the current C++ language:
       to make these traits "just work" with user defined types, some kind
- of additional help from the compiler is required. Currently (May 2005) MWCW
- 9 and Visual C++ 8 provide the necessary intrinsics, and other compilers will
- no doubt follow in due course.
+ of additional help from the compiler is required. Currently (April 2008) Visual
+ C++ 8 and 9, GNU GCC 4.3 and MWCW 9 provide the necessary intrinsics, and other
+ compilers will no doubt follow in due course.
     </p>
 <p>
       The Following traits classes always need compiler support to do the right thing
       for all types (but all have safe fallback positions if this support is unavailable):
     </p>
 <div class="itemizedlist"><ul type="disc">
-<li><a class="link" href="reference/is_union.html" title="is_union">is_union</a></li>
-<li><a class="link" href="reference/is_pod.html" title="is_pod">is_pod</a></li>
-<li><a class="link" href="reference/has_trivial_constructor.html" title="has_trivial_constructor">has_trivial_constructor</a></li>
-<li><a class="link" href="reference/has_trivial_copy.html" title="has_trivial_copy">has_trivial_copy</a></li>
-<li><a class="link" href="reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a></li>
-<li><a class="link" href="reference/has_trivial_destructor.html" title="has_trivial_destructor">has_trivial_destructor</a></li>
-<li><a class="link" href="reference/has_nothrow_constructor.html" title="has_nothrow_constructor">has_nothrow_constructor</a></li>
-<li><a class="link" href="reference/has_nothrow_copy.html" title="has_nothrow_copy">has_nothrow_copy</a></li>
-<li><a class="link" href="reference/has_nothrow_assign.html" title="has_nothrow_assign">has_nothrow_assign</a></li>
-<li><a class="link" href="reference/has_virtual_destructor.html" title="has_virtual_destructor">has_virtual_destructor</a></li>
+<li>is_union</li>
+<li>is_pod</li>
+<li>has_trivial_constructor</li>
+<li>has_trivial_copy</li>
+<li>has_trivial_assign</li>
+<li>has_trivial_destructor</li>
+<li>has_nothrow_constructor</li>
+<li>has_nothrow_copy</li>
+<li>has_nothrow_assign</li>
+<li>has_virtual_destructor</li>
 </ul></div>
 <p>
       The following traits classes can't be portably implemented in the C++ language,
@@ -55,15 +55,15 @@
       all the compilers we know about:
     </p>
 <div class="itemizedlist"><ul type="disc">
-<li><a class="link" href="reference/is_empty.html" title="is_empty">is_empty</a></li>
-<li><a class="link" href="reference/is_polymorphic.html" title="is_polymorphic">is_polymorphic</a></li>
+<li>is_empty</li>
+<li>is_polymorphic</li>
 </ul></div>
 <p>
       The following traits classes are dependent on one or more of the above:
     </p>
 <div class="itemizedlist"><ul type="disc">
-<li><a class="link" href="reference/is_class.html" title="is_class">is_class</a></li>
-<li><a class="link" href="reference/is_stateless.html" title="is_stateless">is_stateless</a></li>
+<li>is_class</li>
+<li>is_stateless</li>
 </ul></div>
 <p>
       The hooks for compiler-intrinsic support are defined in boost/type_traits/intrinsics.hpp,
@@ -71,7 +71,7 @@
       of the following macros:
     </p>
 <div class="table">
-<a name="id2642766"></a><p class="title"><b>Table 1.4. Macros for Compiler Intrinsics</b></p>
+<a name="id508277"></a><p class="title"><b>Table 1.4. Macros for Compiler Intrinsics</b></p>
 <div class="table-contents"><table class="table" summary="Macros for Compiler Intrinsics">
 <colgroup>
 <col>
@@ -220,6 +220,90 @@
           </p>
           </td>
 </tr>
+<tr>
+<td>
+ <p>
+ BOOST_IS_ABSTRACT(T)
+ </p>
+ </td>
+<td>
+ <p>
+ Should evaluate to true if T is an abstract type
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ BOOST_IS_BASE_OF(T,U)
+ </p>
+ </td>
+<td>
+ <p>
+ Should evaluate to true if T is a base class of U
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ BOOST_IS_CLASS(T)
+ </p>
+ </td>
+<td>
+ <p>
+ Should evaluate to true if T is a class type
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ BOOST_IS_CONVERTIBLE(T,U)
+ </p>
+ </td>
+<td>
+ <p>
+ Should evaluate to true if T is convertible to U
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ BOOST_IS_ENUM(T)
+ </p>
+ </td>
+<td>
+ <p>
+ Should evaluate to true is T is an enum
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ BOOST_IS_POLYMORPHIC(T)
+ </p>
+ </td>
+<td>
+ <p>
+ Should evaluate to true if T is a polymorphic type
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ BOOST_ALIGNMENT_OF(T)
+ </p>
+ </td>
+<td>
+ <p>
+ Should evaluate to the alignment requirements of type T.
+ </p>
+ </td>
+</tr>
 </tbody>
 </table></div>
 </div>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/intro.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/intro.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/intro.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Introduction</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="prev" href="../index.html" title="Chapter 1. Boost.TypeTraits">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_typetraits.intro"></a><a class="link" href="intro.html" title="Introduction"> Introduction</a>
+<a name="boost_typetraits.intro"></a> Introduction
 </h2></div></div></div>
 <p>
       The Boost type-traits library contains a set of very specific traits classes,
@@ -34,8 +34,8 @@
     </p>
 <p>
       The type-traits classes share a unified design: each class inherits from a
- the type <a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a>
- if the type has the specified property and inherits from <a class="link" href="reference/integral_constant.html" title="integral_constant">false_type</a>
+ the type true_type
+ if the type has the specified property and inherits from false_type
       otherwise.
     </p>
 <p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/mpl.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/mpl.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/mpl.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>MPL Interoperability</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="prev" href="intrinsics.html" title="Support for Compiler Intrinsics">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_typetraits.mpl"></a><a class="link" href="mpl.html" title="MPL Interoperability"> MPL Interoperability</a>
+<a name="boost_typetraits.mpl"></a> MPL Interoperability
 </h2></div></div></div>
 <p>
       All the value based traits in this library conform to MPL's requirements for
@@ -33,11 +33,11 @@
       for broken compilers.
     </p>
 <p>
- Purely as an implementation detail, this means that <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a></code>
+ Purely as an implementation detail, this means that <code class="computeroutput">true_type</code>
       inherits from boost::mpl::true_,
- <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">false_type</a></code>
+ <code class="computeroutput">false_type</code>
       inherits from boost::mpl::false_,
- and <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">,</span>
+ and <code class="computeroutput">integral_constant<span class="special">&lt;</span><span class="identifier">T</span><span class="special">,</span>
       <span class="identifier">v</span><span class="special">&gt;</span></code>
       inherits from boost::mpl::integral_c<T,v>
       (provided <code class="computeroutput"><span class="identifier">T</span></code> is not <code class="computeroutput"><span class="keyword">bool</span></code>)

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Alphabetical Reference</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="prev" href="examples/to_double.html" title="Convert Numeric Types and Enums to double">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,7 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_typetraits.reference"></a><a class="link" href="reference.html" title="Alphabetical Reference"> Alphabetical Reference</a>
+<a name="boost_typetraits.reference"></a> Alphabetical Reference
 </h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"> add_const</span></dt>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_const.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_const.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_const.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>add_const</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="../reference.html" title="Alphabetical Reference">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.add_const"></a><a class="link" href="add_const.html" title="add_const"> add_const</a>
+<a name="boost_typetraits.reference.add_const"></a> add_const
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">add_const</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -45,7 +44,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -54,7 +53,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2647187"></a><p class="title"><b>Table 1.5. Examples</b></p>
+<a name="id513547"></a><p class="title"><b>Table 1.5. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_cv.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_cv.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_cv.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>add_cv</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="add_const.html" title="add_const">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.add_cv"></a><a class="link" href="add_cv.html" title="add_cv"> add_cv</a>
+<a name="boost_typetraits.reference.add_cv"></a> add_cv
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">add_cv</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -46,7 +45,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -55,7 +54,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2647768"></a><p class="title"><b>Table 1.6. Examples</b></p>
+<a name="id514185"></a><p class="title"><b>Table 1.6. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_pointer.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_pointer.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_pointer.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>add_pointer</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="add_cv.html" title="add_cv">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.add_pointer"></a><a class="link" href="add_pointer.html" title="add_pointer"> add_pointer</a>
+<a name="boost_typetraits.reference.add_pointer"></a> add_pointer
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">add_pointer</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -48,7 +47,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -57,7 +56,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2648416"></a><p class="title"><b>Table 1.7. Examples</b></p>
+<a name="id514897"></a><p class="title"><b>Table 1.7. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_reference.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_reference.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_reference.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>add_reference</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="add_pointer.html" title="add_pointer">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.add_reference"></a><a class="link" href="add_reference.html" title="add_reference"> add_reference</a>
+<a name="boost_typetraits.reference.add_reference"></a> add_reference
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">add_reference</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -45,7 +44,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -54,7 +53,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2648996"></a><p class="title"><b>Table 1.8. Examples</b></p>
+<a name="id515535"></a><p class="title"><b>Table 1.8. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_volatile.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_volatile.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/add_volatile.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>add_volatile</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="add_reference.html" title="add_reference">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.add_volatile"></a><a class="link" href="add_volatile.html" title="add_volatile"> add_volatile</a>
+<a name="boost_typetraits.reference.add_volatile"></a> add_volatile
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">add_volatile</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -45,7 +44,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -54,7 +53,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2649568"></a><p class="title"><b>Table 1.9. Examples</b></p>
+<a name="id516164"></a><p class="title"><b>Table 1.9. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/aligned_storage.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/aligned_storage.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/aligned_storage.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>aligned_storage</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="add_volatile.html" title="add_volatile">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.aligned_storage"></a><a class="link" href="aligned_storage.html" title="aligned_storage"> aligned_storage</a>
+<a name="boost_typetraits.reference.aligned_storage"></a> aligned_storage
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Size</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Align</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Size</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Align</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">aligned_storage</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/alignment_of.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/alignment_of.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/alignment_of.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>alignment_of</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="aligned_storage.html" title="aligned_storage">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,11 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.alignment_of"></a><a class="link" href="alignment_of.html" title="alignment_of"> alignment_of</a>
+<a name="boost_typetraits.reference.alignment_of"></a> alignment_of
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">alignment_of</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">ALIGNOF</span><span class="special">(</span><span class="identifier">T</span><span class="special">)&gt;</span> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">alignment_of</span> <span class="special">:</span> <span class="keyword">public</span> integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">ALIGNOF</span><span class="special">(</span><span class="identifier">T</span><span class="special">)&gt;</span> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> Class template alignment<span class="underline">of inherits from `</span>_integral_constant&lt;std::size_t,
@@ -53,7 +52,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">alignment_of</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">ALIGNOF</span><span class="special">(</span><span class="keyword">int</span><span class="special">)&gt;</span></code>.
+ inherits from <code class="computeroutput">integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">ALIGNOF</span><span class="special">(</span><span class="keyword">int</span><span class="special">)&gt;</span></code>.
           </p>
 <p>
         </p>
@@ -62,7 +61,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">alignment_of</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">ALIGNOF</span><span class="special">(</span><span class="keyword">char</span><span class="special">)&gt;</span></code>.
+ <code class="computeroutput"><span class="identifier">alignment_of</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">ALIGNOF</span><span class="special">(</span><span class="keyword">char</span><span class="special">)&gt;</span></code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/decay.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/decay.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/decay.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>decay</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="alignment_of.html" title="alignment_of">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.decay"></a><a class="link" href="decay.html" title="decay"> decay</a>
+<a name="boost_typetraits.reference.decay"></a> decay
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">decay</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -49,7 +48,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2651076"></a><p class="title"><b>Table 1.10. Examples</b></p>
+<a name="id517822"></a><p class="title"><b>Table 1.10. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/extent.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/extent.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/extent.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>extent</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="decay.html" title="decay">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,22 +24,21 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.extent"></a><a class="link" href="extent.html" title="extent"> extent</a>
+<a name="boost_typetraits.reference.extent"></a> extent
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span> <span class="special">=</span> <span class="number">0</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">extent</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">EXTENT</span><span class="special">(</span><span class="identifier">T</span><span class="special">,</span><span class="identifier">N</span><span class="special">)&gt;</span> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">N</span> <span class="special">=</span> <span class="number">0</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">extent</span> <span class="special">:</span> <span class="keyword">public</span> integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">EXTENT</span><span class="special">(</span><span class="identifier">T</span><span class="special">,</span><span class="identifier">N</span><span class="special">)&gt;</span> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> Class template extent inherits
- from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">EXTENT</span><span class="special">(</span><span class="identifier">T</span><span class="special">,</span><span class="identifier">N</span><span class="special">)&gt;</span></code>,
+ from <code class="computeroutput">integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">EXTENT</span><span class="special">(</span><span class="identifier">T</span><span class="special">,</span><span class="identifier">N</span><span class="special">)&gt;</span></code>,
         where <code class="computeroutput"><span class="identifier">EXTENT</span><span class="special">(</span><span class="identifier">T</span><span class="special">,</span><span class="identifier">N</span><span class="special">)</span></code> is the number of elements in the N'th array
         dimention of type <code class="computeroutput"><span class="identifier">T</span></code>.
       </p>
 <p>
         If <code class="computeroutput"><span class="identifier">T</span></code> is not an array type,
         or if <code class="computeroutput"><span class="identifier">N</span> <span class="special">&gt;</span>
- <a class="link" href="rank.html" title="rank">rank</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span></code>, or if the N'th array bound is incomplete,
+ rank<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span></code>, or if the N'th array bound is incomplete,
         then <code class="computeroutput"><span class="identifier">EXTENT</span><span class="special">(</span><span class="identifier">T</span><span class="special">,</span><span class="identifier">N</span><span class="special">)</span></code> is zero.
       </p>
 <p>
@@ -54,7 +53,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">extent</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">[</span><span class="number">1</span><span class="special">]&gt;</span></code> inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;</span></code>.
+ <code class="computeroutput"><span class="identifier">extent</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">[</span><span class="number">1</span><span class="special">]&gt;</span></code> inherits from <code class="computeroutput">integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;</span></code>.
           </p>
 <p>
         </p>
@@ -64,7 +63,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">extent</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">[</span><span class="number">2</span><span class="special">][</span><span class="number">3</span><span class="special">][</span><span class="number">4</span><span class="special">],</span>
- <span class="number">1</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="number">3</span><span class="special">&gt;</span></code>.
+ <span class="number">1</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="number">3</span><span class="special">&gt;</span></code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/floating_point_promotion.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/floating_point_promotion.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/floating_point_promotion.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>floating_point_promotion</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="extent.html" title="extent">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,11 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.floating_point_promotion"></a><a class="link" href="floating_point_promotion.html" title="floating_point_promotion">
+<a name="boost_typetraits.reference.floating_point_promotion"></a><a href="floating_point_promotion.html" title="floating_point_promotion">
       floating_point_promotion</a>
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">floating_point_promotion</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -50,7 +49,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2652704"></a><p class="title"><b>Table 1.11. Examples</b></p>
+<a name="id519607"></a><p class="title"><b>Table 1.11. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/function_traits.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/function_traits.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/function_traits.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>function_traits</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="floating_point_promotion.html" title="floating_point_promotion">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.function_traits"></a><a class="link" href="function_traits.html" title="function_traits"> function_traits</a>
+<a name="boost_typetraits.reference.function_traits"></a> function_traits
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">F</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">function_traits</span>
 <span class="special">{</span>
    <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">arity</span> <span class="special">=</span> <em class="replaceable"><code>see-below</code></em><span class="special">;</span>
@@ -43,7 +42,7 @@
           The compiler supports partial specialization of class templates.
         </li>
 <li>
- The template argument <code class="computeroutput"><span class="identifier">T</span></code>
+ The template argument <code class="computeroutput"><span class="identifier">F</span></code>
           is a <span class="emphasis"><em>function type</em></span>, note that this <span class="emphasis"><em><span class="bold"><strong>is not</strong></span></em></span> the same thing as a <span class="emphasis"><em>pointer
           to a function</em></span>.
         </li>
@@ -56,11 +55,11 @@
 <tr><td align="left" valign="top"><p>
           function_traits is intended to introspect only C++ functions of the form
           R (), R( A1 ), R ( A1, ... etc. ) and not function pointers or class member
- functions. To convert a function pointer type to a suitable type use <a class="link" href="remove_pointer.html" title="remove_pointer">remove_pointer</a>.
+ functions. To convert a function pointer type to a suitable type use remove_pointer.
         </p></td></tr>
 </table></div>
 <div class="table">
-<a name="id2653139"></a><p class="title"><b>Table 1.12. Function Traits Members</b></p>
+<a name="id520088"></a><p class="title"><b>Table 1.12. Function Traits Members</b></p>
 <div class="table-contents"><table class="table" summary="Function Traits Members">
 <colgroup>
 <col>
@@ -82,7 +81,7 @@
 <tr>
 <td>
             <p>
- <code class="computeroutput"><span class="identifier">function_traits</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">arity</span></code>
+ <code class="computeroutput"><span class="identifier">function_traits</span><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">arity</span></code>
             </p>
             </td>
 <td>
@@ -95,7 +94,7 @@
 <tr>
 <td>
             <p>
- <code class="computeroutput"><span class="identifier">function_traits</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">result_type</span></code>
+ <code class="computeroutput"><span class="identifier">function_traits</span><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">result_type</span></code>
             </p>
             </td>
 <td>
@@ -107,7 +106,7 @@
 <tr>
 <td>
             <p>
- <code class="computeroutput"><span class="identifier">function_traits</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span>arg<em class="replaceable"><code>N</code></em>_type</code>
+ <code class="computeroutput"><span class="identifier">function_traits</span><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;::</span>arg<em class="replaceable"><code>N</code></em>_type</code>
             </p>
             </td>
 <td>
@@ -123,7 +122,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id2653391"></a><p class="title"><b>Table 1.13. Examples</b></p>
+<a name="id520365"></a><p class="title"><b>Table 1.13. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>
@@ -234,8 +233,8 @@
             </td>
 <td>
             <p>
- A compiler error: there is no <code class="computeroutput"><span class="identifier">arg4_type</span></code>
- since there are only three arguments.
+ A compiler error: there is no <code class="computeroutput"><span class="identifier">arg5_type</span></code>
+ since there are only four arguments.
             </p>
             </td>
 </tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_no_throw_def_cons.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_no_throw_def_cons.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_no_throw_def_cons.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_nothrow_default_constructor</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_nothrow_cp_cons.html" title="has_nothrow_copy_constructor">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_no_throw_def_cons"></a><a class="link" href="has_no_throw_def_cons.html" title="has_nothrow_default_constructor"> has_nothrow_default_constructor</a>
+<a name="boost_typetraits.reference.has_no_throw_def_cons"></a> has_nothrow_default_constructor
 </h3></div></div></div>
 <p>
- See <a class="link" href="has_nothrow_constructor.html" title="has_nothrow_constructor">has_nothrow_constructor</a>.
+ See has_nothrow_constructor.
       </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_assign.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_assign.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_assign.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_nothrow_assign</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="function_traits.html" title="function_traits">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_nothrow_assign"></a><a class="link" href="has_nothrow_assign.html" title="has_nothrow_assign"> has_nothrow_assign</a>
+<a name="boost_typetraits.reference.has_nothrow_assign"></a> has_nothrow_assign
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_nothrow_assign</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">has_nothrow_assign</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- type with a non-throwing assignment-operator then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ type with a non-throwing assignment-operator then inherits from true_type,
+ otherwise inherits from false_type.
         Type <code class="computeroutput"><span class="identifier">T</span></code> must be a complete
         type.
       </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_constructor.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_constructor.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_constructor.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_nothrow_constructor</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_nothrow_assign.html" title="has_nothrow_assign">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,20 +24,19 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_nothrow_constructor"></a><a class="link" href="has_nothrow_constructor.html" title="has_nothrow_constructor">
+<a name="boost_typetraits.reference.has_nothrow_constructor"></a><a href="has_nothrow_constructor.html" title="has_nothrow_constructor">
       has_nothrow_constructor</a>
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_nothrow_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">has_nothrow_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_nothrow_default_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<span class="keyword">struct</span> <span class="identifier">has_nothrow_default_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- type with a non-throwing default-constructor then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ type with a non-throwing default-constructor then inherits from true_type,
+ otherwise inherits from false_type.
         Type <code class="computeroutput"><span class="identifier">T</span></code> must be a complete
         type.
       </p>
@@ -53,7 +52,7 @@
         Without some (as yet unspecified) help from the compiler, <code class="computeroutput"><span class="identifier">has_nothrow_constructor</span></code>
         will never report that a class or struct has a non-throwing default-constructor;
         this is always safe, if possibly sub-optimal. Currently (May 2005) only Visual
- C++ 8 has the necessary compiler <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ C++ 8 has the necessary compiler intrinsics
         to ensure that this trait "just works".
       </p>
 <p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_copy.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_copy.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_copy.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_nothrow_copy</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_nothrow_constructor.html" title="has_nothrow_constructor">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,19 +24,18 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_nothrow_copy"></a><a class="link" href="has_nothrow_copy.html" title="has_nothrow_copy"> has_nothrow_copy</a>
+<a name="boost_typetraits.reference.has_nothrow_copy"></a> has_nothrow_copy
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_nothrow_copy</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">has_nothrow_copy</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_nothrow_copy_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<span class="keyword">struct</span> <span class="identifier">has_nothrow_copy_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- type with a non-throwing copy-constructor then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ type with a non-throwing copy-constructor then inherits from true_type,
+ otherwise inherits from false_type.
         Type <code class="computeroutput"><span class="identifier">T</span></code> must be a complete
         type.
       </p>
@@ -52,7 +51,7 @@
         Without some (as yet unspecified) help from the compiler, <code class="computeroutput"><span class="identifier">has_nothrow_copy</span></code>
         will never report that a class or struct has a non-throwing copy-constructor;
         this is always safe, if possibly sub-optimal. Currently (May 2005) only Visual
- C++ 8 has the necessary compiler <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ C++ 8 has the necessary compiler intrinsics
         to ensure that this trait "just works".
       </p>
 <p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_cp_cons.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_cp_cons.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_nothrow_cp_cons.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_nothrow_copy_constructor</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_nothrow_copy.html" title="has_nothrow_copy">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_nothrow_cp_cons"></a><a class="link" href="has_nothrow_cp_cons.html" title="has_nothrow_copy_constructor"> has_nothrow_copy_constructor</a>
+<a name="boost_typetraits.reference.has_nothrow_cp_cons"></a> has_nothrow_copy_constructor
 </h3></div></div></div>
 <p>
- See <a class="link" href="has_nothrow_copy.html" title="has_nothrow_copy">has_nothrow_copy</a>.
+ See has_nothrow_copy.
       </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_assign.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_assign.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_assign.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_trivial_assign</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_no_throw_def_cons.html" title="has_nothrow_default_constructor">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_trivial_assign"></a><a class="link" href="has_trivial_assign.html" title="has_trivial_assign"> has_trivial_assign</a>
+<a name="boost_typetraits.reference.has_trivial_assign"></a> has_trivial_assign
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_trivial_assign</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">has_trivial_assign</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- type with a trivial assignment-operator then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ type with a trivial assignment-operator then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         If a type has a trivial assignment-operator then the operator has the same
@@ -49,7 +48,7 @@
         Without some (as yet unspecified) help from the compiler, has_trivial_assign
         will never report that a user-defined class or struct has a trivial constructor;
         this is always safe, if possibly sub-optimal. Currently (May 2005) only MWCW
- 9 and Visual C++ 8 have the necessary compiler <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ 9 and Visual C++ 8 have the necessary compiler intrinsics
         to detect user-defined classes with trivial constructors.
       </p>
 <p>
@@ -68,7 +67,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">has_trivial_assign</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -77,7 +76,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">has_trivial_assign</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">*&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">has_trivial_assign</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">*&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_constructor.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_constructor.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_constructor.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_trivial_constructor</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_trivial_assign.html" title="has_trivial_assign">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,20 +24,19 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_trivial_constructor"></a><a class="link" href="has_trivial_constructor.html" title="has_trivial_constructor">
+<a name="boost_typetraits.reference.has_trivial_constructor"></a><a href="has_trivial_constructor.html" title="has_trivial_constructor">
       has_trivial_constructor</a>
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_trivial_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">has_trivial_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_trivial_default_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<span class="keyword">struct</span> <span class="identifier">has_trivial_default_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- type with a trivial default-constructor then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ type with a trivial default-constructor then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         These two traits are synonyms for each other.
@@ -58,7 +57,7 @@
         Without some (as yet unspecified) help from the compiler, has_trivial_constructor
         will never report that a user-defined class or struct has a trivial constructor;
         this is always safe, if possibly sub-optimal. Currently (May 2005) only MWCW
- 9 and Visual C++ 8 have the necessary compiler <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ 9 and Visual C++ 8 have the necessary compiler intrinsics
         to detect user-defined classes with trivial constructors.
       </p>
 <p>
@@ -76,7 +75,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">has_trivial_constructor</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code> inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">has_trivial_constructor</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code> inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -86,7 +85,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">has_trivial_constructor</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">*&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_copy.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_copy.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_copy.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_trivial_copy</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_trivial_constructor.html" title="has_trivial_constructor">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,19 +24,18 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_trivial_copy"></a><a class="link" href="has_trivial_copy.html" title="has_trivial_copy"> has_trivial_copy</a>
+<a name="boost_typetraits.reference.has_trivial_copy"></a> has_trivial_copy
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_trivial_copy</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">has_trivial_copy</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 
 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_trivial_copy_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<span class="keyword">struct</span> <span class="identifier">has_trivial_copy_constructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- type with a trivial copy-constructor then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ type with a trivial copy-constructor then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         These two traits are synonyms for each other.
@@ -55,7 +54,7 @@
         Without some (as yet unspecified) help from the compiler, has_trivial_copy
         will never report that a user-defined class or struct has a trivial constructor;
         this is always safe, if possibly sub-optimal. Currently (May 2005) only MWCW
- 9 and Visual C++ 8 have the necessary compiler <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ 9 and Visual C++ 8 have the necessary compiler intrinsics
         to detect user-defined classes with trivial constructors.
       </p>
 <p>
@@ -74,7 +73,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">has_trivial_copy</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -83,7 +82,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">has_trivial_copy</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">*&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">has_trivial_copy</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">*&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_cp_cons.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_cp_cons.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_cp_cons.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_trivial_copy_constructor</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_trivial_copy.html" title="has_trivial_copy">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_trivial_cp_cons"></a><a class="link" href="has_trivial_cp_cons.html" title="has_trivial_copy_constructor"> has_trivial_copy_constructor</a>
+<a name="boost_typetraits.reference.has_trivial_cp_cons"></a> has_trivial_copy_constructor
 </h3></div></div></div>
 <p>
- See <a class="link" href="has_trivial_copy.html" title="has_trivial_copy">has_trivial_copy</a>.
+ See has_trivial_copy.
       </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_def_cons.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_def_cons.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_def_cons.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_trivial_default_constructor</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_trivial_cp_cons.html" title="has_trivial_copy_constructor">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_trivial_def_cons"></a><a class="link" href="has_trivial_def_cons.html" title="has_trivial_default_constructor"> has_trivial_default_constructor</a>
+<a name="boost_typetraits.reference.has_trivial_def_cons"></a> has_trivial_default_constructor
 </h3></div></div></div>
 <p>
- See <a class="link" href="has_trivial_constructor.html" title="has_trivial_constructor">has_trivial_constructor</a>.
+ See has_trivial_constructor.
       </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_destructor.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_destructor.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_trivial_destructor.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_trivial_destructor</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_trivial_def_cons.html" title="has_trivial_default_constructor">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_trivial_destructor"></a><a class="link" href="has_trivial_destructor.html" title="has_trivial_destructor"> has_trivial_destructor</a>
+<a name="boost_typetraits.reference.has_trivial_destructor"></a> has_trivial_destructor
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_trivial_destructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">has_trivial_destructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- type with a trivial destructor then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ type with a trivial destructor then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         If a type has a trivial destructor then the destructor has no effect: calls
@@ -51,7 +50,7 @@
         Without some (as yet unspecified) help from the compiler, has_trivial_destructor
         will never report that a user-defined class or struct has a trivial destructor;
         this is always safe, if possibly sub-optimal. Currently (May 2005) only MWCW
- 9 and Visual C++ 8 have the necessary compiler <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ 9 and Visual C++ 8 have the necessary compiler intrinsics
         to detect user-defined classes with trivial constructors.
       </p>
 <p>
@@ -69,7 +68,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">has_trivial_destructor</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code> inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">has_trivial_destructor</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code> inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -79,7 +78,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">has_trivial_destructor</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">*&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_virtual_destructor.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_virtual_destructor.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/has_virtual_destructor.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>has_virtual_destructor</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_trivial_destructor.html" title="has_trivial_destructor">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,26 +24,25 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.has_virtual_destructor"></a><a class="link" href="has_virtual_destructor.html" title="has_virtual_destructor"> has_virtual_destructor</a>
+<a name="boost_typetraits.reference.has_virtual_destructor"></a> has_virtual_destructor
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">has_virtual_destructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">has_virtual_destructor</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- type with a virtual destructor then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ type with a virtual destructor then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>Compiler Compatibility:</strong></span> This trait is provided
         for completeness, since it's part of the Technical Report on C++ Library
         Extensions. However, there is currently no way to portably implement this
- trait. The default version provided always inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>,
+ trait. The default version provided always inherits from false_type,
         and has to be explicitly specialized for types with virtual destructors unless
- the compiler used has compiler <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ the compiler used has compiler intrinsics
         that enable the trait to do the right thing: currently (May 2005) only Visual
- C++ 8 has the necessary <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>.
+ C++ 8 and GCC-4.3 have the necessary intrinsics.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 12.4.

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/integral_constant.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/integral_constant.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/integral_constant.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>integral_constant</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="has_virtual_destructor.html" title="has_virtual_destructor">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.integral_constant"></a><a class="link" href="integral_constant.html" title="integral_constant"> integral_constant</a>
+<a name="boost_typetraits.reference.integral_constant"></a> integral_constant
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">val</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">val</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">integral_constant</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <span class="identifier">integral_constant</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">,</span> <span class="identifier">val</span><span class="special">&gt;</span> <span class="identifier">type</span><span class="special">;</span>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/integral_promotion.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/integral_promotion.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/integral_promotion.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>integral_promotion</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="integral_constant.html" title="integral_constant">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.integral_promotion"></a><a class="link" href="integral_promotion.html" title="integral_promotion"> integral_promotion</a>
+<a name="boost_typetraits.reference.integral_promotion"></a> integral_promotion
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">integral_promotion</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -50,7 +49,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2658387"></a><p class="title"><b>Table 1.14. Examples</b></p>
+<a name="id525991"></a><p class="title"><b>Table 1.14. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_abstract.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_abstract.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_abstract.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_abstract</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="integral_promotion.html" title="integral_promotion">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_abstract"></a><a class="link" href="is_abstract.html" title="is_abstract"> is_abstract</a>
+<a name="boost_typetraits.reference.is_abstract"></a> is_abstract
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_abstract</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_abstract</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- abstract type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ abstract type then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 10.3.
@@ -46,7 +45,7 @@
 <p>
         <span class="bold"><strong>Compiler Compatibility:</strong></span> The compiler must
         support DR337 (as of April 2005: GCC 3.4, VC++ 7.1 (and later), Intel C++
- 7 (and later), and Comeau 4.3.2). Otherwise behaves the same as <a class="link" href="is_polymorphic.html" title="is_polymorphic">is_polymorphic</a>;
+ 7 (and later), and Comeau 4.3.2). Otherwise behaves the same as is_polymorphic;
         this is the "safe fallback position" for which polymorphic types
         are always regarded as potentially abstract. The macro BOOST_NO_IS_ABSTRACT
         is used to signify that the implementation is buggy, users should check for
@@ -70,7 +69,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_abstract</span><span class="special">&lt;</span><span class="identifier">abc</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -79,7 +78,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_abstract</span><span class="special">&lt;</span><span class="identifier">abc</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_abstract</span><span class="special">&lt;</span><span class="identifier">abc</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_arithmetic.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_arithmetic.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_arithmetic.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_arithmetic</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_abstract.html" title="is_abstract">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,18 +24,17 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_arithmetic"></a><a class="link" href="is_arithmetic.html" title="is_arithmetic"> is_arithmetic</a>
+<a name="boost_typetraits.reference.is_arithmetic"></a> is_arithmetic
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_arithmetic</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_arithmetic</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- arithmetic type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
- Arithmetic types include integral and floating point types (see also <a class="link" href="is_integral.html" title="is_integral">is_integral</a> and
- <a class="link" href="is_floating_point.html" title="is_floating_point">is_floating_point</a>).
+ arithmetic type then inherits from true_type,
+ otherwise inherits from false_type.
+ Arithmetic types include integral and floating point types (see also is_integral and
+ is_floating_point).
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.1p8.
@@ -53,7 +52,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_arithmetic</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -62,7 +61,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_arithmetic</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_arithmetic</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_array.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_array.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_array.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_array</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_arithmetic.html" title="is_arithmetic">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_array"></a><a class="link" href="is_array.html" title="is_array"> is_array</a>
+<a name="boost_typetraits.reference.is_array"></a> is_array
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_array</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_array</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- array type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ array type then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2 and 8.3.4.
@@ -55,7 +54,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_array</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">[</span><span class="number">2</span><span class="special">]&gt;</span></code> inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_array</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">[</span><span class="number">2</span><span class="special">]&gt;</span></code> inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -65,7 +64,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_array</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">[</span><span class="number">2</span><span class="special">][</span><span class="number">3</span><span class="special">]&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_base_of.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_base_of.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_base_of.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_base_of</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_array.html" title="is_array">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,22 +24,21 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_base_of"></a><a class="link" href="is_base_of.html" title="is_base_of"> is_base_of</a>
+<a name="boost_typetraits.reference.is_base_of"></a> is_base_of
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Base</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Derived</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_base_of</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Base</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Derived</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_base_of</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If Base is base class of type
- Derived or if both types are the same then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ Derived or if both types are the same then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         This template will detect non-public base classes, and ambiguous base classes.
       </p>
 <p>
- Note that <code class="computeroutput"><span class="identifier">is_base_of</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">,</span><span class="identifier">X</span><span class="special">&gt;</span></code> will always inherit from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>.
+ Note that <code class="computeroutput"><span class="identifier">is_base_of</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">,</span><span class="identifier">X</span><span class="special">&gt;</span></code> will always inherit from true_type.
         <span class="bold"><strong>This is the case even if <code class="computeroutput"><span class="identifier">X</span></code>
         is not a class type</strong></span>. This is a change in behaviour from Boost-1.33
         in order to track the Technical Report on C++ Library Extensions.
@@ -84,7 +83,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_base_of</span><span class="special">&lt;</span><span class="identifier">Base</span><span class="special">,</span> <span class="identifier">Derived</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -93,7 +92,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_base_of</span><span class="special">&lt;</span><span class="identifier">Base</span><span class="special">,</span> <span class="identifier">Derived</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_base_of</span><span class="special">&lt;</span><span class="identifier">Base</span><span class="special">,</span> <span class="identifier">Derived</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_class.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_class.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_class.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_class</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_base_of.html" title="is_base_of">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_class"></a><a class="link" href="is_class.html" title="is_class"> is_class</a>
+<a name="boost_typetraits.reference.is_class"></a> is_class
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_class</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_class</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- class type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ class type then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2 and 9.2.
@@ -46,9 +45,9 @@
 <p>
         <span class="bold"><strong>Compiler Compatibility:</strong></span> Without (some as
         yet unspecified) help from the compiler, we cannot distinguish between union
- and class types, as a result this type will erroneously inherit from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a> for
- union types. See also <a class="link" href="is_union.html" title="is_union">is_union</a>.
- Currently (May 2005) only Visual C++ 8 has the necessary compiler <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ and class types, as a result this type will erroneously inherit from true_type for
+ union types. See also is_union.
+ Currently (May 2005) only Visual C++ 8 has the necessary compiler intrinsics
         to correctly identify union types, and therefore make is_class function correctly.
       </p>
 <p>
@@ -68,7 +67,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_class</span><span class="special">&lt;</span><span class="identifier">MyClass</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -78,7 +77,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_class</span><span class="special">&lt;</span><span class="identifier">MyClass</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_complex.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_complex.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_complex.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_complex</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_class.html" title="is_class">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,11 +24,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_complex"></a><a class="link" href="is_complex.html" title="is_complex"> is_complex</a>
+<a name="boost_typetraits.reference.is_complex"></a> is_complex
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_complex</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_complex</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If <code class="computeroutput"><span class="identifier">T</span></code>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_compound.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_compound.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_compound.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_compound</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_complex.html" title="is_complex">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,17 +24,16 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_compound"></a><a class="link" href="is_compound.html" title="is_compound"> is_compound</a>
+<a name="boost_typetraits.reference.is_compound"></a> is_compound
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_compound</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_compound</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- compound type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
- Any type that is not a fundamental type is a compound type (see also <a class="link" href="is_fundamental.html" title="is_fundamental">is_fundamental</a>).
+ compound type then inherits from true_type,
+ otherwise inherits from false_type.
+ Any type that is not a fundamental type is a compound type (see also is_fundamental).
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2.
@@ -52,7 +51,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_compound</span><span class="special">&lt;</span><span class="identifier">MyClass</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -61,7 +60,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_compound</span><span class="special">&lt;</span><span class="identifier">MyEnum</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_compound</span><span class="special">&lt;</span><span class="identifier">MyEnum</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_const.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_const.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_const.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_const</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_compound.html" title="is_compound">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_const"></a><a class="link" href="is_const.html" title="is_const"> is_const</a>
+<a name="boost_typetraits.reference.is_const"></a> is_const
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_const</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_const</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (top level) const-qualified
- type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ type then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.3.
@@ -50,7 +49,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_const</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="keyword">const</span><span class="special">&gt;</span></code> inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_const</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="keyword">const</span><span class="special">&gt;</span></code> inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -59,7 +58,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_const</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="keyword">const</span> <span class="keyword">volatile</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_const</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="keyword">const</span> <span class="keyword">volatile</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_convertible.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_convertible.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_convertible.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_convertible</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_const.html" title="is_const">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,17 +24,16 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_convertible"></a><a class="link" href="is_convertible.html" title="is_convertible"> is_convertible</a>
+<a name="boost_typetraits.reference.is_convertible"></a> is_convertible
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">From</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">To</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_convertible</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">From</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">To</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_convertible</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If an imaginary lvalue of type
         <code class="computeroutput"><span class="identifier">From</span></code> is convertible to type
- <code class="computeroutput"><span class="identifier">To</span></code> then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ <code class="computeroutput"><span class="identifier">To</span></code> then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         Type From must not be an incomplete type.
@@ -59,8 +58,7 @@
         This template will also produce compiler errors if the conversion is ambiguous,
         for example:
       </p>
-<pre class="programlisting">
-<span class="keyword">struct</span> <span class="identifier">A</span> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">struct</span> <span class="identifier">A</span> <span class="special">{};</span>
 <span class="keyword">struct</span> <span class="identifier">B</span> <span class="special">:</span> <span class="identifier">A</span> <span class="special">{};</span>
 <span class="keyword">struct</span> <span class="identifier">C</span> <span class="special">:</span> <span class="identifier">A</span> <span class="special">{};</span>
 <span class="keyword">struct</span> <span class="identifier">D</span> <span class="special">:</span> <span class="identifier">B</span><span class="special">,</span> <span class="identifier">C</span> <span class="special">{};</span>
@@ -74,7 +72,7 @@
         <span class="bold"><strong>Compiler Compatibility:</strong></span> This template is
         currently broken with Borland C++ Builder 5 (and earlier), for constructor-based
         conversions, and for the Metrowerks 7 (and earlier) compiler in all cases.
- If the compiler does not support <code class="computeroutput"><a class="link" href="is_abstract.html" title="is_abstract">is_abstract</a></code>,
+ If the compiler does not support <code class="computeroutput">is_abstract</code>,
         then the template parameter <code class="computeroutput"><span class="identifier">To</span></code>
         must not be an abstract type.
       </p>
@@ -91,7 +89,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_convertible</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -101,7 +99,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_convertible</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_empty.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_empty.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_empty.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_empty</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_convertible.html" title="is_convertible">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_empty"></a><a class="link" href="is_empty.html" title="is_empty"> is_empty</a>
+<a name="boost_typetraits.reference.is_empty"></a> is_empty
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_empty</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_empty</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is an empty class type then
- inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 10p5.
@@ -52,7 +51,7 @@
           the compiler implementing zero sized empty base classes, or
         </li>
 <li>
- the compiler providing <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ the compiler providing intrinsics
           to detect empty classes.
         </li>
 </ul></div>
@@ -84,7 +83,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_empty</span><span class="special">&lt;</span><span class="identifier">empty_class</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -94,7 +93,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_empty</span><span class="special">&lt;</span><span class="identifier">empty_class</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_enum.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_enum.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_enum.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_enum</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_empty.html" title="is_empty">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_enum"></a><a class="link" href="is_enum.html" title="is_enum"> is_enum</a>
+<a name="boost_typetraits.reference.is_enum"></a> is_enum
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_enum</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_enum</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- enum type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ enum type then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2 and 7.2.
@@ -45,7 +44,7 @@
       </p>
 <p>
         <span class="bold"><strong>Compiler Compatibility:</strong></span> Requires a correctly
- functioning <a class="link" href="is_convertible.html" title="is_convertible">is_convertible</a>
+ functioning is_convertible
         template; this means that is_enum is currently broken under Borland C++ Builder
         5, and for the Metrowerks compiler prior to version 8, other compilers should
         handle this template just fine.
@@ -68,7 +67,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_enum</span><span class="special">&lt;</span><span class="identifier">my_enum</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -78,7 +77,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_enum</span><span class="special">&lt;</span><span class="identifier">my_enum</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_floating_point.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_floating_point.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_floating_point.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_floating_point</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_enum.html" title="is_enum">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_floating_point"></a><a class="link" href="is_floating_point.html" title="is_floating_point"> is_floating_point</a>
+<a name="boost_typetraits.reference.is_floating_point"></a> is_floating_point
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_floating_point</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_floating_point</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- floating point type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ floating point type then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.1p8.
@@ -51,7 +50,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_floating_point</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -60,7 +59,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_floating_point</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_floating_point</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_function.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_function.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_function.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_function</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_floating_point.html" title="is_floating_point">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,21 +24,19 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_function"></a><a class="link" href="is_function.html" title="is_function"> is_function</a>
+<a name="boost_typetraits.reference.is_function"></a> is_function
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_function</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_function</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- function type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ function type then inherits from true_type,
+ otherwise inherits from false_type.
         Note that this template does not detect <span class="emphasis"><em>pointers to functions</em></span>,
- or <span class="emphasis"><em>references to functions</em></span>, these are detected by <a class="link" href="is_pointer.html" title="is_pointer">is_pointer</a> and <a class="link" href="is_reference.html" title="is_reference">is_reference</a> respectively:
+ or <span class="emphasis"><em>references to functions</em></span>, these are detected by is_pointer and is_reference respectively:
       </p>
-<pre class="programlisting">
-<span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">f1</span><span class="special">();</span> <span class="comment">// f1 is of function type.
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">f1</span><span class="special">();</span> <span class="comment">// f1 is of function type.
 </span><span class="keyword">typedef</span> <span class="keyword">int</span> <span class="special">(</span><span class="identifier">f2</span><span class="special">*)();</span> <span class="comment">// f2 is a pointer to a function.
 </span><span class="keyword">typedef</span> <span class="keyword">int</span> <span class="special">(</span><span class="identifier">f3</span><span class="special">&amp;)();</span> <span class="comment">// f3 is a reference to a function.
 </span></pre>
@@ -58,7 +56,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_function</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="keyword">void</span><span class="special">)&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -67,7 +65,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_function</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="special">(</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">int</span><span class="special">)&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_function</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="special">(</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">int</span><span class="special">)&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -163,11 +161,11 @@
           If you want to detect whether some type is a pointer-to-function then use:
         </p>
 <p>
- <code class="computeroutput"><a class="link" href="is_function.html" title="is_function">is_function</a><span class="special">&lt;</span><a class="link" href="remove_pointer.html" title="remove_pointer">remove_pointer</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span>
- <span class="special">&amp;&amp;</span> <a class="link" href="is_pointer.html" title="is_pointer">is_pointer</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span></code>
+ <code class="computeroutput">is_function<span class="special">&lt;</span>remove_pointer<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span>
+ <span class="special">&amp;&amp;</span> is_pointer<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span></code>
         </p>
 <p>
- or for pointers to member functions you can just use <a class="link" href="is_member_function_pointer.html" title="is_member_function_pointer">is_member_function_pointer</a>
+ or for pointers to member functions you can just use is_member_function_pointer
           directly.
         </p>
 </td></tr>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_fundamental.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_fundamental.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_fundamental.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_fundamental</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_function.html" title="is_function">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,20 +24,19 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_fundamental"></a><a class="link" href="is_fundamental.html" title="is_fundamental"> is_fundamental</a>
+<a name="boost_typetraits.reference.is_fundamental"></a> is_fundamental
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_fundamental</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_fundamental</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- fundamental type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ fundamental type then inherits from true_type,
+ otherwise inherits from false_type.
         Fundamental types include integral, floating point and void types (see also
- <a class="link" href="is_integral.html" title="is_integral">is_integral</a>,
- <a class="link" href="is_floating_point.html" title="is_floating_point">is_floating_point</a>
- and <a class="link" href="is_void.html" title="is_void">is_void</a>)
+ is_integral,
+ is_floating_point
+ and is_void)
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.1.
@@ -55,7 +54,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_fundamental</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">)&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -65,7 +64,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_fundamental</span><span class="special">&lt;</span><span class="keyword">double</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_integral.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_integral.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_integral.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_integral</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_fundamental.html" title="is_fundamental">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_integral"></a><a class="link" href="is_integral.html" title="is_integral"> is_integral</a>
+<a name="boost_typetraits.reference.is_integral"></a> is_integral
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_integral</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_integral</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- integral type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ integral type then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.1p7.
@@ -51,7 +50,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_integral</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -61,7 +60,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_integral</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_function_pointer.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_function_pointer.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_function_pointer.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_member_function_pointer</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_integral.html" title="is_integral">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,17 +24,16 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_member_function_pointer"></a><a class="link" href="is_member_function_pointer.html" title="is_member_function_pointer">
+<a name="boost_typetraits.reference.is_member_function_pointer"></a><a href="is_member_function_pointer.html" title="is_member_function_pointer">
       is_member_function_pointer</a>
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_member_function_pointer</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_member_function_pointer</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- pointer to a member function then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ pointer to a member function then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2 and 8.3.3.
@@ -51,7 +50,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_member_function_pointer</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)(</span><span class="keyword">void</span><span class="special">)&gt;</span></code> inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_member_function_pointer</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)(</span><span class="keyword">void</span><span class="special">)&gt;</span></code> inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -61,7 +60,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_member_function_pointer</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)(</span><span class="keyword">char</span><span class="special">)&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -83,8 +82,8 @@
             <code class="computeroutput"><span class="identifier">is_member_function_pointer</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)&gt;::</span><span class="identifier">value</span></code>
             is an integral constant expression that evaluates to <span class="emphasis"><em>false</em></span>:
             the argument in this case is a pointer to a data member and not a member
- function, see <a class="link" href="is_member_object_pointer.html" title="is_member_object_pointer">is_member_object_pointer</a>
- and <a class="link" href="is_member_pointer.html" title="is_member_pointer">is_member_pointer</a>
+ function, see is_member_object_pointer
+ and is_member_pointer
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_object_pointer.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_object_pointer.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_object_pointer.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_member_object_pointer</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_member_function_pointer.html" title="is_member_function_pointer">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,17 +24,16 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_member_object_pointer"></a><a class="link" href="is_member_object_pointer.html" title="is_member_object_pointer">
+<a name="boost_typetraits.reference.is_member_object_pointer"></a><a href="is_member_object_pointer.html" title="is_member_object_pointer">
       is_member_object_pointer</a>
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_member_object_pointer</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_member_object_pointer</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- pointer to a member object (a data member) then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ pointer to a member object (a data member) then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2 and 8.3.3.
@@ -51,7 +50,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_member_object_pointer</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)&gt;</span></code> inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_member_object_pointer</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)&gt;</span></code> inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -61,7 +60,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_member_object_pointer</span><span class="special">&lt;</span><span class="keyword">double</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -83,8 +82,8 @@
             <code class="computeroutput"><span class="identifier">is_member_object_pointer</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)(</span><span class="keyword">void</span><span class="special">)&gt;::</span><span class="identifier">value</span></code>
             is an integral constant expression that evaluates to <span class="emphasis"><em>false</em></span>:
             the argument in this case is a pointer to a member function and not a
- member object, see <a class="link" href="is_member_function_pointer.html" title="is_member_function_pointer">is_member_function_pointer</a>
- and <a class="link" href="is_member_pointer.html" title="is_member_pointer">is_member_pointer</a>
+ member object, see is_member_function_pointer
+ and is_member_pointer
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_pointer.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_pointer.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_member_pointer.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_member_pointer</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_member_object_pointer.html" title="is_member_object_pointer">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,17 +24,16 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_member_pointer"></a><a class="link" href="is_member_pointer.html" title="is_member_pointer"> is_member_pointer</a>
+<a name="boost_typetraits.reference.is_member_pointer"></a> is_member_pointer
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_member_pointer</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_member_pointer</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
         pointer to a member (either a function or a data member) then inherits from
- <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2 and 8.3.3.
@@ -52,7 +51,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_member_pointer</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -61,7 +60,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_member_pointer</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)(</span><span class="keyword">char</span><span class="special">)&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_member_pointer</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="special">(</span><span class="identifier">MyClass</span><span class="special">::*)(</span><span class="keyword">char</span><span class="special">)&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_object.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_object.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_object.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_object</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_member_pointer.html" title="is_member_pointer">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_object"></a><a class="link" href="is_object.html" title="is_object"> is_object</a>
+<a name="boost_typetraits.reference.is_object"></a> is_object
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_object</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_object</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- object type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ object type then inherits from true_type,
+ otherwise inherits from false_type.
         All types are object types except references, void, and function types.
       </p>
 <p>
@@ -52,7 +51,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_object</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -61,7 +60,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_object</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">*&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_object</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">*&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_pod.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_pod.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_pod.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_pod</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_object.html" title="is_object">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_pod"></a><a class="link" href="is_pod.html" title="is_pod"> is_pod</a>
+<a name="boost_typetraits.reference.is_pod"></a> is_pod
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_pod</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_pod</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- POD type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ POD type then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         POD stands for "Plain old data". Arithmetic types, and enumeration
@@ -72,7 +71,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_pod</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -81,7 +80,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_pod</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">*&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_pod</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">*&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_pointer.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_pointer.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_pointer.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_pointer</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_pod.html" title="is_pod">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,17 +24,16 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_pointer"></a><a class="link" href="is_pointer.html" title="is_pointer"> is_pointer</a>
+<a name="boost_typetraits.reference.is_pointer"></a> is_pointer
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_pointer</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_pointer</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
         pointer type (includes function pointers, but excludes pointers to members)
- then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2p2 and 8.3.1.
@@ -52,7 +51,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_pointer</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">*&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -61,7 +60,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_pointer</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">*</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_pointer</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">*</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_polymorphic.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_polymorphic.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_polymorphic.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_polymorphic</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_pointer.html" title="is_pointer">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_polymorphic"></a><a class="link" href="is_polymorphic.html" title="is_polymorphic"> is_polymorphic</a>
+<a name="boost_typetraits.reference.is_polymorphic"></a> is_polymorphic
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_polymorphic</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_polymorphic</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- polymorphic type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ polymorphic type then inherits from true_type,
+ otherwise inherits from false_type.
         Type <code class="computeroutput"><span class="identifier">T</span></code> must be a complete
         type.
       </p>
@@ -67,7 +66,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_polymorphic</span><span class="special">&lt;</span><span class="identifier">poly</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -77,7 +76,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_polymorphic</span><span class="special">&lt;</span><span class="identifier">poly</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_reference.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_reference.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_reference.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_reference</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_stateless.html" title="is_stateless">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_reference"></a><a class="link" href="is_reference.html" title="is_reference"> is_reference</a>
+<a name="boost_typetraits.reference.is_reference"></a> is_reference
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_reference</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_reference</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a reference pointer type
- then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2 and 8.3.2.
@@ -57,7 +56,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_reference</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&amp;&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -67,7 +66,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_reference</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="keyword">const</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_same.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_same.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_same.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_same</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_polymorphic.html" title="is_polymorphic">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_same"></a><a class="link" href="is_same.html" title="is_same"> is_same</a>
+<a name="boost_typetraits.reference.is_same"></a> is_same
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">U</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_same</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">U</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_same</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T and U are the same types
- then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>Header:</strong></span> <code class="computeroutput"> <span class="preprocessor">#include</span>
@@ -53,7 +52,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_same</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -62,7 +61,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_same</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_same</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_scalar.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_scalar.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_scalar.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_scalar</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_same.html" title="is_same">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_scalar"></a><a class="link" href="is_scalar.html" title="is_scalar"> is_scalar</a>
+<a name="boost_typetraits.reference.is_scalar"></a> is_scalar
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_scalar</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_scalar</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- scalar type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ scalar type then inherits from true_type,
+ otherwise inherits from false_type.
         Scalar types include integral, floating point, enumeration, pointer, and
         pointer-to-member types.
       </p>
@@ -58,7 +57,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_scalar</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">*&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -67,7 +66,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_scalar</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_scalar</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_signed.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_signed.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_signed.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_signed</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_scalar.html" title="is_scalar">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,17 +24,16 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_signed"></a><a class="link" href="is_signed.html" title="is_signed"> is_signed</a>
+<a name="boost_typetraits.reference.is_signed"></a> is_signed
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_signed</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_signed</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is an signed integer type
         or an enumerated type with an underlying signed integer type, then inherits
- from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.1, 7.2.
@@ -52,7 +51,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_signed</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -61,7 +60,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_signed</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="keyword">const</span> <span class="keyword">volatile</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_signed</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="keyword">const</span> <span class="keyword">volatile</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_stateless.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_stateless.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_stateless.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_stateless</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_signed.html" title="is_signed">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_stateless"></a><a class="link" href="is_stateless.html" title="is_stateless"> is_stateless</a>
+<a name="boost_typetraits.reference.is_stateless"></a> is_stateless
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_stateless</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_stateless</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> Ff T is a stateless type then
- inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ inherits from true_type,
+ otherwise from false_type.
       </p>
 <p>
         Type T must be a complete type.
@@ -41,11 +40,10 @@
 <p>
         A stateless type is a type that has no storage and whose constructors and
         destructors are trivial. That means that <code class="computeroutput"><span class="identifier">is_stateless</span></code>
- only inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>
+ only inherits from true_type
         if the following expression is <code class="computeroutput"><span class="keyword">true</span></code>:
       </p>
-<pre class="programlisting">
-<span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">has_trivial_constructor</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span>
+<pre class="programlisting"><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">has_trivial_constructor</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span>
 <span class="special">&amp;&amp;</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">has_trivial_copy</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span>
 <span class="special">&amp;&amp;</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">has_trivial_destructor</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span>
 <span class="special">&amp;&amp;</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_class</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span>
@@ -68,7 +66,7 @@
         Without some (as yet unspecified) help from the compiler, is_stateless will
         never report that a class or struct is stateless; this is always safe, if
         possibly sub-optimal. Currently (May 2005) only MWCW 9 and Visual C++ 8 have
- the necessary compiler <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ the necessary compiler intrinsics
         to make this template work automatically.
       </p>
 </div>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_union.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_union.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_union.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_union</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_reference.html" title="is_reference">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_union"></a><a class="link" href="is_union.html" title="is_union"> is_union</a>
+<a name="boost_typetraits.reference.is_union"></a> is_union
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_union</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_union</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- union type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ union type then inherits from true_type,
+ otherwise inherits from false_type.
         Currently requires some kind of compiler support, otherwise unions are identified
         as classes.
       </p>
@@ -44,11 +43,11 @@
         <span class="bold"><strong>Compiler Compatibility:</strong></span> Without (some as
         yet unspecified) help from the compiler, we cannot distinguish between union
         and class types using only standard C++, as a result this type will never
- inherit from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
+ inherit from true_type,
         unless the user explicitly specializes the template for their user-defined
         union types, or unless the compiler supplies some unspecified intrinsic that
         implements this functionality. Currently (May 2005) only Visual C++ 8 has
- the necessary compiler <a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>
+ the necessary compiler intrinsics
         to make this trait "just work" without user intervention.
       </p>
 <p>
@@ -64,7 +63,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_union</span><span class="special">&lt;</span><span class="keyword">void</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -74,7 +73,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_union</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">void</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_unsigned.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_unsigned.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_unsigned.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_unsigned</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_union.html" title="is_union">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,17 +24,16 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_unsigned"></a><a class="link" href="is_unsigned.html" title="is_unsigned"> is_unsigned</a>
+<a name="boost_typetraits.reference.is_unsigned"></a> is_unsigned
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_unsigned</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_unsigned</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is an unsigned integer type
         or an enumerated type with an underlying unsigned integer type, then inherits
- from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.1, 7.2.
@@ -51,7 +50,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_unsigned</span><span class="special">&lt;</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">&gt;</span></code> inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_unsigned</span><span class="special">&lt;</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">&gt;</span></code> inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -62,7 +61,7 @@
 <p>
             <code class="computeroutput"><span class="identifier">is_unsigned</span><span class="special">&lt;</span><span class="keyword">unsigned</span> <span class="keyword">int</span>
             <span class="keyword">const</span> <span class="keyword">volatile</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_void.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_void.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_void.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_void</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_unsigned.html" title="is_unsigned">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_void"></a><a class="link" href="is_void.html" title="is_void"> is_void</a>
+<a name="boost_typetraits.reference.is_void"></a> is_void
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_void</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_void</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (possibly cv-qualified)
- void type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ void type then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.1p9.
@@ -51,7 +50,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_void</span><span class="special">&lt;</span><span class="keyword">void</span><span class="special">&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -61,7 +60,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_void</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">void</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
- is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_volatile.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_volatile.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/is_volatile.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>is_volatile</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_void.html" title="is_void">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,16 +24,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.is_volatile"></a><a class="link" href="is_volatile.html" title="is_volatile"> is_volatile</a>
+<a name="boost_typetraits.reference.is_volatile"></a> is_volatile
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">is_volatile</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code><a class="link" href="integral_constant.html" title="integral_constant">true_type</a>-or-<a class="link" href="integral_constant.html" title="integral_constant">false_type</a></code></em> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_volatile</span> <span class="special">:</span> <span class="keyword">public</span> <em class="replaceable"><code>true_type-or-false_type</code></em> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> If T is a (top level) volatile-qualified
- type then inherits from <a class="link" href="integral_constant.html" title="integral_constant">true_type</a>,
- otherwise inherits from <a class="link" href="integral_constant.html" title="integral_constant">false_type</a>.
+ type then inherits from true_type,
+ otherwise inherits from false_type.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.3.
@@ -50,7 +49,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">is_volatile</span><span class="special">&lt;</span><span class="keyword">volatile</span> <span class="keyword">int</span><span class="special">&gt;</span></code> inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <code class="computeroutput"><span class="identifier">is_volatile</span><span class="special">&lt;</span><span class="keyword">volatile</span> <span class="keyword">int</span><span class="special">&gt;</span></code> inherits from <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>
@@ -60,7 +59,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">is_volatile</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">volatile</span>
- <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">true_type</a></code>.
+ <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">true_type</code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/make_signed.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/make_signed.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/make_signed.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>make_signed</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="is_volatile.html" title="is_volatile">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.make_signed"></a><a class="link" href="make_signed.html" title="make_signed"> make_signed</a>
+<a name="boost_typetraits.reference.make_signed"></a> make_signed
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">make_signed</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -55,7 +54,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2676867"></a><p class="title"><b>Table 1.15. Examples</b></p>
+<a name="id546331"></a><p class="title"><b>Table 1.15. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>make_unsigned</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="make_signed.html" title="make_signed">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.make_unsigned"></a><a class="link" href="make_unsigned.html" title="make_unsigned"> make_unsigned</a>
+<a name="boost_typetraits.reference.make_unsigned"></a> make_unsigned
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">make_unsigned</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -55,7 +54,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2677441"></a><p class="title"><b>Table 1.16. Examples</b></p>
+<a name="id546963"></a><p class="title"><b>Table 1.16. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/promote.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/promote.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/promote.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>promote</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="make_unsigned.html" title="make_unsigned">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.promote"></a><a class="link" href="promote.html" title="promote"> promote</a>
+<a name="boost_typetraits.reference.promote"></a> promote
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">promote</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -39,8 +38,8 @@
         then applies integral and floating point promotions to <code class="computeroutput"><span class="identifier">T</span></code>
         and keeps cv-qualifiers of <code class="computeroutput"><span class="identifier">T</span></code>,
         otherwise leaves <code class="computeroutput"><span class="identifier">T</span></code> unchanged.
- See also <a class="link" href="integral_promotion.html" title="integral_promotion">integral_promotion</a>
- and <a class="link" href="floating_point_promotion.html" title="floating_point_promotion">floating_point_promotion</a>.
+ See also integral_promotion
+ and floating_point_promotion.
       </p>
 <p>
         <span class="bold"><strong>C++ Standard Reference:</strong></span> 4.5 except 4.5/3
@@ -52,7 +51,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2678076"></a><p class="title"><b>Table 1.17. Examples</b></p>
+<a name="id547663"></a><p class="title"><b>Table 1.17. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/rank.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/rank.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/rank.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>rank</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="promote.html" title="promote">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,15 +24,14 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.rank"></a><a class="link" href="rank.html" title="rank"> rank</a>
+<a name="boost_typetraits.reference.rank"></a> rank
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
-<span class="keyword">struct</span> <span class="identifier">rank</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">RANK</span><span class="special">(</span><span class="identifier">T</span><span class="special">)&gt;</span> <span class="special">{};</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">rank</span> <span class="special">:</span> <span class="keyword">public</span> integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">RANK</span><span class="special">(</span><span class="identifier">T</span><span class="special">)&gt;</span> <span class="special">{};</span>
 </pre>
 <p>
         <span class="bold"><strong>Inherits:</strong></span> Class template rank inherits from
- <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">RANK</span><span class="special">(</span><span class="identifier">T</span><span class="special">)&gt;</span></code>,
+ <code class="computeroutput">integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">RANK</span><span class="special">(</span><span class="identifier">T</span><span class="special">)&gt;</span></code>,
         where <code class="computeroutput"><span class="identifier">RANK</span><span class="special">(</span><span class="identifier">T</span><span class="special">)</span></code> is the
         number of array dimensions in type <code class="computeroutput"><span class="identifier">T</span></code>.
       </p>
@@ -53,7 +52,7 @@
           </p>
 <p>
             <code class="computeroutput"><span class="identifier">rank</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">[]&gt;</span></code>
- inherits from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;</span></code>.
+ inherits from <code class="computeroutput">integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;</span></code>.
           </p>
 <p>
         </p>
@@ -62,7 +61,7 @@
 <p>
           </p>
 <p>
- <code class="computeroutput"><span class="identifier">rank</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">[</span><span class="number">2</span><span class="special">][</span><span class="number">3</span><span class="special">][</span><span class="number">4</span><span class="special">]&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="number">3</span><span class="special">&gt;</span></code>.
+ <code class="computeroutput"><span class="identifier">rank</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">[</span><span class="number">2</span><span class="special">][</span><span class="number">3</span><span class="special">][</span><span class="number">4</span><span class="special">]&gt;::</span><span class="identifier">type</span></code> is the type <code class="computeroutput">integral_constant<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="number">3</span><span class="special">&gt;</span></code>.
           </p>
 <p>
         </p>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>remove_all_extents</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="rank.html" title="rank">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.remove_all_extents"></a><a class="link" href="remove_all_extents.html" title="remove_all_extents"> remove_all_extents</a>
+<a name="boost_typetraits.reference.remove_all_extents"></a> remove_all_extents
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">remove_all_extents</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -46,7 +45,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -55,7 +54,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2679381"></a><p class="title"><b>Table 1.18. Examples</b></p>
+<a name="id549096"></a><p class="title"><b>Table 1.18. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>remove_const</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="remove_all_extents.html" title="remove_all_extents">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.remove_const"></a><a class="link" href="remove_const.html" title="remove_const"> remove_const</a>
+<a name="boost_typetraits.reference.remove_const"></a> remove_const
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">remove_const</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -45,7 +44,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -54,7 +53,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2680038"></a><p class="title"><b>Table 1.19. Examples</b></p>
+<a name="id549818"></a><p class="title"><b>Table 1.19. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>remove_cv</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="remove_const.html" title="remove_const">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.remove_cv"></a><a class="link" href="remove_cv.html" title="remove_cv"> remove_cv</a>
+<a name="boost_typetraits.reference.remove_cv"></a> remove_cv
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">remove_cv</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -45,7 +44,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -54,7 +53,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2680677"></a><p class="title"><b>Table 1.20. Examples</b></p>
+<a name="id550521"></a><p class="title"><b>Table 1.20. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>remove_extent</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="remove_cv.html" title="remove_cv">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.remove_extent"></a><a class="link" href="remove_extent.html" title="remove_extent"> remove_extent</a>
+<a name="boost_typetraits.reference.remove_extent"></a> remove_extent
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">remove_extent</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -46,7 +45,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -55,7 +54,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2681318"></a><p class="title"><b>Table 1.21. Examples</b></p>
+<a name="id551225"></a><p class="title"><b>Table 1.21. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>remove_pointer</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="remove_extent.html" title="remove_extent">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.remove_pointer"></a><a class="link" href="remove_pointer.html" title="remove_pointer"> remove_pointer</a>
+<a name="boost_typetraits.reference.remove_pointer"></a> remove_pointer
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">remove_pointer</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -45,7 +44,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -54,7 +53,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2681988"></a><p class="title"><b>Table 1.22. Examples</b></p>
+<a name="id551960"></a><p class="title"><b>Table 1.22. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>remove_reference</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="remove_pointer.html" title="remove_pointer">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.remove_reference"></a><a class="link" href="remove_reference.html" title="remove_reference"> remove_reference</a>
+<a name="boost_typetraits.reference.remove_reference"></a> remove_reference
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">remove_reference</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -45,7 +44,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -54,7 +53,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2682606"></a><p class="title"><b>Table 1.23. Examples</b></p>
+<a name="id552640"></a><p class="title"><b>Table 1.23. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>remove_volatile</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="remove_reference.html" title="remove_reference">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.remove_volatile"></a><a class="link" href="remove_volatile.html" title="remove_volatile"> remove_volatile</a>
+<a name="boost_typetraits.reference.remove_volatile"></a> remove_volatile
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">remove_volatile</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>
@@ -45,7 +44,7 @@
         does not support partial specialization of class-templates then this template
         will compile, but the member <code class="computeroutput"><span class="identifier">type</span></code>
         will always be the same as type <code class="computeroutput"><span class="identifier">T</span></code>
- except where <a class="link" href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
+ except where <a href="../category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">compiler
         workarounds</a> have been applied.
       </p>
 <p>
@@ -54,7 +53,7 @@
         or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id2683157"></a><p class="title"><b>Table 1.24. Examples</b></p>
+<a name="id553246"></a><p class="title"><b>Table 1.24. Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/type_with_alignment.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/type_with_alignment.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/reference/type_with_alignment.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>type_with_alignment</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../reference.html" title="Alphabetical Reference">
 <link rel="prev" href="remove_volatile.html" title="remove_volatile">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,10 +24,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_typetraits.reference.type_with_alignment"></a><a class="link" href="type_with_alignment.html" title="type_with_alignment"> type_with_alignment</a>
+<a name="boost_typetraits.reference.type_with_alignment"></a> type_with_alignment
 </h3></div></div></div>
-<pre class="programlisting">
-<span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Align</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">Align</span><span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">type_with_alignment</span>
 <span class="special">{</span>
    <span class="keyword">typedef</span> <em class="replaceable"><code>see-below</code></em> <span class="identifier">type</span><span class="special">;</span>

Modified: branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/user_defined.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/user_defined.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/boost_typetraits/user_defined.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>User Defined Specializations</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="up" href="../index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="prev" href="category/function.html" title="Decomposing Function Types">
@@ -14,8 +14,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -24,18 +24,17 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="boost_typetraits.user_defined"></a><a class="link" href="user_defined.html" title="User Defined Specializations"> User Defined Specializations</a>
+<a name="boost_typetraits.user_defined"></a> User Defined Specializations
 </h2></div></div></div>
 <p>
       Occationally the end user may need to provide their own specialization for
       one of the type traits - typically where intrinsic compiler support is required
       to implement a specific trait fully. These specializations should derive from
- boost::<a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a>
- or boost::<a class="link" href="reference/integral_constant.html" title="integral_constant">false_type</a>
+ boost::true_type
+ or boost::false_type
       as appropriate:
     </p>
-<pre class="programlisting">
-<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">/</span><span class="identifier">is_pod</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">/</span><span class="identifier">is_pod</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">/</span><span class="identifier">is_class</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">/</span><span class="identifier">is_union</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 
@@ -49,16 +48,16 @@
 <span class="keyword">namespace</span> <span class="identifier">boost</span>
 <span class="special">{</span>
    <span class="keyword">template</span><span class="special">&lt;&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="reference/is_pod.html" title="is_pod">is_pod</a><span class="special">&lt;</span><span class="identifier">my_pod</span><span class="special">&gt;</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a><span class="special">{};</span>
+ <span class="keyword">struct</span> is_pod<span class="special">&lt;</span><span class="identifier">my_pod</span><span class="special">&gt;</span> <span class="special">:</span> <span class="keyword">public</span> true_type<span class="special">{};</span>
       
    <span class="keyword">template</span><span class="special">&lt;&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="reference/is_pod.html" title="is_pod">is_pod</a><span class="special">&lt;</span><span class="identifier">my_union</span><span class="special">&gt;</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a><span class="special">{};</span>
+ <span class="keyword">struct</span> is_pod<span class="special">&lt;</span><span class="identifier">my_union</span><span class="special">&gt;</span> <span class="special">:</span> <span class="keyword">public</span> true_type<span class="special">{};</span>
    
    <span class="keyword">template</span><span class="special">&lt;&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="reference/is_union.html" title="is_union">is_union</a><span class="special">&lt;</span><span class="identifier">my_union</span><span class="special">&gt;</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a><span class="special">{};</span>
+ <span class="keyword">struct</span> is_union<span class="special">&lt;</span><span class="identifier">my_union</span><span class="special">&gt;</span> <span class="special">:</span> <span class="keyword">public</span> true_type<span class="special">{};</span>
    
    <span class="keyword">template</span><span class="special">&lt;&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="reference/is_class.html" title="is_class">is_class</a><span class="special">&lt;</span><span class="identifier">my_union</span><span class="special">&gt;</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="reference/integral_constant.html" title="integral_constant">false_type</a><span class="special">{};</span>
+ <span class="keyword">struct</span> is_class<span class="special">&lt;</span><span class="identifier">my_union</span><span class="special">&gt;</span> <span class="special">:</span> <span class="keyword">public</span> false_type<span class="special">{};</span>
 <span class="special">}</span>
 </pre>
 </div>

Modified: branches/CMake/release/libs/type_traits/doc/html/index.html
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/html/index.html (original)
+++ branches/CMake/release/libs/type_traits/doc/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Chapter 1. Boost.TypeTraits</title>
 <link rel="stylesheet" href="../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot_2006-12-17_0120">
 <link rel="start" href="index.html" title="Chapter 1. Boost.TypeTraits">
 <link rel="next" href="boost_typetraits/intro.html" title="Introduction">
 </head>
@@ -12,8 +12,8 @@
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
-<td align="center">People</td>
-<td align="center">FAQ</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
 <td align="center">More</td>
 </tr></table>
 <hr>
@@ -30,7 +30,7 @@
       Marcus, Itay Maman, John Maddock, Alexander Nasonov, Thorsten Ottosen, Robert
       Ramey and Jeremy Siek</p></div>
 <div><div class="legalnotice">
-<a name="id2625911"></a><p>
+<a name="id445702"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -161,7 +161,7 @@
   </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: November 08, 2007 at 09:38:22 +0000</small></p></td>
+<td align="left"><p><small>Last revised: February 21, 2008 at 13:51:18 +0000</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: branches/CMake/release/libs/type_traits/doc/intrinsics.qbk
==============================================================================
--- branches/CMake/release/libs/type_traits/doc/intrinsics.qbk (original)
+++ branches/CMake/release/libs/type_traits/doc/intrinsics.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,7 +9,8 @@
 
 There are some traits that can not be implemented within the current C++ language:
 to make these traits "just work" with user defined types, some kind of additional
-help from the compiler is required. Currently (May 2005) MWCW 9 and Visual C++ 8
+help from the compiler is required. Currently (April 2008) Visual C++ 8 and 9,
+GNU GCC 4.3 and MWCW 9
 provide the necessary intrinsics, and other compilers will no doubt follow in due
 course.
 
@@ -56,6 +57,15 @@
    [[BOOST_HAS_NOTHROW_COPY(T)][Should evaluate to true if `T(t)` can not throw]]
    [[BOOST_HAS_NOTHROW_ASSIGN(T)][Should evaluate to true if `T t, u; t = u` can not throw]]
    [[BOOST_HAS_VIRTUAL_DESTRUCTOR(T)][Should evaluate to true T has a virtual destructor]]
+
+ [[BOOST_IS_ABSTRACT(T)][Should evaluate to true if T is an abstract type]]
+ [[BOOST_IS_BASE_OF(T,U)][Should evaluate to true if T is a base class of U]]
+ [[BOOST_IS_CLASS(T)][Should evaluate to true if T is a class type]]
+ [[BOOST_IS_CONVERTIBLE(T,U)][Should evaluate to true if T is convertible to U]]
+ [[BOOST_IS_ENUM(T)][Should evaluate to true is T is an enum]]
+ [[BOOST_IS_POLYMORPHIC(T)][Should evaluate to true if T is a polymorphic type]]
+ [[BOOST_ALIGNMENT_OF(T)][Should evaluate to the alignment requirements of type T.]]
+
 ]
 
 [endsect]

Modified: branches/CMake/release/libs/type_traits/test/alignment_of_test.cpp
==============================================================================
--- branches/CMake/release/libs/type_traits/test/alignment_of_test.cpp (original)
+++ branches/CMake/release/libs/type_traits/test/alignment_of_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,6 +16,37 @@
 // VC++ emits an awful lot of warnings unless we define these:
 #ifdef BOOST_MSVC
 # pragma warning(disable:4244)
+//
+// What follows here is the test case for issue 1946.
+//
+#include <boost/function.hpp>
+// This kind of packing is set within MSVC 9.0 headers.
+// E.g. std::ostream has it.
+#pragma pack(push,8)
+
+// The issue is gone if Root has no data members
+struct Root { int a; };
+// The issue is gone if Root is inherited non-virtually
+struct A : virtual public Root {};
+
+#pragma pack(pop)
+//
+// This class has 8-byte alignment but is 44 bytes in size, which means
+// that elements in an array of this type will not actually be 8 byte
+// aligned. This appears to be an MSVC bug, and throws off our
+// alignment calculations: causing us to report a non-sensical 12-byte
+// alignment for this type. This is fixed by using the native __alignof
+// operator.
+//
+class issue1946 :
+ public A
+{
+public:
+ // The issue is gone if the type is not a boost::function. The signature doesn't matter.
+ typedef boost::function0< void > function_type;
+ function_type m_function;
+};
+
 #endif
 
 
@@ -63,6 +94,10 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::alignment_of<empty_UDT>::value, ALIGNOF(empty_UDT));
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::alignment_of<union_UDT>::value, ALIGNOF(union_UDT));
 
+#if defined(BOOST_MSVC) && (BOOST_MSVC >= 1400)
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::alignment_of<issue1946>::value, ALIGNOF(issue1946));
+#endif
+
 TT_TEST_END
 
 

Modified: branches/CMake/release/libs/type_traits/test/check_integral_constant.hpp
==============================================================================
--- branches/CMake/release/libs/type_traits/test/check_integral_constant.hpp (original)
+++ branches/CMake/release/libs/type_traits/test/check_integral_constant.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -59,10 +59,16 @@
       BOOST_CHECK_MESSAGE(true, "Validating Integral Constant Expression: \"" << BOOST_STRINGIZE(expression) << "\"");\
    }\
    if(!::boost::detail::tt_compare((int)expression, expected_value))\
+ {\
       if(!::boost::detail::tt_compare((int)expression, alternate_value))\
+ {\
          BOOST_CHECK_MESSAGE(false, "The expression: \"" << BOOST_STRINGIZE(expression) << "\" had an invalid value (found " << ::boost::detail::integral_constant<(int)(expression)>::value() << ", expected " << expected_value << ")" );\
+ }\
       else\
- BOOST_WARN_MESSAGE(false, "<note>The expression: \"" << BOOST_STRINGIZE(expression) << "\" did not have the value we wish it to have (found " << ::boost::detail::integral_constant<(int)(expression)>::value() << ", expected " << expected_value << ")</note>" )
+ {\
+ BOOST_WARN_MESSAGE(false, "<note>The expression: \"" << BOOST_STRINGIZE(expression) << "\" did not have the value we wish it to have (found " << ::boost::detail::integral_constant<(int)(expression)>::value() << ", expected " << expected_value << ")</note>" );\
+ }\
+ }
 
 
    }//detail

Modified: branches/CMake/release/libs/type_traits/test/has_virtual_destructor_test.cpp
==============================================================================
--- branches/CMake/release/libs/type_traits/test/has_virtual_destructor_test.cpp (original)
+++ branches/CMake/release/libs/type_traits/test/has_virtual_destructor_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,6 +14,7 @@
 
 #include <iostream>
 #include <stdexcept>
+#include <new>
 
 class polymorphic_no_virtual_destructor
 {

Modified: branches/CMake/release/libs/type_traits/test/is_convertible_test.cpp
==============================================================================
--- branches/CMake/release/libs/type_traits/test/is_convertible_test.cpp (original)
+++ branches/CMake/release/libs/type_traits/test/is_convertible_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -125,9 +125,9 @@
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<long,int>::value), true);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int,char>::value), true);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<long long,int>::value), true);
-BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<long long,char>::value), true);
-BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<long long,float>::value), true);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<boost::long_long_type,int>::value), true);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<boost::long_long_type,char>::value), true);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<boost::long_long_type,float>::value), true);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<__int64,int>::value), true);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<__int64,char>::value), true);

Modified: branches/CMake/release/libs/type_traits/test/make_signed_test.cpp
==============================================================================
--- branches/CMake/release/libs/type_traits/test/make_signed_test.cpp (original)
+++ branches/CMake/release/libs/type_traits/test/make_signed_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,7 +20,7 @@
 BOOST_CHECK_TYPE(::tt::make_signed<int>::type, int);
 BOOST_CHECK_TYPE(::tt::make_signed<long>::type, long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_signed<long long>::type, long long);
+BOOST_CHECK_TYPE(::tt::make_signed<boost::long_long_type>::type, boost::long_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_signed<__int64>::type, __int64);
 #endif
@@ -30,7 +30,7 @@
 BOOST_CHECK_TYPE(::tt::make_signed<const int>::type, const int);
 BOOST_CHECK_TYPE(::tt::make_signed<const long>::type, const long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_signed<const long long>::type, const long long);
+BOOST_CHECK_TYPE(::tt::make_signed<const boost::long_long_type>::type, const boost::long_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_signed<const __int64>::type, const __int64);
 #endif
@@ -40,7 +40,7 @@
 BOOST_CHECK_TYPE(::tt::make_signed<volatile int>::type, volatile int);
 BOOST_CHECK_TYPE(::tt::make_signed<volatile long>::type, volatile long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_signed<volatile long long>::type, volatile long long);
+BOOST_CHECK_TYPE(::tt::make_signed<volatile boost::long_long_type>::type, volatile boost::long_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_signed<volatile __int64>::type, volatile __int64);
 #endif
@@ -50,7 +50,7 @@
 BOOST_CHECK_TYPE(::tt::make_signed<const volatile int>::type, const volatile int);
 BOOST_CHECK_TYPE(::tt::make_signed<const volatile long>::type, const volatile long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_signed<const volatile long long>::type, const volatile long long);
+BOOST_CHECK_TYPE(::tt::make_signed<const volatile boost::long_long_type>::type, const volatile boost::long_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_signed<const volatile __int64>::type, const volatile __int64);
 #endif
@@ -61,7 +61,7 @@
 BOOST_CHECK_TYPE(::tt::make_signed<unsigned int>::type, int);
 BOOST_CHECK_TYPE(::tt::make_signed<unsigned long>::type, long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_signed<unsigned long long>::type, long long);
+BOOST_CHECK_TYPE(::tt::make_signed<boost::ulong_long_type>::type, boost::long_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_signed<unsigned __int64>::type, __int64);
 #endif
@@ -71,7 +71,7 @@
 BOOST_CHECK_TYPE(::tt::make_signed<const unsigned int>::type, const int);
 BOOST_CHECK_TYPE(::tt::make_signed<const unsigned long>::type, const long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_signed<const unsigned long long>::type, const long long);
+BOOST_CHECK_TYPE(::tt::make_signed<const boost::ulong_long_type>::type, const boost::long_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_signed<const unsigned __int64>::type, const __int64);
 #endif
@@ -81,7 +81,7 @@
 BOOST_CHECK_TYPE(::tt::make_signed<volatile unsigned int>::type, volatile int);
 BOOST_CHECK_TYPE(::tt::make_signed<volatile unsigned long>::type, volatile long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_signed<volatile unsigned long long>::type, volatile long long);
+BOOST_CHECK_TYPE(::tt::make_signed<volatile boost::ulong_long_type>::type, volatile boost::long_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_signed<volatile unsigned __int64>::type, volatile __int64);
 #endif
@@ -91,7 +91,7 @@
 BOOST_CHECK_TYPE(::tt::make_signed<const volatile unsigned int>::type, const volatile int);
 BOOST_CHECK_TYPE(::tt::make_signed<const volatile unsigned long>::type, const volatile long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_signed<const volatile unsigned long long>::type, const volatile long long);
+BOOST_CHECK_TYPE(::tt::make_signed<const volatile boost::ulong_long_type>::type, const volatile boost::long_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_signed<const volatile unsigned __int64>::type, const volatile __int64);
 #endif

Modified: branches/CMake/release/libs/type_traits/test/make_unsigned_test.cpp
==============================================================================
--- branches/CMake/release/libs/type_traits/test/make_unsigned_test.cpp (original)
+++ branches/CMake/release/libs/type_traits/test/make_unsigned_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,7 +20,7 @@
 BOOST_CHECK_TYPE(::tt::make_unsigned<int>::type, unsigned int);
 BOOST_CHECK_TYPE(::tt::make_unsigned<long>::type, unsigned long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_unsigned<long long>::type, unsigned long long);
+BOOST_CHECK_TYPE(::tt::make_unsigned<boost::long_long_type>::type, boost::ulong_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_unsigned<__int64>::type, unsigned __int64);
 #endif
@@ -30,7 +30,7 @@
 BOOST_CHECK_TYPE(::tt::make_unsigned<const int>::type, const unsigned int);
 BOOST_CHECK_TYPE(::tt::make_unsigned<const long>::type, const unsigned long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_unsigned<const long long>::type, const unsigned long long);
+BOOST_CHECK_TYPE(::tt::make_unsigned<const boost::long_long_type>::type, const boost::ulong_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_unsigned<const __int64>::type, const unsigned __int64);
 #endif
@@ -40,7 +40,7 @@
 BOOST_CHECK_TYPE(::tt::make_unsigned<volatile int>::type, volatile unsigned int);
 BOOST_CHECK_TYPE(::tt::make_unsigned<volatile long>::type, volatile unsigned long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_unsigned<volatile long long>::type, volatile unsigned long long);
+BOOST_CHECK_TYPE(::tt::make_unsigned<volatile boost::long_long_type>::type, volatile boost::ulong_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_unsigned<volatile __int64>::type, volatile unsigned __int64);
 #endif
@@ -50,7 +50,7 @@
 BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile int>::type, const volatile unsigned int);
 BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile long>::type, const volatile unsigned long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile long long>::type, const volatile unsigned long long);
+BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile boost::long_long_type>::type, const volatile boost::ulong_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile __int64>::type, const volatile unsigned __int64);
 #endif
@@ -61,7 +61,7 @@
 BOOST_CHECK_TYPE(::tt::make_unsigned<unsigned int>::type, unsigned int);
 BOOST_CHECK_TYPE(::tt::make_unsigned<unsigned long>::type, unsigned long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_unsigned<unsigned long long>::type, unsigned long long);
+BOOST_CHECK_TYPE(::tt::make_unsigned<boost::ulong_long_type>::type, boost::ulong_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_unsigned<unsigned __int64>::type, unsigned __int64);
 #endif
@@ -71,7 +71,7 @@
 BOOST_CHECK_TYPE(::tt::make_unsigned<const unsigned int>::type, const unsigned int);
 BOOST_CHECK_TYPE(::tt::make_unsigned<const unsigned long>::type, const unsigned long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_unsigned<const unsigned long long>::type, const unsigned long long);
+BOOST_CHECK_TYPE(::tt::make_unsigned<const boost::ulong_long_type>::type, const boost::ulong_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_unsigned<const unsigned __int64>::type, const unsigned __int64);
 #endif
@@ -81,7 +81,7 @@
 BOOST_CHECK_TYPE(::tt::make_unsigned<volatile unsigned int>::type, volatile unsigned int);
 BOOST_CHECK_TYPE(::tt::make_unsigned<volatile unsigned long>::type, volatile unsigned long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_unsigned<volatile unsigned long long>::type, volatile unsigned long long);
+BOOST_CHECK_TYPE(::tt::make_unsigned<volatile boost::ulong_long_type>::type, volatile boost::ulong_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_unsigned<volatile unsigned __int64>::type, volatile unsigned __int64);
 #endif
@@ -91,7 +91,7 @@
 BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile unsigned int>::type, const volatile unsigned int);
 BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile unsigned long>::type, const volatile unsigned long);
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile unsigned long long>::type, const volatile unsigned long long);
+BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile boost::ulong_long_type>::type, const volatile boost::ulong_long_type);
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile unsigned __int64>::type, const volatile unsigned __int64);
 #endif

Modified: branches/CMake/release/libs/type_traits/test/type_with_alignment_test.cpp
==============================================================================
--- branches/CMake/release/libs/type_traits/test/type_with_alignment_test.cpp (original)
+++ branches/CMake/release/libs/type_traits/test/type_with_alignment_test.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,193 +14,91 @@
 # include <boost/type_traits/is_pod.hpp>
 #endif
 
+#if defined(BOOST_MSVC) || (defined(BOOST_INTEL) && defined(_MSC_VER))
+#if (_MSC_VER >= 1400) && defined(_M_IX86)
+#include <xmmintrin.h>
+#endif
+struct __declspec(align(8)) a8 { char m[8]; };
+struct __declspec(align(16)) a16 { char m[16]; };
+struct __declspec(align(32)) a32 { char m[32]; };
+struct __declspec(align(64)) a64 { char m[64]; };
+struct __declspec(align(128)) a128 { char m[128]; };
+#endif
+
+void check_call2(...){}
+
+template <class T>
+void check_call(const T& v)
+{
+ check_call2(v);
+}
+
+#define TYPE_WITH_ALIGNMENT_TEST(T)\
+{\
+std::cout << "\ntesting type " << typeid(T).name() << std::endl;\
+std::cout << "Alignment of T is " << ::tt::alignment_of< T >::value << std::endl;\
+std::cout << "Aligned type is " << typeid(::tt::type_with_alignment< ::tt::alignment_of< T >::value>::type).name() << std::endl;\
+std::cout << "Alignment of aligned type is " << ::tt::alignment_of<\
+ ::tt::type_with_alignment<\
+ ::tt::alignment_of< T >::value\
+ >::type\
+>::value << std::endl;\
+BOOST_CHECK(::tt::alignment_of<\
+ ::tt::type_with_alignment<\
+ ::tt::alignment_of< T >::value\
+ >::type\
+ >::value == ::boost::alignment_of< T >::value);\
+BOOST_CHECK(::tt::is_pod<\
+ ::tt::type_with_alignment<\
+ ::tt::alignment_of< T >::value>::type\
+ >::value);\
+}
+#define TYPE_WITH_ALIGNMENT_TEST_EX(T)\
+ TYPE_WITH_ALIGNMENT_TEST(T)\
+{\
+ ::tt::type_with_alignment<\
+ ::tt::alignment_of< T >::value\
+ >::type val;\
+ check_call(val);\
+}
+
+
 TT_TEST_BEGIN(type_with_alignment)
 
-BOOST_MESSAGE(typeid(::tt::type_with_alignment<
- ::tt::alignment_of<char>::value
- >::type).name());
-
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<char>::value
- >::type
- >::value == ::boost::alignment_of<char>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<short>::value
- >::type
- >::value == ::boost::alignment_of<short>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<int>::value
- >::type
- >::value == ::boost::alignment_of<int>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<long>::value
- >::type
- >::value == ::boost::alignment_of<long>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<float>::value
- >::type
- >::value == ::boost::alignment_of<float>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<double>::value
- >::type
- >::value == ::boost::alignment_of<double>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<long double>::value
- >::type
- >::value == ::boost::alignment_of<long double>::value);
+TYPE_WITH_ALIGNMENT_TEST_EX(char)
+TYPE_WITH_ALIGNMENT_TEST_EX(short)
+TYPE_WITH_ALIGNMENT_TEST_EX(int)
+TYPE_WITH_ALIGNMENT_TEST_EX(long)
+TYPE_WITH_ALIGNMENT_TEST_EX(float)
+TYPE_WITH_ALIGNMENT_TEST_EX(double)
+TYPE_WITH_ALIGNMENT_TEST_EX(long double)
+
 #ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of< ::boost::long_long_type>::value
- >::type
- >::value == ::boost::alignment_of< ::boost::long_long_type>::value);
+TYPE_WITH_ALIGNMENT_TEST_EX(::boost::long_long_type)
 #endif
 #ifdef BOOST_HAS_MS_INT64
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<__int64>::value
- >::type
- >::value == ::boost::alignment_of<__int64>::value);
-#endif
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<int[4]>::value
- >::type
- >::value == ::boost::alignment_of<int[4]>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<int(*)(int)>::value
- >::type
- >::value == ::boost::alignment_of<int(*)(int)>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<int*>::value
- >::type
- >::value == ::boost::alignment_of<int*>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<VB>::value
- >::type
- >::value == ::boost::alignment_of<VB>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<VD>::value
- >::type
- >::value == ::boost::alignment_of<VD>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<enum_UDT>::value
- >::type
- >::value == ::boost::alignment_of<enum_UDT>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<mf2>::value
- >::type
- >::value == ::boost::alignment_of<mf2>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<POD_UDT>::value
- >::type
- >::value == ::boost::alignment_of<POD_UDT>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<empty_UDT>::value
- >::type
- >::value == ::boost::alignment_of<empty_UDT>::value);
-BOOST_CHECK(::tt::alignment_of<
- ::tt::type_with_alignment<
- ::tt::alignment_of<union_UDT>::value
- >::type
- >::value == ::boost::alignment_of<union_UDT>::value);
-
-// check that the type produced are POD's:
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<char>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<short>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<int>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<long>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<float>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<double>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<long double>::value>::type
- >::value);
-#ifdef BOOST_HAS_LONG_LONG
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of< ::boost::long_long_type>::value>::type
- >::value);
+TYPE_WITH_ALIGNMENT_TEST_EX(__int64)
+#endif
+TYPE_WITH_ALIGNMENT_TEST_EX(int[4])
+TYPE_WITH_ALIGNMENT_TEST_EX(int(*)(int))
+TYPE_WITH_ALIGNMENT_TEST_EX(int*)
+TYPE_WITH_ALIGNMENT_TEST_EX(VB)
+TYPE_WITH_ALIGNMENT_TEST_EX(VD)
+TYPE_WITH_ALIGNMENT_TEST_EX(enum_UDT)
+TYPE_WITH_ALIGNMENT_TEST_EX(mf2)
+TYPE_WITH_ALIGNMENT_TEST_EX(POD_UDT)
+TYPE_WITH_ALIGNMENT_TEST_EX(empty_UDT)
+TYPE_WITH_ALIGNMENT_TEST_EX(union_UDT)
+
+#if defined(BOOST_MSVC) || (defined(BOOST_INTEL) && defined(_MSC_VER))
+#if (_MSC_VER >= 1400) && defined(_M_IX86)
+TYPE_WITH_ALIGNMENT_TEST(__m128)
+TYPE_WITH_ALIGNMENT_TEST(__m64)
+#endif
+TYPE_WITH_ALIGNMENT_TEST(a8)
+TYPE_WITH_ALIGNMENT_TEST(a16)
+TYPE_WITH_ALIGNMENT_TEST(a32)
 #endif
-#ifdef BOOST_HAS_MS_INT64
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<__int64>::value>::type
- >::value);
-#endif
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<int[4]>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<int(*)(int)>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<int*>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<VB>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<VD>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<enum_UDT>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<mf2>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<POD_UDT>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<empty_UDT>::value>::type
- >::value);
-BOOST_CHECK(::tt::is_pod<
- ::tt::type_with_alignment<
- ::tt::alignment_of<union_UDT>::value>::type
- >::value);
 
 TT_TEST_END
 

Modified: branches/CMake/release/libs/unordered/doc/rationale.qbk
==============================================================================
--- branches/CMake/release/libs/unordered/doc/rationale.qbk (original)
+++ branches/CMake/release/libs/unordered/doc/rationale.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -96,6 +96,17 @@
 
 So, this implementation uses a prime number for the hash table size.
 
+[h2 Equality operators and hash functions]
+
+`operator==` and `operator!=` are not included in the standard, but I've
+added them as I think they could be useful and can be efficiently
+implemented. They are specified
+differently to the standard associative containers, comparing keys
+using the equality predicate rather than `operator==`. This is inconsistent
+with the other containers but it is probably closer to user's expectations.
+I have also added a `hash_value` free function so that the containers can be
+hashed by [classref boost::hash].
+
 [h2 Active Issues and Proposals]
 
 [h3 Removing unused allocator functions]
@@ -181,32 +192,14 @@
 of elements with equivalent keys (i.e. if they're stable under `insert` and `erase`).
 This is [@http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-active.html#518 issue 581].
 The current proposal is that insert, erase and rehash are stable - so they are here.
+(Update: during the release of this version, this requirement was added to
+[@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2691.pdf
+the lastest working draft]).
 
 [h3 const_local_iterator cbegin, cend missing from TR1]
 
-[@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2482.html#691
+[@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2684.html#691
 Issue 691] is that `cbegin` and `cend` are missing for local iterators.
 The current resolution is that they'll be added, so I've added them.
 
-[h2 Future Developments]
-
-[h3 Support for `emplace`]
-
-In __n2369__ a new member function, `emplace` was added to the containers to
-allow placement insert, as described in __n2345__. To fully implement this
-`std::forward` is required, along with new functions in `std::allocator` and
-new constructors in `std::pair`. But partial support is possible - especially
-if I don't use the `construct` member of allocators.
-
-[h3 Equality operator]
-
-While `operator==` and `operator!=` are not included in the standard, it's
-possible to implement them for all the containers - this is helped by having
-stable order of elements with equivalent keys. They will need to be specified
-differently to the standard associative containers, probably comparing keys
-using the equality predicate rather than `operator==`. This is inconsistent
-with the other containers but it is probably closer to user's expectations.
-
-If these are added then a `hash_value` free function should also be added.
-
 [endsect]

Modified: branches/CMake/release/libs/unordered/doc/ref.xml
==============================================================================
--- branches/CMake/release/libs/unordered/doc/ref.xml (original)
+++ branches/CMake/release/libs/unordered/doc/ref.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -284,6 +284,7 @@
               <notes>
                 <para>Can invalidate iterators, but only if the insert causes the load factor to be greater to or equal to the maximum load factor.</para>
                 <para>Pointers and references to elements are never invalidated.</para>
+ <para>Only available on compilers with support for variadic template arguments and rvalue references.</para>
               </notes>
             </method>
             <method name="emplace">
@@ -312,6 +313,7 @@
                 <para>The standard is fairly vague on the meaning of the hint. But the only practical way to use it, and the only way that Boost.Unordered supports is to point to an existing element with the same value. </para>
                 <para>Can invalidate iterators, but only if the insert causes the load factor to be greater to or equal to the maximum load factor.</para>
                 <para>Pointers and references to elements are never invalidated.</para>
+ <para>Only available on compilers with support for variadic template arguments and rvalue references.</para>
               </notes>
             </method>
             <method name="insert">
@@ -1030,6 +1032,7 @@
               <notes>
                 <para>Can invalidate iterators, but only if the insert causes the load factor to be greater to or equal to the maximum load factor.</para>
                 <para>Pointers and references to elements are never invalidated.</para>
+ <para>Only available on compilers with support for variadic template arguments and rvalue references.</para>
               </notes>
             </method>
             <method name="emplace">
@@ -1058,6 +1061,7 @@
                 <para>The standard is fairly vague on the meaning of the hint. But the only practical way to use it, and the only way that Boost.Unordered supports is to point to an existing element with the same value. </para>
                 <para>Can invalidate iterators, but only if the insert causes the load factor to be greater to or equal to the maximum load factor.</para>
                 <para>Pointers and references to elements are never invalidated.</para>
+ <para>Only available on compilers with support for variadic template arguments and rvalue references.</para>
               </notes>
             </method>
             <method name="insert">
@@ -1788,6 +1792,7 @@
               <notes>
                 <para>Can invalidate iterators, but only if the insert causes the load factor to be greater to or equal to the maximum load factor.</para>
                 <para>Pointers and references to elements are never invalidated.</para>
+ <para>Only available on compilers with support for variadic template arguments and rvalue references.</para>
               </notes>
             </method>
             <method name="emplace">
@@ -1816,6 +1821,7 @@
                 <para>The standard is fairly vague on the meaning of the hint. But the only practical way to use it, and the only way that Boost.Unordered supports is to point to an existing element with the same key. </para>
                 <para>Can invalidate iterators, but only if the insert causes the load factor to be greater to or equal to the maximum load factor.</para>
                 <para>Pointers and references to elements are never invalidated.</para>
+ <para>Only available on compilers with support for variadic template arguments and rvalue references.</para>
               </notes>
             </method>
             <method name="insert">
@@ -2585,6 +2591,7 @@
               <notes>
                 <para>Can invalidate iterators, but only if the insert causes the load factor to be greater to or equal to the maximum load factor.</para>
                 <para>Pointers and references to elements are never invalidated.</para>
+ <para>Only available on compilers with support for variadic template arguments and rvalue references.</para>
               </notes>
             </method>
             <method name="emplace">
@@ -2613,6 +2620,7 @@
                 <para>The standard is fairly vague on the meaning of the hint. But the only practical way to use it, and the only way that Boost.Unordered supports is to point to an existing element with the same key. </para>
                 <para>Can invalidate iterators, but only if the insert causes the load factor to be greater to or equal to the maximum load factor.</para>
                 <para>Pointers and references to elements are never invalidated.</para>
+ <para>Only available on compilers with support for variadic template arguments and rvalue references.</para>
               </notes>
             </method>
             <method name="insert">

Modified: branches/CMake/release/status/explicit-failures-markup.xml
==============================================================================
--- branches/CMake/release/status/explicit-failures-markup.xml (original)
+++ branches/CMake/release/status/explicit-failures-markup.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -166,6 +166,16 @@
             Boost.System library on which Boost.Asio depends.
         </note>
       </mark-unusable>
+ <mark-expected-failures>
+ <test name="read_until"/>
+ <test name="read_until_select"/>
+ <toolset name="gcc-4.2.1_hpux_ia64"/>
+ <note author="Boris Gubenko">
+ On HP-UX 11.23 platform, these tests must be compiled with
+ _XOPEN_SOURCE_EXTENDED macro defined. It is likely related
+ to CR JAGag28813.
+ </note>
+ </mark-expected-failures>
     </library>
 
     <!-- assign -->
@@ -365,9 +375,14 @@
             <note refid="39" author="Boris Gubenko"/>
         </mark-expected-failures>
         <mark-expected-failures>
- <test name="test_bimap_serialization"/>
- <toolset name="gcc-mingw-3.4.5"/>
- <note author="Matias Capeletto">Compiler bug.</note>
+ <test name="test_bimap_serialization"/>
+ <toolset name="gcc-mingw-3.4.5"/>
+ <note author="Matias Capeletto">Compiler bug.</note>
+ </mark-expected-failures>
+ <mark-expected-failures>
+ <test name="test_bimap_property_map"/>
+ <toolset name="gcc-3.4.6_linux_x86_64"/>
+ <note author="Matias Capeletto">Time out.</note>
         </mark-expected-failures>
     </library>
 

Modified: branches/CMake/release/tools/boostbook/doc/documenting.xml
==============================================================================
--- branches/CMake/release/tools/boostbook/doc/documenting.xml (original)
+++ branches/CMake/release/tools/boostbook/doc/documenting.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -218,7 +218,7 @@
           </row>
           <row>
             <entry><simpara>&lt;table&gt;, &lt;tr&gt;, &lt;th&gt;, &lt;td&gt;</simpara></entry>
- <entry><simpara>&lt;table&gt;, &lt;informaltable&gt;, &lt;tgroup&gt;, &lt;thead&gt;, &lt;tfoot&gt;, &lt;tbody&gt;, &lt;row&gt;, &lt;entry&gt;, &lt;entrytbl&gt;; BoostBook tables are equivalent to DocBook tables, for which there is a good <ulink url="http://opensource.bureau-cornavin.com/crash-course/tables.html">tutorial here</ulink></simpara></entry>
+ <entry><simpara>&lt;table&gt;, &lt;informaltable&gt;, &lt;tgroup&gt;, &lt;thead&gt;, &lt;tfoot&gt;, &lt;tbody&gt;, &lt;row&gt;, &lt;entry&gt;, &lt;entrytbl&gt;; BoostBook tables are equivalent to DocBook tables, for which there is a good <ulink url="http://opensource.bureau-cornavin.com/crash-course/en/tables.html">tutorial here</ulink></simpara></entry>
           </row>
         </tbody>
       </tgroup>

Modified: branches/CMake/release/tools/build/v2/build-system.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build-system.jam (original)
+++ branches/CMake/release/tools/build/v2/build-system.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -242,7 +242,7 @@
     }
     else
     {
- if ( must-find )
+ if $(must-find)
         {
             errors.user-error "Configuration file" "$(filename)" "not found in"
                 "$(path)" "." ;
@@ -253,7 +253,7 @@
                 "$(path)" "." ;
         }
     }
- return where ;
+ return $(where) ;
 }
 
 
@@ -301,6 +301,11 @@
 
     initialize-config-module test-config ;
     local test-config = [ MATCH ^--test-config=(.*)$ : $(.argv) ] ;
+ local uq = [ MATCH \"(.*)\" : $(test-config) ] ;
+ if $(uq)
+ {
+ test-config = $(uq) ;
+ }
     if $(test-config)
     {
         local where =
@@ -594,12 +599,21 @@
     local cleanall ; if "--clean-all" in $(.argv) { cleanall = true ; }
 
 
- # List of Boost Build meta-targets and actual raw Jam targets directly
- # requested by the user. Raw Jam targets are used when user's request
- # contains a reference to a specific file not modeled using a main Boost
- # Build target.
+ # List of explicitly requested files to build. Any target references read
+ # from the command line parameter not recognized as one of the targets
+ # defined in the loaded Jamfiles will be interpreted as an explicitly
+ # requested file to build. If any such files are explicitly requested then
+ # only those files and the targets they depend on will be built and they
+ # will be searched for among targets that would have been built had there
+ # been no explicitly requested files.
+ local explicitly-requested-files
+
+
+ # List of Boost Build meta-targets, virtual-targets and actual Jam targets
+ # constructed in this build system run.
     local targets ;
- local bjam-targets ;
+ local virtual-targets ;
+ local actual-targets ;
 
     
     # Process each target specified on the command-line and convert it into
@@ -628,7 +642,7 @@
             {
                 ECHO "notice: could not find main target" $(id) ;
                 ECHO "notice: assuming it's a name of file to create." ;
- bjam-targets += $(id) ;
+ explicitly-requested-files += $(id) ;
             }
             else
             {
@@ -642,10 +656,6 @@
     }
 
 
- # List of all virtual-targets created in this build system run.
- local virtual-targets ;
-
-
     # Now that we have a set of targets to build and a set of property sets to
     # build the targets with, we can start the main build process by using each
     # property set to generate virtual targets from all of our listed targets
@@ -665,11 +675,7 @@
     }
 
 
- # List of all Jam targets constructed in this build system run.
- local actual-targets ;
-
-
- # Convert all collected virtual targets into actual raw Jam targets.
+ # Convert collected virtual targets into actual raw Jam targets.
     for t in $(virtual-targets)
     {
         actual-targets += [ $(t).actualize ] ;
@@ -851,19 +857,24 @@
     }
 
 
- # TODO: See if this 'NOTFILE all' statement can be moved below to the
- # default case where the 'all' target is actually requested to be built.
- # Check for other Jam scripts manually setting a dependency for this target.
+ # The 'all' pseudo target is not strictly needed expect in the case when we
+ # use it below but people often assume they always have this target
+ # available and do not declare it themselves before use which may cause
+ # build failures with an error message about not being able to build the
+ # 'all' target.
     NOTFILE all ;
 
 
     # And now that all the actual raw Jam targets and all the dependencies
- # between them have been prepared (or we have everything set so we can
- # easily prepare them) all that is left is to tell Jam to update those
- # targets.
- if $(bjam-targets)
- {
- UPDATE $(bjam-targets:G=e) $(.out-xml) ;
+ # between them have been prepared all that is left is to tell Jam to update
+ # those targets.
+ if $(explicitly-requested-files)
+ {
+ # Note that this case can not be joined with the regular one when only
+ # exact Boost Build targets are requested as here we do not build those
+ # requested targets but only use them to construct the dependency tree
+ # needed to build the explicitly requested files.
+ UPDATE $(explicitly-requested-files:G=e) $(.out-xml) ;
     }
     else if $(cleanall)
     {

Modified: branches/CMake/release/tools/build/v2/build/alias.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/alias.jam (original)
+++ branches/CMake/release/tools/build/v2/build/alias.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -2,27 +2,26 @@
 # Distributed under the Boost Software License, Version 1.0.
 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
-# This module defines the 'alias' rule and the associated target class.
+# This module defines the 'alias' rule and the associated target class.
 #
-# Alias is just a main target which returns its source targets without any
-# processing. For example:
+# Alias is just a main target which returns its source targets without any
+# processing. For example:
 #
-# alias bin : hello test_hello ;
-# alias lib : helpers xml_parser ;
+# alias bin : hello test_hello ;
+# alias lib : helpers xml_parser ;
 #
-# Another important use of 'alias' is to conveniently group source files:
+# Another important use of 'alias' is to conveniently group source files:
 #
-# alias platform-src : win.cpp : <os>NT ;
-# alias platform-src : linux.cpp : <os>LINUX ;
-# exe main : main.cpp platform-src ;
+# alias platform-src : win.cpp : <os>NT ;
+# alias platform-src : linux.cpp : <os>LINUX ;
+# exe main : main.cpp platform-src ;
 #
-# Lastly, it's possible to create local alias for some target, with different
-# properties::
+# Lastly, it is possible to create a local alias for some target, with different
+# properties:
 #
-# alias big_lib : : @/external_project/big_lib/<link>static ;
+# alias big_lib : : @/external_project/big_lib/<link>static ;
 #
 
-
 import "class" : new ;
 import project ;
 import property-set ;
@@ -47,12 +46,14 @@
     {
         local base = [ basic-target.compute-usage-requirements $(subvariant) ] ;
         # Add source's usage requirement. If we don't do this, "alias" does not
- # look like 100% alias.
+ # look like a 100% alias.
         return [ $(base).add [ $(subvariant).sources-usage-requirements ] ] ;
     }
 }
 
+
 # Declares the 'alias' target. It will build sources, and return them unaltered.
+#
 rule alias ( name : sources * : requirements * : default-build * : usage-requirements * )
 {
     local project = [ project.current ] ;
@@ -66,7 +67,5 @@
         ] ;
 }
 
-IMPORT $(__name__) : alias : : alias ;
-
-
 
+IMPORT $(__name__) : alias : : alias ;

Modified: branches/CMake/release/tools/build/v2/build/feature.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/feature.jam (original)
+++ branches/CMake/release/tools/build/v2/build/feature.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,7 +19,6 @@
 {
     .all-attributes =
         implicit
- executed
         composite
         optional
         symmetric
@@ -43,6 +42,7 @@
 
 # Prepare a fresh space to test in by moving all global variable settings into
 # the given temporary module and erasing them here.
+#
 rule prepare-test ( temp-module )
 {
     DELETE_MODULE $(temp-module) ;
@@ -62,6 +62,7 @@
 
 # Clear out all global variables and recover all variables from the given
 # temporary module.
+#
 rule finish-test ( temp-module )
 {
     # Clear globals.
@@ -81,8 +82,9 @@
 }
 
 
-# Transform features by bracketing any elements which aren't already bracketed
+# Transform features by bracketing any elements which are not already bracketed
 # by "<>".
+#
 local rule grist ( features * )
 {
     local empty = "" ;
@@ -91,6 +93,7 @@
 
 
 # Declare a new feature with the given name, values, and attributes.
+#
 rule feature (
       name # Feature name.
     : values * # Allowable values - may be extended later using feature.extend.
@@ -119,6 +122,14 @@
     {
         error = free features cannot be propagated ;
     }
+ else
+ {
+ local m = [ MATCH (.*=.*) : $(values) ] ;
+ if $(m[1])
+ {
+ error = "feature value may not contain '='" ;
+ }
+ }
 
     if $(error)
     {
@@ -146,6 +157,7 @@
 
 
 # Sets the default value of the given feature, overriding any previous default.
+#
 rule set-default ( feature : value )
 {
     local f = [ grist $(feature) ] ;
@@ -159,6 +171,7 @@
 
 
 # Returns the default property values for the given features.
+#
 rule defaults ( features * )
 {
     local result ;
@@ -179,6 +192,7 @@
 
 
 # Returns true iff all 'names' elements are valid features.
+#
 rule valid ( names + )
 {
     if $(names) in $(.all-features)
@@ -189,6 +203,7 @@
 
 
 # Returns the attibutes of the given feature.
+#
 rule attributes ( feature )
 {
     return $($(:E=:G=$(feature)).attributes) ;
@@ -196,6 +211,7 @@
 
 
 # Returns the values of the given feature.
+#
 rule values ( feature )
 {
     return $($(:E=:G=$(feature)).values) ;
@@ -203,6 +219,7 @@
 
 
 # Returns true iff 'value-string' is a value-string of an implicit feature.
+#
 rule is-implicit-value ( value-string )
 {
     local v = [ regex.split $(value-string) - ] ;
@@ -231,6 +248,7 @@
 
 
 # Returns the implicit feature associated with the given implicit value.
+#
 rule implied-feature ( implicit-value )
 {
     local components = [ regex.split $(implicit-value) "-" ] ;
@@ -260,6 +278,7 @@
 # Given a feature and a value of one of its subfeatures, find the name of the
 # subfeature. If value-string is supplied, looks for implied subfeatures that
 # are specific to that value of feature
+#
 rule implied-subfeature (
       feature # The main feature name.
       subvalue # The value of one of its subfeatures.
@@ -279,6 +298,7 @@
 
 
 # Generate an error if the feature is unknown.
+#
 local rule validate-feature ( feature )
 {
     if ! $(feature) in $(.all-features)
@@ -298,6 +318,7 @@
 # return:
 #
 # <toolset>gcc <toolset-version>2.95.2 <toolset-os>linux <toolset-cpu>x86
+#
 local rule expand-subfeatures-aux (
       feature ? # Feature name or empty if value corresponds to an
                        # implicit property.
@@ -392,6 +413,7 @@
 
 
 # Helper for extend, below. Handles the feature case.
+#
 local rule extend-feature ( feature : values * )
 {
     feature = [ grist $(feature) ] ;
@@ -420,6 +442,7 @@
 
 
 # Checks that value-string is a valid value-string for the given feature.
+#
 rule validate-value-string ( feature value-string )
 {
     if ! (
@@ -457,6 +480,7 @@
 # between subvalue(s) and a subfeature
 # * value of that variable when such a subfeature/subvalue has been defined and
 # returns a list consisting of the latter followed by the former.
+#
 local rule subvalue-var (
     feature # Main feature name.
     value-string ? # If supplied, specifies a specific value of the main
@@ -511,6 +535,7 @@
 # Returns true iff the subvalues are valid for the feature. When the optional
 # value-string is provided, returns true iff the subvalues are valid for the
 # given value of the feature.
+#
 rule is-subvalue ( feature : value-string ? : subfeature : subvalue )
 {
     local subfeature-vars = [ subvalue-var $(feature) $(value-string)
@@ -584,6 +609,7 @@
 
 
 # Declares a subfeature.
+#
 rule subfeature (
     feature # Root feature that is not a subfeature.
     value-string ? # A value-string specifying which feature or subfeature
@@ -616,6 +642,7 @@
 
 
 # Set components of the given composite property.
+#
 rule compose ( composite-property : component-properties * )
 {
     local feature = $(composite-property:G) ;
@@ -647,6 +674,7 @@
 
 
 # Return all values of the given feature specified by the given property set.
+#
 rule get-values ( feature : properties * )
 {
     local result ;
@@ -674,6 +702,7 @@
 
 # Expand all composite properties in the set so that all components are
 # explicitly expressed.
+#
 rule expand-composites ( properties * )
 {
     local explicit-features = $(properties:G) ;
@@ -732,6 +761,7 @@
 # Return true iff f is an ordinary subfeature of the parent-property's feature,
 # or if f is a subfeature of the parent-property's feature specific to the
 # parent-property's value.
+#
 local rule is-subfeature-of ( parent-property f )
 {
     if subfeature in $($(f).attributes)
@@ -762,6 +792,7 @@
 
 
 # As for is-subfeature-of but for subproperties.
+#
 local rule is-subproperty-of ( parent-property p )
 {
     return [ is-subfeature-of $(parent-property) $(p:G) ] ;
@@ -771,6 +802,7 @@
 # Given a property, return the subset of features consisting of all ordinary
 # subfeatures of the property's feature, and all specific subfeatures of the
 # property's feature which are conditional on the property's value.
+#
 local rule select-subfeatures ( parent-property : features * )
 {
     return [ sequence.filter is-subfeature-of $(parent-property) : $(features) ] ;
@@ -778,6 +810,7 @@
 
 
 # As for select-subfeatures but for subproperties.
+#
 local rule select-subproperties ( parent-property : properties * )
 {
     return [ sequence.filter is-subproperty-of $(parent-property) : $(properties) ] ;
@@ -792,6 +825,7 @@
 # of those features due to composite feature expansion to be dropped. If two
 # values of a given non-free feature are directly expressed in the input, an
 # error is issued.
+#
 rule expand ( properties * )
 {
     local expanded = [ expand-subfeatures $(properties) ] ;
@@ -801,6 +835,7 @@
 
 # Helper rule for minimize. Returns true iff property's feature is present in
 # the contents of the variable named by feature-set-var.
+#
 local rule in-features ( feature-set-var property )
 {
     if $(property:G) in $($(feature-set-var))
@@ -812,6 +847,7 @@
 
 # Helper rule for minimize. Returns the list with the same properties, but with
 # all subfeatures moved to the end of the list.
+#
 local rule move-subfeatures-to-the-end ( properties * )
 {
     local x1 ;
@@ -837,6 +873,7 @@
 # they override a value from some composite property. Implicit properties will
 # be expressed without feature grist, and sub-property values will be expressed
 # as elements joined to the corresponding main property.
+#
 rule minimize ( properties * )
 {
     # Precondition checking
@@ -906,8 +943,9 @@
 # Requires: for every subproperty, there is a parent property. All features are
 # explicitly expressed.
 #
-# This rule probably shouldn't be needed, but build-request.expand-no-defaults
+# This rule probably should not be needed, but build-request.expand-no-defaults
 # is being abused for unintended purposes and it needs help.
+#
 rule compress-subproperties ( properties * )
 {
     local all-subs ;
@@ -919,7 +957,7 @@
         if ! $(p:G)
         {
             # Expecting fully-gristed properties.
- assert.nonempty-variable p:G ;
+ assert.variable-not-empty p:G ;
         }
 
         if ! subfeature in $($(p:G).attributes)
@@ -947,6 +985,7 @@
 # feature name followed by a dash, and return a pair consisting of the parts
 # before and after that dash. More interesting than a simple split because
 # feature names may contain dashes.
+#
 local rule split-top-feature ( feature-plus )
 {
     local e = [ regex.split $(feature-plus) - ] ;
@@ -982,6 +1021,7 @@
 # <variant>debug <runtime_debugging>off
 #
 # and that's kind of strange.
+#
 rule add-defaults ( properties * )
 {
     for local v in $(properties:G=)
@@ -1026,6 +1066,7 @@
 # Note that vN...vM may contain slashes. This needs to be resilient to the
 # substitution of backslashes for slashes, since Jam, unbidden, sometimes swaps
 # slash direction on NT.
+#
 rule split ( property-set )
 {
     local pieces = [ regex.split $(property-set) [\\/] ] ;
@@ -1048,7 +1089,8 @@
 
 
 # Tests of module feature.
-local rule __test__ ( )
+#
+rule __test__ ( )
 {
     # Use a fresh copy of the feature module.
     prepare-test feature-test-temp ;

Modified: branches/CMake/release/tools/build/v2/build/generators.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/generators.jam (original)
+++ branches/CMake/release/tools/build/v2/build/generators.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,46 +5,37 @@
 # (See accompanying file LICENSE_1_0.txt or copy at
 # http://www.boost.org/LICENSE_1_0.txt)
 
-# Manages 'generators' --- objects which can do transformation between
-# different target types and contain algorithm for finding transformation from
-# sources to targets.
-#
-# The main entry point to this module is generators.construct rule. It is given
-# a list of source targets, desired target type and a set of properties. It
-# starts by selecting 'viable generators', which have any chances of producing
-# the desired target type with the required properties. Generators are ranked
-# and a set of the most specific ones is selected.
-#
-# The most specific generators have their 'run' methods called, with the
-# properties and list of sources. Each one selects a target which can be
-# directly consumed, and tries to convert the remaining ones to the types it
-# can consume. This is done by recursively calling 'construct' with all
-# consumable types.
-#
-# If the generator has collected all the targets it needs, it creates targets
-# corresponding to result, and returns it. When all generators have been run,
-# results of one of them are selected and returned as a result.
-#
-# It's quite possible that 'construct' returns more targets that it was asked
-# for. For example, it was asked to target type EXE, but the only found
-# generators produces both EXE and TDS (file with debug) information. The extra
-# target will be returned.
-#
-# Likewise, when generator tries to convert sources to consumable types, it can
-# get more targets that it was asked for. The question is what to do with extra
-# targets. Boost.Build attempts to convert them to requested types, and
-# attempts that as early as possible. Specifically, this is done after invoking
-# each generator. (Later I'll document the rationale for trying extra target
-# conversion at that point).
-#
-# That early conversion is not always desirable. Suppose a generator got a
-# source of type Y and must consume one target of type X_1 and one target of
-# type X_2. When converting Y to X_1 extra target of type Y_2 is created. We
-# should not try to convert it to type X_1, because if we do so, the generator
-# will get two targets of type X_1, and will be at loss as to which one to use.
-# Because of that, the 'construct' rule has a parameter, telling if multiple
-# targets can be returned. If the parameter is false, conversion of extra
-# targets is not performed.
+# Manages 'generators' --- objects which can do transformation between different
+# target types and contain algorithm for finding transformation from sources to
+# targets.
+#
+# The main entry point to this module is generators.construct rule. It is given
+# a list of source targets, desired target type and a set of properties. It
+# starts by selecting 'viable generators', which have any chances of producing
+# the desired target type with the required properties. Generators are ranked
+# and a set of the most specific ones is selected.
+#
+# The most specific generators have their 'run' methods called, with the
+# properties and list of sources. Each one selects a target which can be
+# directly consumed, and tries to convert the remaining ones to the types it can
+# consume. This is done by recursively calling 'construct' with all consumable
+# types.
+#
+# If the generator has collected all the targets it needs, it creates targets
+# corresponding to result, and returns it. When all generators have been run,
+# results of one of them are selected and returned as a result.
+#
+# It is quite possible for 'construct' to return more targets that it was asked
+# for. For example, if it were asked to generate a target of type EXE, but the
+# only found generator produces both EXE and TDS (file with debug) information.
+# The extra target will be returned.
+#
+# Likewise, when generator tries to convert sources to consumable types, it can
+# get more targets that it was asked for. The question is what to do with extra
+# targets. Boost.Build attempts to convert them to requested types, and attempts
+# that as early as possible. Specifically, this is done after invoking each
+# generator. TODO: An example is needed to document the rationale for trying
+# extra target conversion at that point.
 
 import "class" : new ;
 import errors ;
@@ -93,8 +84,8 @@
 
 
 # Takes a vector of 'virtual-target' instances and makes a normalized
-# representation, which is the same for given set of targets,
-# regardless of their order.
+# representation, which is the same for given set of targets, regardless of
+# their order.
 #
 rule normalize-target-list ( targets )
 {
@@ -183,19 +174,19 @@
         return $(self.source-types) ;
     }
 
- # Returns the list of target types that this generator produces.
- # It is assumed to be always the same -- i.e. it cannot change depending
- # list of sources.
+ # Returns the list of target types that this generator produces. It is
+ # assumed to be always the same -- i.e. it cannot change depending list of
+ # sources.
     #
     rule target-types ( )
     {
         return $(self.target-types) ;
     }
 
- # Returns the required properties for this generator. Properties
- # in returned set must be present in build properties if this
- # generator is to be used. If result has grist-only element,
- # that build properties must include some value of that feature.
+ # Returns the required properties for this generator. Properties in returned
+ # set must be present in build properties if this generator is to be used.
+ # If result has grist-only element, that build properties must include some
+ # value of that feature.
     # XXX: remove this method?
     #
     rule requirements ( )
@@ -208,10 +199,9 @@
     #
     rule match-rank ( property-set-to-match )
     {
- # See if generator's requirements are satisfied by
- # 'properties'. Treat a feature name in requirements
- # (i.e. grist-only element), as matching any value of the
- # feature.
+ # See if generator's requirements are satisfied by 'properties'. Treat a
+ # feature name in requirements (i.e. grist-only element), as matching
+ # any value of the feature.
         local all-requirements = [ requirements ] ;
 
         local property-requirements feature-requirements ;
@@ -239,9 +229,9 @@
         }
     }
 
- # Returns another generator which differers from $(self) in
- # - id
- # - value to <toolset> feature in properties
+ # Returns another generator which differs from $(self) in
+ # - id
+ # - value to <toolset> feature in properties
     #
     rule clone ( new-id : new-toolset-properties + )
     {
@@ -287,14 +277,13 @@
     # run indicates that the generator was unable to create the target.
     #
     rule run ( project # Project for which the targets are generated
- name ? # Determines the name of 'name' attribute for
- # all generated targets. See 'generated-targets' method.
+ name ? # Determines the name of 'name' attribute for all
+ # generated targets. See 'generated-targets' method.
                : property-set # Desired properties for generated targets.
                : sources + # Source targets.
             )
     {
         generators.dout [ indent ] " ** generator" $(self.id) ;
- generators.dout [ indent ] " multiple:" $(mutliple) ;
         generators.dout [ indent ] " composing:" $(self.composing) ;
 
         if ! $(self.composing) && $(sources[2]) && $(self.source-types[2])
@@ -360,15 +349,16 @@
     rule construct-result (
         consumed + # Already prepared list of consumable targets
                    # If generator requires several source files will contain
- # exactly len $(self.source-types) targets with matching types
- # Otherwise, might contain several targets with the type of
- # $(self.source-types[1])
+ # exactly len $(self.source-types) targets with matching
+ # types. Otherwise, might contain several targets with the
+ # type of $(self.source-types[1]).
         : project name ?
         : property-set # Properties to be used for all actions create here.
     )
     {
         local result ;
- # If this is 1->1 transformation, apply it to all consumed targets in order.
+ # If this is 1->1 transformation, apply it to all consumed targets in
+ # order.
         if ! $(self.source-types[2]) && ! $(self.composing)
         {
             for local r in $(consumed)
@@ -391,15 +381,14 @@
     #
     rule determine-output-name ( sources + )
     {
- # The simple case if when a name
- # of source has single dot. Then, we take the part before
- # dot. Several dots can be caused by:
- # - Using source file like a.host.cpp
- # - A type which suffix has a dot. Say, we can
- # type 'host_cpp' with extension 'host.cpp'.
- # In the first case, we want to take the part till the last
- # dot. In the second case -- no sure, but for now take
- # the part till the last dot too.
+ # The simple case if when a name of source has single dot. Then, we take
+ # the part before dot. Several dots can be caused by:
+ # - Using source file like a.host.cpp
+ # - A type which suffix has a dot. Say, we can type 'host_cpp' with
+ # extension 'host.cpp'.
+ # In the first case, we want to take the part up to the last dot. In the
+ # second case -- no sure, but for now take the part up to the last dot
+ # too.
         name = [ utility.basename [ $(sources[1]).name ] ] ;
 
         for local s in $(sources[2])
@@ -429,13 +418,13 @@
     # the '%' symbol in the name pattern will be replaced with the 'name'
     # parameter to obtain the 'name' attribute.
     #
- # For example, if targets types are T1 and T2(with name pattern "%_x"),
- # suffixes for T1 and T2 are .t1 and t2, and source if foo.z, then created
+ # For example, if targets types are T1 and T2 (with name pattern "%_x"),
+ # suffixes for T1 and T2 are .t1 and .t2, and source is foo.z, then created
     # files would be "foo.t1" and "foo_x.t2". The 'name' attribute actually
     # determines the basename of a file.
     #
     # Note that this pattern mechanism has nothing to do with implicit patterns
- # in make. It's a way to produce target which name is different for name of
+ # in make. It is a way to produce target which name is different for name of
     # source.
     #
     rule generated-targets ( sources + : property-set : project name ? )
@@ -460,16 +449,16 @@
             pre = $(pre[2-]) ;
             post = $(post[2-]) ;
 
- targets += [ class.new file-target $(generated-name)
- : $(t) : $(project) : $(a) ] ;
+ targets += [ class.new file-target $(generated-name) : $(t) :
+ $(project) : $(a) ] ;
         }
 
         return [ sequence.transform virtual-target.register : $(targets) ] ;
     }
 
- # Attempts to convert 'source' to the types that this generator can
- # handle. The intention is to produce the set of targets can should be
- # used when generator is run.
+ # Attempts to convert 'source' to the types that this generator can handle.
+ # The intention is to produce the set of targets can should be used when
+ # generator is run.
     #
     rule convert-to-consumable-types ( project name ? :
         property-set : sources +
@@ -481,16 +470,16 @@
                        # cannot be consumed
     )
     {
- # We're likely to be passed 'consumed' and 'bypassed'
- # var names. Use "_" to avoid name conflicts.
+ # We're likely to be passed 'consumed' and 'bypassed' var names. Use "_"
+ # to avoid name conflicts.
         local _consumed ;
         local _bypassed ;
         local missing-types ;
 
         if $(sources[2])
         {
- # Don't know how to handle several sources yet. Just try
- # to pass the request to other generator
+ # Don't know how to handle several sources yet. Just try to pass the
+ # request to other generator
             missing-types = $(self.source-types) ;
         }
         else
@@ -498,18 +487,17 @@
             consume-directly $(sources) : _consumed : missing-types ;
         }
 
- # No need to search for transformation if
- # some source type has consumed source and
- # no more source types are needed.
+ # No need to search for transformation if some source type has consumed
+ # source and no more source types are needed.
         if $(only-one) && $(_consumed)
         {
             missing-types = ;
         }
 
- #TODO: we should check that only one source type
- #if create of 'only-one' is true.
- # TODO: consider if consuned/bypassed separation should
- # be done by 'construct-types'.
+ # TODO: we should check that only one source type if create of
+ # 'only-one' is true.
+ # TODO: consider if consumed/bypassed separation should be done by
+ # 'construct-types'.
 
         if $(missing-types)
         {
@@ -538,15 +526,14 @@
         _consumed = [ sequence.unique $(_consumed) ] ;
         _bypassed = [ sequence.unique $(_bypassed) ] ;
 
- # remove elements of '_bypassed' that are in '_consumed'
+ # Remove elements of '_bypassed' that are in '_consumed'.
 
- # Suppose the target type of current generator, X is produced from
- # X_1 and X_2, which are produced from Y by one generator.
- # When creating X_1 from Y, X_2 will be added to 'bypassed'
- # Likewise, when creating X_2 from Y, X_1 will be added to 'bypassed'
- # But they are also in 'consumed'. We have to remove them from
- # bypassed, so that generators up the call stack don't try to convert
- # them.
+ # Suppose the target type of current generator, X is produced from X_1
+ # and X_2, which are produced from Y by one generator. When creating X_1
+ # from Y, X_2 will be added to 'bypassed'. Likewise, when creating X_2
+ # from Y, X_1 will be added to 'bypassed', but they are also in
+ # 'consumed'. We have to remove them from bypassed, so that generators
+ # up the call stack don't try to convert them.
 
         # In this particular case, X_1 instance in 'consumed' and X_1 instance
         # in 'bypassed' will be the same: because they have the same source and
@@ -555,7 +542,6 @@
 
         _bypassed = [ set.difference $(_bypassed) : $(_consumed) ] ;
 
-
         $(consumed-var) += $(_consumed) ;
         $(bypassed-var) += $(_bypassed) ;
     }
@@ -565,8 +551,8 @@
     rule convert-multiple-sources-to-consumable-types
       ( project : property-set : sources * : consumed-var bypassed-var )
     {
- # We process each source one-by-one, trying to convert it to
- # a usable type.
+ # We process each source one-by-one, trying to convert it to a usable
+ # type.
         for local source in $(sources)
         {
             local _c ;
@@ -587,7 +573,7 @@
     {
         local real-source-type = [ $(source).type ] ;
 
- # If there are no source types, we can consume anything
+ # If there are no source types, we can consume anything.
         local source-types = $(self.source-types) ;
         source-types ?= $(real-source-type) ;
 
@@ -606,8 +592,8 @@
         }
     }
 
- # Returns the class to be used to actions. Default implementation
- # returns "action".
+ # Returns the class to be used to actions. Default implementation returns
+ # "action".
     #
     rule action-class ( )
     {
@@ -625,10 +611,9 @@
 {
     .generators += $(g) ;
 
- # A generator can produce several targets of the
- # same type. We want unique occurence of that generator
- # in .generators.$(t) in that case, otherwise, it will
- # be tried twice and we'll get false ambiguity.
+ # A generator can produce several targets of the same type. We want unique
+ # occurence of that generator in .generators.$(t) in that case, otherwise,
+ # it will be tried twice and we'll get false ambiguity.
     for local t in [ sequence.unique [ $(g).target-types ] ]
     {
         .generators.$(t) += $(g) ;
@@ -636,20 +621,17 @@
 
     # Update the set of generators for toolset
 
- # TODO: should we check that generator with this id
- # is not already registered. For example, the fop.jam
- # module intentionally declared two generators with the
- # same id, so such check will break it.
+ # TODO: should we check that generator with this id is not already
+ # registered. For example, the fop.jam module intentionally declared two
+ # generators with the same id, so such check will break it.
     local id = [ $(g).id ] ;
 
- # Some generators have multiple periods in their name, so the
- # normal $(id:S=) won't generate the right toolset name.
- # e.g. if id = gcc.compile.c++, then
- # .generators-for-toolset.$(id:S=) will append to
- # .generators-for-toolset.gcc.compile, which is a separate
- # value from .generators-for-toolset.gcc. Correcting this
- # makes generator inheritance work properly.
- # See also inherit-generators in module toolset
+ # Some generators have multiple periods in their name, so the normal
+ # $(id:S=) won't generate the right toolset name. E.g. if id =
+ # = gcc.compile.c++, then .generators-for-toolset.$(id:S=) will append to
+ # .generators-for-toolset.gcc.compile, which is a separate value from
+ # .generators-for-toolset.gcc. Correcting this makes generator inheritance
+ # work properly. See also inherit-generators in the toolset module.
     local base = $(id) ;
     while $(base:S)
     {
@@ -729,8 +711,8 @@
     # 't' is the list of types which have not yet been processed.
     while $(t)
     {
- # Find all generators for current type.
- # Unlike 'find-viable-generators' we don't care about property-set.
+ # Find all generators for current type. Unlike 'find-viable-generators'
+ # we don't care about property-set.
         local generators = $(.generators.$(t[1])) ;
         t = $(t[2-]) ;
 
@@ -1171,8 +1153,7 @@
 
 # Attempts to create a target of 'target-type' with 'properties' from 'sources'.
 # The 'sources' are treated as a collection of *possible* ingridients -- i.e. it
-# is not required to consume them all. If 'multiple' is true, the rule is
-# allowed to return several targets of 'target-type'.
+# is not required to consume them all.
 #
 # Returns a list of targets. When this invocation is first instance of
 # 'construct' in stack, returns only targets of requested 'target-type',

Modified: branches/CMake/release/tools/build/v2/build/modifiers.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/modifiers.jam (original)
+++ branches/CMake/release/tools/build/v2/build/modifiers.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -30,7 +30,7 @@
         id
         composing ?
         : source-types *
- : target-types-and-names +
+ : target-types-and-names +
         : requirements *
         )
     {
@@ -38,14 +38,14 @@
             : $(source-types)
             : $(target-types-and-names)
             : $(requirements) ;
-
+
         self.targets-in-progress = ;
     }
-
+
     # Wraps the generation of the target to call before and after rules to
     # affect the real target.
     #
- rule run ( project name ? : property-set : sources + : multiple ? )
+ rule run ( project name ? : property-set : sources + )
     {
         local result ;
         local current-target = $(project)^$(name) ;
@@ -54,77 +54,67 @@
             # Before modifications...
             local project_ =
                 [ modify-project-before
- $(project) $(name) : $(property-set) : $(sources) : $(multiple) ] ;
+ $(project) $(name) : $(property-set) : $(sources) ] ;
             local name_ =
                 [ modify-name-before
- $(project) $(name) : $(property-set) : $(sources) : $(multiple) ] ;
+ $(project) $(name) : $(property-set) : $(sources) ] ;
             local property-set_ =
                 [ modify-properties-before
- $(project) $(name) : $(property-set) : $(sources) : $(multiple) ] ;
+ $(project) $(name) : $(property-set) : $(sources) ] ;
             local sources_ =
                 [ modify-sources-before
- $(project) $(name) : $(property-set) : $(sources) : $(multiple) ] ;
- local multiple_ =
- [ modify-multiple-before
- $(project) $(name) : $(property-set) : $(sources) : $(multiple) ] ;
+ $(project) $(name) : $(property-set) : $(sources) ] ;
             project = $(project_) ;
             name = $(name_) ;
             property-set = $(property-set_) ;
             sources = $(sources_) ;
- multiple = $(multiple_) ;
-
+
             # Generate the real target...
             local target-type-p =
                 [ property.select <main-target-type> : [ $(property-set).raw ] ] ;
             self.targets-in-progress += $(current-target) ;
             result =
                 [ generators.construct $(project) $(name)
- : $(target-type-p:G=) $(multiple)
+ : $(target-type-p:G=)
                     : $(property-set)
                     : $(sources) ] ;
             self.targets-in-progress = $(self.targets-in-progress[1--2]) ;
-
+
             # After modifications...
             result =
                 [ modify-target-after $(result)
                     : $(project) $(name)
                     : $(property-set)
- : $(sources)
- : $(multiple) ] ;
+ : $(sources) ] ;
         }
         return $(result) ;
     }
-
- rule modify-project-before ( project name ? : property-set : sources + : multiple ? )
+
+ rule modify-project-before ( project name ? : property-set : sources + )
     {
         return $(project) ;
     }
-
- rule modify-name-before ( project name ? : property-set : sources + : multiple ? )
+
+ rule modify-name-before ( project name ? : property-set : sources + )
     {
         return $(name) ;
     }
-
- rule modify-properties-before ( project name ? : property-set : sources + : multiple ? )
+
+ rule modify-properties-before ( project name ? : property-set : sources + )
     {
         return $(property-set) ;
     }
-
- rule modify-sources-before ( project name ? : property-set : sources + : multiple ? )
+
+ rule modify-sources-before ( project name ? : property-set : sources + )
     {
         return $(sources) ;
     }
-
- rule modify-multiple-before ( project name ? : property-set : sources + : multiple ? )
- {
- return $(multiple) ;
- }
-
- rule modify-target-after ( target : project name ? : property-set : sources + : multiple ? )
+
+ rule modify-target-after ( target : project name ? : property-set : sources + )
     {
         return $(target) ;
     }
-
+
     # Utility, clones a file-target with optional changes to the name, type and
     # project of the target.
     # NOTE: This functionality should be moved, and generalized, to
@@ -137,19 +127,19 @@
         new-type ?= [ $(target).type ] ;
         new-project ?= [ $(target).project ] ;
         local result = [ new file-target $(new-name) : $(new-type) : $(new-project) ] ;
-
+
         if [ $(target).dependencies ] { $(result).depends [ $(target).dependencies ] ; }
         $(result).root [ $(target).root ] ;
         $(result).set-usage-requirements [ $(target).usage-requirements ] ;
-
+
         local action = [ $(target).action ] ;
         local action-class = [ modules.peek $(action) : __class__ ] ;
-
+
         local ps = [ $(action).properties ] ;
- local cloned-action = [ new $(action-class) $(result) :
+ local cloned-action = [ new $(action-class) $(result) :
           [ $(action).sources ] : [ $(action).action-name ] : $(ps) ] ;
         $(result).action $(cloned-action) ;
-
+
         return $(result) ;
     }
 }
@@ -167,13 +157,13 @@
         # Apply ourselves to EXE targets, for now.
         modifier.__init__ name.modifier : : EXE LIB : <name-modify>yes ;
     }
-
+
     # Modifies the name, by cloning the target with the new name.
     #
- rule modify-target-after ( target : project name ? : property-set : sources + : multiple ? )
+ rule modify-target-after ( target : project name ? : property-set : sources + )
     {
         local result = $(target) ;
-
+
         local name-mod-p = [ property.select <name-modifier> : [ $(property-set).raw ] ] ;
         if $(name-mod-p)
         {
@@ -190,10 +180,10 @@
                     : [ property-set.create [ $(property-set).raw ] <symlink-location>build-relative ] ] ;
             }
         }
-
+
         return $(result) ;
     }
-
+
     # Do the transformation of the name.
     #
     rule modify-name ( name : modifier-spec + )
@@ -218,7 +208,7 @@
         new-name-parts += $(name-parts) ;
         return [ sequence.join $(new-name-parts) ] ;
     }
-
+
     rule optional-properties ( )
     {
         return <name-modify>yes ;

Modified: branches/CMake/release/tools/build/v2/build/project.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/project.jam (original)
+++ branches/CMake/release/tools/build/v2/build/project.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,36 +4,35 @@
 # Distributed under the Boost Software License, Version 1.0.
 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
-# Implements project representation and loading. Each project is represented
-# by:
-# - a module where all the Jamfile content live.
-# - an instance of 'project-attributes' class.
-# (given a module name, can be obtained using the 'attributes' rule)
-# - an instance of 'project-target' class (from targets.jam)
-# (given a module name, can be obtained using the 'target' rule)
-#
-# Typically, projects are created as result of loading a Jamfile, which is done
-# by rules 'load' and 'initialize', below. First, module for Jamfile is loaded
-# and new project-attributes instance is created. Some rules necessary for
-# project are added to the module (see 'project-rules' module) at the bottom of
-# this file. Default project attributes are set (inheriting attributes of
-# parent project, if it exists). After that the Jamfile is read. It can declare
-# its own attributes using the 'project' rule which will be combined with any
-# alread set attributes.
-#
-# The 'project' rule can also declare a project id which will be associated
-# with the project module.
-#
-# There can also be 'standalone' projects. They are created by calling
-# 'initialize' on an arbitrary module and not specifying their location. After
-# the call, the module can call the 'project' rule, declare main targets and
-# behave as a regular project except that, since it's not associated with any
-# location, it should not declare targets that are not prebuilt.
-#
-# The list of all loaded Jamfile is stored in the .project-locations variable.
-# It's possible to obtain a module name for a location using the 'module-name'
-# rule. Standalone projects are not recorded and can only be referenced using
-# their project id.
+# Implements project representation and loading. Each project is represented by:
+# - a module where all the Jamfile content live.
+# - an instance of 'project-attributes' class.
+# (given a module name, can be obtained using the 'attributes' rule)
+# - an instance of 'project-target' class (from targets.jam)
+# (given a module name, can be obtained using the 'target' rule)
+#
+# Typically, projects are created as result of loading a Jamfile, which is done
+# by rules 'load' and 'initialize', below. First, module for Jamfile is loaded
+# and new project-attributes instance is created. Some rules necessary for
+# project are added to the module (see 'project-rules' module) at the bottom of
+# this file. Default project attributes are set (inheriting attributes of parent
+# project, if it exists). After that the Jamfile is read. It can declare its own
+# attributes using the 'project' rule which will be combined with any already
+# set attributes.
+#
+# The 'project' rule can also declare a project id which will be associated with
+# the project module.
+#
+# There can also be 'standalone' projects. They are created by calling
+# 'initialize' on an arbitrary module and not specifying their location. After
+# the call, the module can call the 'project' rule, declare main targets and
+# behave as a regular project except that, since it is not associated with any
+# location, it should not declare targets that are not prebuilt.
+#
+# The list of all loaded Jamfile is stored in the .project-locations variable.
+# It is possible to obtain a module name for a location using the 'module-name'
+# rule. Standalone projects are not recorded and can only be referenced using
+# their project id.
 
 import "class" : new ;
 import errors ;
@@ -94,13 +93,14 @@
 
 
 # Note the use of character groups, as opposed to listing 'Jamroot' and
-# 'jamroot'. With the latter, we'd get duplicate matches on Windows and would
-# have to eliminate duplicates.
+# 'jamroot'. With the latter, we would get duplicate matches on Windows and
+# would have to eliminate duplicates.
 JAMROOT ?= [ modules.peek : JAMROOT ] ;
 JAMROOT ?= project-root.jam [Jj]amroot [Jj]amroot.jam ;
 
 
 # Loads parent of Jamfile at 'location'. Issues an error if nothing is found.
+#
 rule load-parent ( location )
 {
     local found = [ path.glob-in-parents $(location) :
@@ -120,6 +120,7 @@
 # Makes the specified 'module' act as if it were a regularly loaded Jamfile at
 # 'location'. Reports an error if a Jamfile has already been loaded for that
 # location.
+#
 rule act-as-jamfile ( module : location )
 {
     if [ module-name $(location) ] in $(.jamfile-modules)
@@ -139,6 +140,7 @@
 
 # Returns the project module corresponding to the given project-id or plain
 # directory name. Returns nothing if such a project can not be found.
+#
 rule find ( name : current-location )
 {
     local project-module ;
@@ -489,6 +491,7 @@
 
 
 # Make 'project-module' inherit attributes of project root and parent module.
+#
 rule inherit-attributes ( project-module : parent-module )
 {
     local attributes = $($(project-module).attributes) ;
@@ -528,6 +531,7 @@
 
 
 # Associate the given id with the given project module.
+#
 rule register-id ( id : module )
 {
     $(id).jamfile-module = $(module) ;
@@ -538,6 +542,7 @@
 #
 # The standard attributes are "id", "location", "project-root", "parent"
 # "requirements", "default-build", "source-location" and "projects-to-build".
+#
 class project-attributes
 {
     import property ;
@@ -556,6 +561,7 @@
 
     # Set the named attribute from the specification given by the user. The
     # value actually set may be different.
+ #
     rule set ( attribute : specification *
         : exact ? # Sets value from 'specification' without any processing.
         )
@@ -640,12 +646,14 @@
     }
 
     # Returns the value of the given attribute.
+ #
     rule get ( attribute )
     {
         return $(self.$(attribute)) ;
     }
 
     # Prints the project attributes.
+ #
     rule print ( )
     {
         local id = $(self.id) ; id ?= (none) ;
@@ -664,6 +672,7 @@
 
 
 # Returns the project which is currently being loaded.
+#
 rule current ( )
 {
     return $(.current-project) ;
@@ -672,6 +681,7 @@
 
 # Temporarily changes the current project to 'project'. Should be followed by
 # 'pop-current'.
+#
 rule push-current ( project )
 {
     .saved-current-project += $(.current-project) ;
@@ -687,6 +697,7 @@
 
 
 # Returns the project-attribute instance for the specified Jamfile module.
+#
 rule attributes ( project )
 {
     return $($(project).attributes) ;
@@ -694,6 +705,7 @@
 
 
 # Returns the value of the specified attribute in the specified Jamfile module.
+#
 rule attribute ( project attribute )
 {
     return [ $($(project).attributes).get $(attribute) ] ;
@@ -701,6 +713,7 @@
 
 
 # Returns the project target corresponding to the 'project-module'.
+#
 rule target ( project-module )
 {
     if ! $(.target.$(project-module))
@@ -714,6 +727,7 @@
 
 
 # Use/load a project.
+#
 rule use ( id : location )
 {
     local saved-project = $(.current-project) ;
@@ -810,6 +824,7 @@
 
 
 # This module defines rules common to all projects.
+#
 module project-rules
 {
     rule using ( toolset-module : * )
@@ -926,8 +941,8 @@
     # child Jamfile.
     #
     rule constant (
- name # Variable name of the constant.
- : value + # Value of the constant.
+ name # Variable name of the constant.
+ : value + # Value of the constant.
         )
     {
         import project ;
@@ -938,9 +953,10 @@
     # Declare and set a project global constant, whose value is a path. The path
     # is adjusted to be relative to the invocation directory. The given value
     # path is taken to be either absolute, or relative to this project root.
+ #
     rule path-constant (
- name # Variable name of the constant.
- : value + # Value of the constant.
+ name # Variable name of the constant.
+ : value + # Value of the constant.
         )
     {
         import project ;
@@ -979,8 +995,8 @@
     rule glob ( wildcards + : excludes * )
     {
         import project ;
- return [ project.glob-internal [ project.current ]
- : $(wildcards) : $(excludes) : glob ] ;
+ return [ project.glob-internal [ project.current ] : $(wildcards) :
+ $(excludes) : glob ] ;
     }
 
     rule glob-tree ( wildcards + : excludes * )
@@ -1015,9 +1031,3 @@
         }
     }
 }
-
-
-local rule __test__ ( )
-{
- import assert ;
-}

Modified: branches/CMake/release/tools/build/v2/build/property-set.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/property-set.jam (original)
+++ branches/CMake/release/tools/build/v2/build/property-set.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,22 +9,23 @@
 import sequence ;
 import set ;
 
+
 # Class for storing a set of properties.
-# - there's 1<->1 correspondence between identity and value. No two instances of
-# the class are equal. To maintain this property, the 'property-set.create'
-# rule should be used to create new instances. Instances are immutable.
 #
-# - each property is classified with regard to it's effect on build results.
-# Incidental properties have no effect on build results, from Boost.Build's
-# point of view. Others are either free, or non-free, which we call 'base'.
-# Each property belongs to exactly one of those categories and it's possible
-# to get list of properties in each category.
+# There is 1<->1 correspondence between identity and value. No two instances
+# of the class are equal. To maintain this property, the 'property-set.create'
+# rule should be used to create new instances. Instances are immutable.
+#
+# Each property is classified with regard to its effect on build results.
+# Incidental properties have no effect on build results, from Boost.Build's
+# point of view. Others are either free, or non-free and we refer to non-free
+# ones as 'base'. Each property belongs to exactly one of those categories.
 #
-# In addition, it's possible to get a list of properties with a specific
-# attribute.
+# It is possible to get a list of properties belonging to each category as
+# well as a list of properties with a specific attribute.
 #
-# - several operations, like and refine and as-path are provided. They all use
-# caching whenever possible.
+# Several operations, like and refine and as-path are provided. They all use
+# caching whenever possible.
 #
 class property-set
 {
@@ -92,6 +93,7 @@
     }
 
     # Returns Jam list of stored properties.
+ #
     rule raw ( )
     {
         return $(self.raw) ;
@@ -103,18 +105,21 @@
     }
 
     # Returns properties that are neither incidental nor free.
+ #
     rule base ( )
     {
         return $(self.base) ;
     }
 
- # Returns free properties which are not dependency properties.
+ # Returns free properties which are not incidental.
+ #
     rule free ( )
     {
         return $(self.free) ;
     }
 
     # Returns dependency properties.
+ #
     rule dependency ( )
     {
         return $(self.dependency) ;
@@ -136,6 +141,7 @@
     }
 
     # Returns incidental properties.
+ #
     rule incidental ( )
     {
         return $(self.incidental) ;
@@ -239,6 +245,7 @@
     # Returns a list of
     # - the computed path
     # - if the path is relative to the build directory, a value of 'true'.
+ #
     rule target-path ( )
     {
         if ! $(self.target-path)
@@ -318,6 +325,7 @@
     }
 
     # Returns all values of 'feature'.
+ #
     rule get ( feature )
     {
         if ! $(self.map-built)
@@ -338,6 +346,7 @@
 
 # Creates a new 'property-set' instance for the given raw properties or returns
 # an already existing ones.
+#
 rule create ( raw-properties * )
 {
     raw-properties = [ sequence.unique
@@ -356,6 +365,7 @@
 
 # Creates a new 'property-set' instance after checking that all properties are
 # valid and converting incidental properties into gristed form.
+#
 rule create-with-validation ( raw-properties * )
 {
     property.validate $(raw-properties) ;
@@ -365,6 +375,7 @@
 
 # Creates a property-set from the input given by the user, in the context of
 # 'jamfile-module' at 'location'.
+#
 rule create-from-user-input ( raw-properties * : jamfile-module location )
 {
     local specification = [ property.translate-paths $(raw-properties)
@@ -386,8 +397,8 @@
 # bound.
 # - location -- path to which path features are relative.
 #
-rule refine-from-user-input ( parent-requirements : specification *
- : project-module : location )
+rule refine-from-user-input ( parent-requirements : specification * :
+ project-module : location )
 {
     if ! $(specification)
     {
@@ -434,6 +445,7 @@
 
 
 # Returns a property-set with an empty set of properties.
+#
 rule empty ( )
 {
     if ! $(.empty)

Modified: branches/CMake/release/tools/build/v2/build/property.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/property.jam (original)
+++ branches/CMake/release/tools/build/v2/build/property.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -18,6 +18,7 @@
 # Refines 'properties' by overriding any non-free and non-conditional properties
 # for which a different value is specified in 'requirements'. Returns the
 # resulting list of properties.
+#
 rule refine ( properties * : requirements * )
 {
     local result ;
@@ -27,7 +28,7 @@
     # them so that we can handle 'properties'.
     for local r in $(requirements)
     {
- # Don't consider conditional requirements.
+ # Do not consider conditional requirements.
         if ! [ MATCH (:) : $(r:G=) ]
         {
             # Note: cannot use a local variable here, so use an ugly name.
@@ -88,6 +89,7 @@
 # Removes all conditional properties whose conditions are not met. For those
 # with met conditions, removes the condition. Properties in conditions are
 # looked up in 'context'.
+#
 rule evaluate-conditionals-in-context ( properties * : context * )
 {
     local base ;
@@ -147,15 +149,17 @@
                 # passing 'true' as the second parameter.
                 e += [ feature.expand-subfeatures $(c) : true ] ;
             }
-
             if $(e) = $(condition)
             {
+ # (todo)
+ # This is just an optimization and possibly a premature one at
+ # that.
+ # (todo) (12.07.2008.) (Jurko)
                 result += $(p) ;
             }
             else
             {
- local individual-subfeatures = [ set.difference $(e) : $(condition) ] ;
- result += $(individual-subfeatures:J=,):$(value) ;
+ result += $(e:J=,):$(value) ;
             }
         }
     }
@@ -165,6 +169,7 @@
 
 # Helper for as-path, below. Orders properties with the implicit ones first, and
 # within the two sections in alphabetical order of feature name.
+#
 local rule path-order ( x y )
 {
     if $(y:G) && ! $(x:G)
@@ -219,16 +224,17 @@
 
 
 # Returns a path representing the given expanded property set.
+#
 rule as-path ( properties * )
 {
     local entry = .result.$(properties:J=-) ;
 
     if ! $($(entry))
     {
- # trim redundancy
+ # Trim redundancy.
         properties = [ feature.minimize $(properties) ] ;
 
- # sort according to path-order
+ # Sort according to path-order.
         properties = [ sequence.insertion-sort $(properties) : path-order ] ;
 
         local components ;
@@ -250,6 +256,7 @@
 
 
 # Exit with error if property is not valid.
+#
 local rule validate1 ( property )
 {
     local msg ;
@@ -307,6 +314,7 @@
 
 # Expands any implicit property values in the given property 'specification' so
 # they explicitly state their feature.
+#
 rule make ( specification * )
 {
     local result ;
@@ -332,6 +340,7 @@
 
 # Returns a property set containing all the elements in 'properties' that do not
 # have their attributes listed in 'attributes'.
+#
 rule remove ( attributes + : properties * )
 {
     local result ;
@@ -346,8 +355,9 @@
 }
 
 
-# Returns a property set containig all the elements in 'properties' that have
+# Returns a property set containing all the elements in 'properties' that have
 # their attributes listed in 'attributes'.
+#
 rule take ( attributes + : properties * )
 {
     local result ;
@@ -363,6 +373,7 @@
 
 
 # Selects properties corresponding to any of the given features.
+#
 rule select ( features * : properties * )
 {
     local result ;
@@ -384,6 +395,7 @@
 
 # Returns a modified version of properties with all values of the given feature
 # replaced by the given value. If 'value' is empty the feature will be removed.
+#
 rule change ( properties * : feature value ? )
 {
     local result ;
@@ -406,6 +418,7 @@
 # property. E.g. <variant>debug,<toolset>gcc:<inlining>full will become
 # <variant>debug,<toolset>gcc <inlining>full. Otherwise, returns an empty
 # string.
+#
 rule split-conditional ( property )
 {
     local m = [ MATCH "(.+):<(.+)" : $(property) ] ;
@@ -419,6 +432,7 @@
 # Interpret all path properties in 'properties' as relative to 'path'. The
 # property values are assumed to be in system-specific form, and will be
 # translated into normalized form.
+#
 rule translate-paths ( properties * : path )
 {
     local result ;
@@ -456,6 +470,7 @@
 # in 'context-module'. Such rules can be either local to the module or global.
 # Converts such values into 'indirect-rule' format (see indirect.jam), so they
 # can be called from other modules.
+#
 rule translate-indirect ( specification * : context-module )
 {
     local result ;
@@ -497,7 +512,8 @@
 }
 
 
-# Class which maintains a property set -> string mapping.
+# Class maintaining a property set -> string mapping.
+#
 class property-map
 {
     import errors ;
@@ -509,7 +525,8 @@
         self.next-flag = 1 ;
     }
 
- # Associate 'value' with 'properties'
+ # Associate 'value' with 'properties'.
+ #
     rule insert ( properties + : value )
     {
         self.all-flags += $(self.next-flag) ;
@@ -521,7 +538,8 @@
 
     # Returns the value associated with 'properties' or any subset of it. If
     # more than one subset has a value assigned to it, returns the value for the
- # longest subset, if it's unique.
+ # longest subset, if it is unique.
+ #
     rule find ( properties + )
     {
         return [ find-replace $(properties) ] ;
@@ -529,9 +547,10 @@
 
     # Returns the value associated with 'properties'. If 'value' parameter is
     # given, replaces the found value.
+ #
     rule find-replace ( properties + : value ? )
     {
- # First find all matches
+ # First find all matches.
         local matches ;
         local match-ranks ;
         for local i in $(self.all-flags)
@@ -558,7 +577,7 @@
 }
 
 
-local rule __test__ ( )
+rule __test__ ( )
 {
     import assert ;
     import "class" : new ;
@@ -591,24 +610,24 @@
     assert.true path-order $(test-space) <optimization>on <rtti>on ;
     assert.false path-order $(test-space) <rtti>on <optimization>on ;
 
- assert.result-equal <toolset>gcc <rtti>off <define>FOO
+ assert.result-set-equal <toolset>gcc <rtti>off <define>FOO
         : refine <toolset>gcc <rtti>off
         : <define>FOO
         : $(test-space) ;
 
- assert.result-equal <toolset>gcc <optimization>on
+ assert.result-set-equal <toolset>gcc <optimization>on
         : refine <toolset>gcc <optimization>off
         : <optimization>on
         : $(test-space) ;
 
- assert.result-equal <toolset>gcc <rtti>off
+ assert.result-set-equal <toolset>gcc <rtti>off
         : refine <toolset>gcc : <rtti>off : $(test-space) ;
 
- assert.result-equal <toolset>gcc <rtti>off <rtti>off:<define>FOO
+ assert.result-set-equal <toolset>gcc <rtti>off <rtti>off:<define>FOO
         : refine <toolset>gcc : <rtti>off <rtti>off:<define>FOO
         : $(test-space) ;
 
- assert.result-equal <toolset>gcc:<define>foo <toolset>gcc:<define>bar
+ assert.result-set-equal <toolset>gcc:<define>foo <toolset>gcc:<define>bar
         : refine <toolset>gcc:<define>foo : <toolset>gcc:<define>bar
         : $(test-space) ;
 
@@ -646,19 +665,19 @@
         validate value : $(test-space) ;
     catch "value" is not a value of an implicit feature ;
 
- assert.result-equal <rtti>on
+ assert.result-set-equal <rtti>on
         : remove free implicit : <toolset>gcc <define>foo <rtti>on : $(test-space) ;
 
- assert.result-equal <include>a
+ assert.result-set-equal <include>a
         : select include : <include>a <toolset>gcc ;
 
- assert.result-equal <include>a
+ assert.result-set-equal <include>a
         : select include bar : <include>a <toolset>gcc ;
 
- assert.result-equal <include>a <toolset>gcc
+ assert.result-set-equal <include>a <toolset>gcc
         : select include <bar> <toolset> : <include>a <toolset>gcc ;
 
- assert.result-equal <toolset>kylix <include>a
+ assert.result-set-equal <toolset>kylix <include>a
         : change <toolset>gcc <include>a : <toolset> kylix ;
 
     pm = [ new property-map ] ;
@@ -681,7 +700,7 @@
     assert.result : split-conditional <define>FOO=A::B ;
 
     # Test conditional feature.
- assert.result-equal <toolset>gcc,<toolset-gcc:version>3.0 <define>FOO
+ assert.result-set-equal <toolset>gcc,<toolset-gcc:version>3.0 <define>FOO
         : split-conditional <toolset>gcc,<toolset-gcc:version>3.0:<define>FOO ;
 
     feature.finish-test property-test-temp ;

Modified: branches/CMake/release/tools/build/v2/build/scanner.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/scanner.jam (original)
+++ branches/CMake/release/tools/build/v2/build/scanner.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -28,6 +28,7 @@
 
 import "class" : new ;
 import property virtual-target property-set ;
+import errors : error ;
 
 # Base scanner class.
 class scanner

Modified: branches/CMake/release/tools/build/v2/build/targets.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/targets.jam (original)
+++ branches/CMake/release/tools/build/v2/build/targets.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,29 +5,28 @@
 # (See accompanying file LICENSE_1_0.txt or copy at
 # http://www.boost.org/LICENSE_1_0.txt)
 
-# Supports 'abstract' targets, which are targets explicitly defined in a
-# Jamfile.
+# Supports 'abstract' targets, which are targets explicitly defined in a
+# Jamfile.
 #
-# Abstract targets are represented by classes derived from 'abstract-target'
-# class. The first abstract target is 'project-target', which is created for
-# each Jamfile, and can be obtained by the 'target' rule in the Jamfile's
-# module (see project.jam).
-#
-# Project targets keep a list of 'main-target' instances. A main target is
-# what the user explicitly defines in a Jamfile. It is possible to have
-# several definitions for a main target, for example to have different lists
-# of sources for different platforms. So, main targets keep a list of
-# alternatives.
-#
-# Each alternative is an instance of 'abstract-target'. When a main target
-# subvariant is defined by some rule, that rule will decide what class to use,
-# create an instance of that class and add it to the list of alternatives for
-# the main target.
-#
-# Rules supplied by the build system will use only targets derived from
-# 'basic-target' class, which will provide some default behaviour. There will
-# be different classes derived from it such as 'make-target', created by the
-# 'make' rule, and 'typed-target', created by rules such as 'exe' and 'lib'.
+# Abstract targets are represented by classes derived from 'abstract-target'
+# class. The first abstract target is 'project-target', which is created for
+# each Jamfile, and can be obtained by the 'target' rule in the Jamfile's module
+# (see project.jam).
+#
+# Project targets keep a list of 'main-target' instances. A main target is
+# what the user explicitly defines in a Jamfile. It is possible to have several
+# definitions for a main target, for example to have different lists of sources
+# for different platforms. So, main targets keep a list of alternatives.
+#
+# Each alternative is an instance of 'abstract-target'. When a main target
+# subvariant is defined by some rule, that rule will decide what class to use,
+# create an instance of that class and add it to the list of alternatives for
+# the main target.
+#
+# Rules supplied by the build system will use only targets derived from
+# 'basic-target' class, which will provide some default behaviour. There will be
+# different classes derived from it such as 'make-target', created by the 'make'
+# rule, and 'typed-target', created by rules such as 'exe' and 'lib'.
 
 #
 # +------------------------+
@@ -80,7 +79,9 @@
 import set ;
 import toolset ;
 
+
 # Base class for all abstract targets.
+#
 class abstract-target
 {
     import project ;
@@ -135,6 +136,7 @@
     # - a list of produced virtual targets, which may be empty.
     # If 'property-set' is empty, performs the default build of this target, in
     # a way specific to the derived class.
+ #
     rule generate ( property-set )
     {
         errors.error "method should be defined in derived classes" ;
@@ -181,6 +183,7 @@
 # that time, alternatives can also be renamed to account for inline targets.
 # - The first time 'main-target' or 'has-main-target' rule is called, all
 # alternatives are enumerated and main targets are created.
+#
 class project-target : abstract-target
 {
     import project ;
@@ -211,6 +214,7 @@
 
     # This is needed only by the 'make' rule. Need to find the way to make
     # 'make' work without this method.
+ #
     rule project-module ( )
     {
         return $(self.project-module) ;
@@ -238,6 +242,7 @@
     }
 
     # Generates all possible targets contained in this project.
+ #
     rule generate ( property-set * )
     {
         if [ modules.peek : .debug-building ]
@@ -261,6 +266,7 @@
 
     # Computes and returns a list of abstract-target instances which must be
     # built when this project is built.
+ #
     rule targets-to-build ( )
     {
         local result ;
@@ -291,6 +297,7 @@
 
     # Add 'target' to the list of targets in this project that should be build
     # only by explicit request
+ #
     rule mark-target-as-explicit ( target-name )
     {
         # Record the name of the target, not instance, since this
@@ -299,6 +306,7 @@
     }
 
     # Add new target alternative
+ #
     rule add-alternative ( target-instance )
     {
         if $(self.built-main-targets)
@@ -310,6 +318,7 @@
     }
 
     # Returns a 'main-target' class instance corresponding to the 'name'.
+ #
     rule main-target ( name )
     {
         if ! $(self.built-main-targets)
@@ -321,6 +330,7 @@
     }
 
     # Tells if a main target with the specified name exists.
+ #
     rule has-main-target ( name )
     {
         if ! $(self.built-main-targets)
@@ -334,8 +344,9 @@
         }
     }
 
- # Find and return the target with the specified id, treated
- # relative to self.
+ # Find and return the target with the specified id, treated relative to
+ # self.
+ #
     rule find-really ( id )
     {
         local result ;
@@ -452,6 +463,7 @@
     }
 
     # Accessor, add a constant.
+ #
     rule add-constant (
         name # Variable name of the constant.
         : value + # Value of the constant.
@@ -495,7 +507,7 @@
         # Import rules from parent.
         local this-module = [ project-module ] ;
         local parent-module = [ $(parent).project-module ] ;
- # Don't import rules coming from 'project-rules' as they must be
+ # Do not import rules coming from 'project-rules' as they must be
         # imported localized.
         local user-rules = [ set.difference
             [ RULENAMES $(parent-module) ] :
@@ -506,7 +518,8 @@
 }
 
 
-# Helper rules to detect cycles in main target references
+# Helper rules to detect cycles in main target references.
+#
 local rule start-building ( main-target-instance )
 {
     if $(main-target-instance) in $(.targets-being-built)
@@ -532,6 +545,7 @@
 
 
 # A named top-level target in Jamfile.
+#
 class main-target : abstract-target
 {
     import assert ;
@@ -568,6 +582,7 @@
 
     # Returns the best viable alternative for this property-set. See the
     # documentation for selection rules.
+ #
     local rule select-alternatives ( property-set debug ? )
     {
         # When selecting alternatives we have to consider defaults, for example:
@@ -697,8 +712,9 @@
 
     # Select an alternative for this main target, by finding all alternatives
     # which requirements are satisfied by 'properties' and picking the one with
- # longest requirements set. Returns the result of calling 'generate' on that
- # alternative.
+ # the longest requirements set. Returns the result of calling 'generate' on
+ # that alternative.
+ #
     rule generate ( property-set )
     {
         start-building $(__name__) ;
@@ -726,7 +742,8 @@
     # Generates the main target with the given property set and returns a list
     # which first element is property-set object containing usage-requirements
     # of generated target and with generated virtual target in other elements.
- # It's possible that no targets are generated.
+ # It is possible that no targets are generated.
+ #
     local rule generate-really ( property-set )
     {
         local best-alternatives = [ select-alternatives $(property-set) ] ;
@@ -757,6 +774,7 @@
 # Abstract target which refers to a source file. This is an artificial entity
 # allowing sources to a target to be represented using a list of abstract target
 # instances.
+#
 class file-reference : abstract-target
 {
     import virtual-target ;
@@ -811,9 +829,10 @@
 # Given a target-reference, made in context of 'project', returns the
 # abstract-target instance that is referred to, as well as properties explicitly
 # specified for this reference.
+#
 rule resolve-reference ( target-reference : project )
 {
- # Separate target name from properties override
+ # Separate target name from properties override.
     local split = [ MATCH "^([^<]*)(/(<.*))?$" : $(target-reference) ] ;
     local id = $(split[1]) ;
     local sproperties = ;
@@ -823,7 +842,7 @@
         sproperties = [ feature.expand-composites $(sproperties) ] ;
     }
 
- # Find the target
+ # Find the target.
     local target = [ $(project).find $(id) ] ;
 
     return $(target) [ property-set.create $(sproperties) ] ;
@@ -834,6 +853,7 @@
 # both to a main target or to a file. Returns a list consisting of
 # - usage requirements
 # - generated virtual targets, if any
+#
 rule generate-from-reference (
     target-reference # Target reference.
     : project # Project where the reference is made.
@@ -860,15 +880,23 @@
 
 
 # Given a build request and requirements, return properties common to dependency
-# build request and target build properties.
+# build request and target requirements.
+#
+# TODO: Document exactly what 'common properties' are, whether they should
+# include default property values, whether they should contain any conditional
+# properties or should those be already processed, etc. See whether there are
+# any differences between use cases with empty and non-empty build-request as
+# well as with requirements containing and those not containing any non-free
+# features.
+#
 rule common-properties ( build-request requirements )
 {
     # For optimization, we add free requirements directly, without using a
- # complex algorithm. This gives the complex algorithm better chance of
+ # complex algorithm. This gives the complex algorithm a better chance of
     # caching results.
     local free = [ $(requirements).free ] ;
- local non-free = [ property-set.create
- [ $(requirements).base ] [ $(requirements).incidental ] ] ;
+ local non-free = [ property-set.create [ $(requirements).base ]
+ [ $(requirements).incidental ] ] ;
 
     local key = .rp.$(build-request)-$(non-free) ;
     if ! $($(key))
@@ -879,7 +907,7 @@
 }
 
 
-# Given 'context' -- a set of already present properties, and 'requirements',
+# Given a 'context' -- a set of already present properties, and 'requirements',
 # decide which extra properties should be applied to 'context'. For conditional
 # requirements, this means evaluating condition. For indirect conditional
 # requirements, this means calling a rule. Ordinary requirements are always
@@ -891,15 +919,16 @@
 #
 # If 'what' is 'refined' returns context refined with new requirements. If
 # 'what' is 'added' returns just the requirements to be applied.
+#
 rule evaluate-requirements ( requirements : context : what )
 {
- # Apply non-conditional requirements. It's possible that further conditional
- # requirement change a value set by non-conditional requirements. For
- # example:
+ # Apply non-conditional requirements. It is possible that further
+ # conditional requirement change a value set by non-conditional
+ # requirements. For example:
     #
     # exe a : a.cpp : <threading>single <toolset>foo:<threading>multi ;
     #
- # I'm not sure if this should be an error, or not, especially given that
+ # I am not sure if this should be an error, or not, especially given that
     #
     # <threading>single
     #
@@ -910,15 +939,15 @@
     local raw = [ $(context).raw ] ;
     raw = [ property.refine $(raw) : $(unconditional) ] ;
 
- # We've collected properties that surely must be present in common
+ # We have collected properties that surely must be present in common
     # properties. We now try to figure out what other properties should be added
     # in order to satisfy rules (4)-(6) from the docs.
 
     local conditionals = [ $(requirements).conditional ] ;
     # The 'count' variable has one element for each conditional feature and for
- # each occurence of '<indirect-conditional>' feature. It's used as a loop
+ # each occurence of '<indirect-conditional>' feature. It is used as a loop
     # counter: for each iteration of the loop before we remove one element and
- # the property set should stabilize before we're done. It's assumed that
+ # the property set should stabilize before we are done. It is assumed that
     # #conditionals iterations should be enough for properties to propagate
     # along conditions in any direction.
     local count = $(conditionals)
@@ -929,9 +958,9 @@
 
     local current = $(raw) ;
 
- # It's assumed that ordinary conditional requirements can't add
- # <indirect-conditional> properties, and that rules referred by
- # <indirect-conditional> properties can't add new <indirect-conditional>
+ # It is assumed that ordinary conditional requirements can not add
+ # <indirect-conditional> properties, and that rules referred to by
+ # <indirect-conditional> properties can not add new <indirect-conditional>
     # properties. So the list of indirect conditionals does not change.
     local indirect = [ $(requirements).get <conditional> ] ;
     indirect = [ MATCH @(.*) : $(indirect) ] ;
@@ -957,9 +986,9 @@
         }
         else
         {
- # Oops, results of evaluation of conditionals has changed. Also
- # 'current' contains leftover from previous evaluation. Recompute
- # 'current' using initial properties and conditional requirements.
+ # Oops, conditional evaluation results have changed. Also 'current'
+ # contains leftovers from a previous evaluation. Recompute 'current'
+ # using initial properties and conditional requirements.
             added-requirements = $(e) ;
             current = [ property.refine $(raw) : [ feature.expand $(e) ] ] ;
         }
@@ -967,7 +996,7 @@
     }
     if ! $(ok)
     {
- errors.error "Can't evaluate conditional properties " $(conditionals) ;
+ errors.error "Can not evaluate conditional properties " $(conditionals) ;
     }
 
     if $(what) = added
@@ -989,24 +1018,25 @@
 {
     # This guarantees that default properties are present in the result, unless
     # they are overriden by some requirement. FIXME: There is possibility that
- # we've added <foo>bar, which is composite and expands to <foo2>bar2, but
- # default value of <foo2> is not bar2, in which case it's not clear what to
+ # we have added <foo>bar, which is composite and expands to <foo2>bar2, but
+ # default value of <foo2> is not bar2, in which case it is not clear what to
     # do.
     #
     build-request = [ $(build-request).add-defaults ] ;
     # Features added by 'add-default' can be composite and expand to features
     # without default values -- so they are not added yet. It could be clearer/
- # /faster to expand only newly added properties but that's not critical.
+ # /faster to expand only newly added properties but that is not critical.
     build-request = [ $(build-request).expand ] ;
 
- return [ evaluate-requirements $(requirements)
- : $(build-request) : refined ] ;
+ return [ evaluate-requirements $(requirements) : $(build-request) :
+ refined ] ;
 }
 
 
 # Implements the most standard way of constructing main target alternative from
 # sources. Allows sources to be either file or other main target and handles
 # generation of those dependency targets.
+#
 class basic-target : abstract-target
 {
     import build-request ;
@@ -1051,9 +1081,11 @@
     # Returns the list of abstract-targets which are used as sources. The extra
     # properties specified for sources are not represented. The only user for
     # this rule at the moment is the "--dump-tests" feature of the test system.
+ #
     rule sources ( )
     {
- if ! $(self.source-targets) {
+ if ! $(self.source-targets)
+ {
             for local s in $(self.sources)
             {
                 self.source-targets +=
@@ -1075,16 +1107,16 @@
 
     # Returns the alternative condition for this alternative, if the condition
     # is satisfied by 'property-set'.
+ #
     rule match ( property-set debug ? )
     {
- # The condition is composed of all base non-conditional properties. It's
- # not clear if we should expand 'self.requirements' or not. For one
+ # The condition is composed of all base non-conditional properties. It
+ # is not clear if we should expand 'self.requirements' or not. For one
         # thing, it would be nice to be able to put
         # <toolset>msvc-6.0
- # in requirements.
- # On the other hand, if we have <variant>release in condition it does
- # not make sense to require <optimization>full to be in build request
- # just to select this variant.
+ # in requirements. On the other hand, if we have <variant>release as a
+ # condition it does not make sense to require <optimization>full to be
+ # in the build request just to select this variant.
         local bcondition = [ $(self.requirements).base ] ;
         local ccondition = [ $(self.requirements).conditional ] ;
         local condition = [ set.difference $(bcondition) : $(ccondition) ] ;
@@ -1116,6 +1148,7 @@
     #
     # The results are added to the variable called 'result-var'. Usage
     # requirements are added to the variable called 'usage-requirements-var'.
+ #
     rule generate-dependencies ( dependencies * : property-set
         : result-var usage-requirements-var )
     {
@@ -1124,9 +1157,8 @@
             local grist = $(dependency:G) ;
             local id = $(dependency:G=) ;
 
- local result =
- [ targets.generate-from-reference $(id) : $(self.project)
- : $(property-set) ] ;
+ local result = [ targets.generate-from-reference $(id) :
+ $(self.project) : $(property-set) ] ;
 
             $(result-var) += $(result[2-]:G=$(grist)) ;
             $(usage-requirements-var) += [ $(result[1]).raw ] ;
@@ -1135,6 +1167,7 @@
 
     # Determines final build properties, generates sources, and calls
     # 'construct'. This method should not be overridden.
+ #
     rule generate ( property-set )
     {
         if [ modules.peek : .debug-building ]
@@ -1143,7 +1176,7 @@
             local fn = [ full-name ] ;
             ECHO [ targets.indent ] "Building target '$(fn)'" ;
             targets.increase-indent ;
- ECHO [ targets.indent ] "Build request: " [ $(property-set).raw ] ;
+ ECHO [ targets.indent ] "Build request: " $(property-set) [ $(property-set).raw ] ;
             local cf = [ build-system.command-line-free-features ] ;
             ECHO [ targets.indent ] "Command line free features: " [ $(cf).raw ] ;
             ECHO [ targets.indent ] "Target requirements: " [ $(self.requirements).raw ] ;
@@ -1151,7 +1184,7 @@
 
         if ! $(self.generated.$(property-set))
         {
- # Apply free features form the command line. If user said
+ # Apply free features from the command line. If user said
             # define=FOO
             # he most likely wants this define to be set for all compiles.
             property-set = [ $(property-set).refine
@@ -1162,7 +1195,7 @@
             if [ modules.peek : .debug-building ]
             {
                 ECHO ;
- ECHO [ targets.indent ] "Common properties:" [ $(rproperties).raw ] ;
+ ECHO [ targets.indent ] "Common properties: " [ $(rproperties).raw ] ;
             }
 
             if $(rproperties[1]) != "@error" && [ $(rproperties).get <build> ] != no
@@ -1171,18 +1204,17 @@
                 local properties = [ $(rproperties).non-dependency ] ;
                 local usage-requirements ;
 
- generate-dependencies [ $(rproperties).dependency ]
- : $(rproperties)
- : properties usage-requirements ;
+ generate-dependencies [ $(rproperties).dependency ] :
+ $(rproperties) : properties usage-requirements ;
 
- generate-dependencies $(self.sources) : $(rproperties)
- : source-targets usage-requirements ;
+ generate-dependencies $(self.sources) : $(rproperties) :
+ source-targets usage-requirements ;
 
                 if [ modules.peek : .debug-building ]
                 {
                     ECHO ;
- ECHO [ targets.indent ]
- "Usage requirements for $(self.name) are " $(usage-requirements) ;
+ ECHO [ targets.indent ] "Usage requirements for"
+ $(self.name)": " $(usage-requirements) ;
                 }
 
                 rproperties = [ property-set.create $(properties)
@@ -1191,8 +1223,8 @@
 
                 if [ modules.peek : .debug-building ]
                 {
- ECHO [ targets.indent ]
- "Build properties: " [ $(rproperties).raw ] ;
+ ECHO [ targets.indent ] "Build properties: "
+ [ $(rproperties).raw ] ;
                 }
 
                 local extra = [ $(rproperties).get <source> ] ;
@@ -1201,9 +1233,8 @@
                 # libraries having the same <library> usage requirement.
                 source-targets = [ sequence.unique $(source-targets) ] ;
 
- local result =
- [ construct $(self.name) :
- $(source-targets) : $(rproperties) ] ;
+ local result = [ construct $(self.name) : $(source-targets) :
+ $(rproperties) ] ;
 
                 if $(result)
                 {
@@ -1221,9 +1252,8 @@
                     $(s).set-usage-requirements $(ur) ;
                     if [ modules.peek : .debug-building ]
                     {
- ECHO [ targets.indent ]
- "Usage requirements from $(self.name) are "
- [ $(ur).raw ] ;
+ ECHO [ targets.indent ] "Usage requirements from"
+ $(self.name)": " [ $(ur).raw ] ;
                     }
 
                     self.generated.$(property-set) = $(ur) $(result) ;
@@ -1233,24 +1263,34 @@
             {
                 if $(rproperties[1]) = "@error"
                 {
- ECHO [ targets.indent ]
- "Skipping build of: " [ full-name ] " cannot compute common properties" ;
+ ECHO [ targets.indent ] "Skipping build of:" [ full-name ]
+ "cannot compute common properties" ;
                 }
                 else if [ $(rproperties).get <build> ] = no
                 {
- ECHO [ targets.indent ]
- "Skipping build of: " [ full-name ] " <build>no in common properties" ;
+ ECHO [ targets.indent ] "Skipping build of: " [ full-name ]
+ " <build>no in common properties" ;
                 }
                 else
                 {
- ECHO [ targets.indent ] "Skipping build of: " [ full-name ] " unknown reason" ;
+ ECHO [ targets.indent ] "Skipping build of: " [ full-name ]
+ " unknown reason" ;
                 }
 
- # We're here either because there's been an error computing
- # properties, or there's <build>no in properties. In the latter
- # case we don't want any diagnostic. In the former case, we need
- # diagnostics. FIXME
- self.generated.$(property-set) = $(rproperties) ;
+ # We are here either because there has been an error computing
+ # properties or there is <build>no in properties. In the latter
+ # case we do not want any diagnostic. In the former case, we
+ # need diagnostics. FIXME
+
+ # If this target fails to build, add <build>no to properties to
+ # cause any parent target to fail to build. Except that it
+ # - does not work now, since we check for <build>no only in
+ # common properties, but not in properties that came from
+ # dependencies
+ # - it is not clear if that is a good idea anyway. The alias
+ # target, for example, should not fail to build if a
+ # dependency fails.
+ self.generated.$(property-set) = [ property-set.create <build>no ] ;
             }
         }
         else
@@ -1258,6 +1298,12 @@
             if [ modules.peek : .debug-building ]
             {
                 ECHO [ targets.indent ] "Already built" ;
+ local ur = $(self.generated.$(property-set)) ;
+ ur = $(ur[0]) ;
+ targets.increase-indent ;
+ ECHO [ targets.indent ] "Usage requirements from"
+ $(self.name)": " [ $(ur).raw ] ;
+ targets.decrease-indent ;
             }
         }
 
@@ -1266,7 +1312,8 @@
     }
 
     # Given the set of generated targets, and refined build properties,
- # determines and sets appripriate usage requirements on those targets.
+ # determines and sets appropriate usage requirements on those targets.
+ #
     rule compute-usage-requirements ( subvariant )
     {
         local rproperties = [ $(subvariant).build-properties ] ;
@@ -1282,7 +1329,7 @@
         local result = [ property-set.create
             [ $(xusage-requirements).non-dependency ] $(extra) ] ;
 
- # Propagate usage requirements we've got from sources, except for the
+ # Propagate usage requirements we got from sources, except for the
         # <pch-header> and <pch-file> features.
         #
         # That feature specifies which pch file to use, and should apply only to
@@ -1298,6 +1345,13 @@
         # Essentially, when those two features are in usage requirements, they
         # are propagated only to direct dependents. We might need a more general
         # mechanism, but for now, only those two features are special.
+ #
+ # TODO - Actually there are more possible candidates like for instance
+ # when listing static library X as a source for another static library.
+ # Then static library X will be added as a <source> property to the
+ # second library's usage requirements but those requirements should last
+ # only up to the first executable or shared library that actually links
+ # to it.
         local raw = [ $(subvariant).sources-usage-requirements ] ;
         raw = [ $(raw).raw ] ;
         raw = [ property.change $(raw) : <pch-header> ] ;
@@ -1309,9 +1363,9 @@
     # 'root-targets' - virtual targets to be returned to dependants
     # 'all-targets' - virtual targets created while building this main target
     # 'build-request' - property-set instance with requested build properties
- local rule create-subvariant ( root-targets *
- : all-targets * : build-request : sources * : rproperties
- : usage-requirements )
+ #
+ local rule create-subvariant ( root-targets * : all-targets * :
+ build-request : sources * : rproperties : usage-requirements )
     {
         for local e in $(root-targets)
         {
@@ -1320,8 +1374,8 @@
 
         # Process all virtual targets that will be created if this main target
         # is created.
- local s = [ new subvariant $(__name__) : $(build-request) : $(sources)
- : $(rproperties) : $(usage-requirements) : $(all-targets) ] ;
+ local s = [ new subvariant $(__name__) : $(build-request) : $(sources) :
+ $(rproperties) : $(usage-requirements) : $(all-targets) ] ;
         for local v in $(all-targets)
         {
             if ! [ $(v).creating-subvariant ]
@@ -1333,8 +1387,9 @@
     }
 
     # Constructs virtual targets for this abstract target and the dependency
- # graph. Returns the list of virtual targets. Should be overriden in derived
- # classes.
+ # graph. Returns a usage-requirements property-set and a list of virtual
+ # targets. Should be overriden in derived classes.
+ #
     rule construct ( name : source-targets * : properties * )
     {
         errors.error "method should be defined in derived classes" ;
@@ -1423,6 +1478,7 @@
 # Returns the requirements to use when declaring a main target, obtained by
 # translating all specified property paths and refining project requirements
 # with the ones specified for the target.
+#
 rule main-target-requirements (
     specification * # Properties explicitly specified for the main target.
     : project # Project where the main target is to be declared.
@@ -1444,6 +1500,7 @@
 # Returns the usage requirements to use when declaring a main target, which are
 # obtained by translating all specified property paths and adding project's
 # usage requirements.
+#
 rule main-target-usage-requirements (
     specification * # Use-properties explicitly specified for a main target.
     : project # Project where the main target is to be declared.
@@ -1466,6 +1523,7 @@
 # Return the default build value to use when declaring a main target, which is
 # obtained by using the specified value if not empty and parent's default build
 # attribute otherwise.
+#
 rule main-target-default-build (
     specification * # Default build explicitly specified for a main target.
     : project # Project where the main target is to be declared.
@@ -1485,6 +1543,7 @@
 
 
 # Registers the specified target as a main target alternative and returns it.
+#
 rule main-target-alternative ( target )
 {
     local ptarget = [ $(target).project ] ;
@@ -1496,8 +1555,9 @@
 # Creates a typed-target with the specified properties. The 'name', 'sources',
 # 'requirements', 'default-build' and 'usage-requirements' are assumed to be in
 # the form specified by the user in Jamfile corresponding to 'project'.
-rule create-typed-target ( type : project : name : sources * : requirements *
- : default-build * : usage-requirements * )
+#
+rule create-typed-target ( type : project : name : sources * : requirements * :
+ default-build * : usage-requirements * )
 {
     return [
         targets.main-target-alternative

Modified: branches/CMake/release/tools/build/v2/build/toolset.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/toolset.jam (original)
+++ branches/CMake/release/tools/build/v2/build/toolset.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -135,7 +135,6 @@
         }
     }
 
-
     if $(condition) && ! $(condition:G=) && ! $(hack-hack)
     {
         # We have condition in the form '<feature>', that is, without value.
@@ -153,8 +152,7 @@
         condition = [ normalize-condition $(condition) ] ;
     }
 
- add-flag $(rule-or-module) : $(variable-name)
- : $(condition) : $(values) ;
+ add-flag $(rule-or-module) : $(variable-name) : $(condition) : $(values) ;
 }
 
 
@@ -327,8 +325,8 @@
     local settings = $(.stv.$(key)) ;
     if ! $(settings)
     {
- settings = [
- set-target-variables-aux $(rule-or-module) : $(property-set) ] ;
+ settings = [ set-target-variables-aux $(rule-or-module) :
+ $(property-set) ] ;
 
         if ! $(settings)
         {
@@ -486,7 +484,7 @@
 }
 
 
-local rule __test__ ( )
+rule __test__ ( )
 {
     import assert ;
     local p = <b>0 <c>1 <d>2 <e>3 <f>4 ;

Modified: branches/CMake/release/tools/build/v2/build/type.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/type.jam (original)
+++ branches/CMake/release/tools/build/v2/build/type.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -18,8 +18,8 @@
 # project -> project-root -> builtin -> type -> targets -> project
 # import targets ;
 
-# The feature is optional so it would never get added implicitly. It's used only
-# for internal purposes and in all cases we want to use it explicitly.
+# The feature is optional so it would never get added implicitly. It is used
+# only for internal purposes and in all cases we want to use it explicitly.
 feature.feature target-type : : composite optional ;
 
 feature.feature main-target-type : : optional incidental ;
@@ -30,6 +30,7 @@
 # of 'suffixes' here is a shortcut for separately calling the register-suffixes
 # rule with the given suffixes and the set-generated-target-suffix rule with the
 # first given suffix.
+#
 rule register ( type : suffixes * : base-type ? )
 {
     # Type names cannot contain hyphens, because when used as feature-values
@@ -81,6 +82,7 @@
 
 # Given a type, returns the name of the main target rule which creates targets
 # of that type.
+#
 rule type-to-rule-name ( type )
 {
     # Lowercase everything. Convert underscores to dashes.
@@ -91,6 +93,7 @@
 
 
 # Given a main target rule name, returns the type for which it creates targets.
+#
 rule type-from-rule-name ( rule-name )
 {
     return $(.main-target-type.$(rule-name)) ;
@@ -100,6 +103,7 @@
 # Specifies that files with suffix from 'suffixes' be recognized as targets of
 # type 'type'. Issues an error if a different type is already specified for any
 # of the suffixes.
+#
 rule register-suffixes ( suffixes + : type )
 {
     for local s in $(suffixes)
@@ -118,6 +122,7 @@
 
 
 # Returns true iff type has been registered.
+#
 rule registered ( type )
 {
     if $(type) in $(.types)
@@ -128,6 +133,7 @@
 
 
 # Issues an error if 'type' is unknown.
+#
 rule validate ( type )
 {
     if ! $(type) in $(.types)
@@ -138,6 +144,7 @@
 
 
 # Sets a scanner class that will be used for this 'type'.
+#
 rule set-scanner ( type : scanner )
 {
     if ! $(type) in $(.types)
@@ -149,6 +156,7 @@
 
 
 # Returns a scanner instance appropriate to 'type' and 'properties'.
+#
 rule get-scanner ( type : property-set )
 {
     if $(.scanner.$(type))
@@ -160,6 +168,7 @@
 
 # Returns the given type and all of its base types in order of their distance
 # from type.
+#
 rule all-bases ( type )
 {
     local result = $(type) ;
@@ -184,6 +193,7 @@
 
 
 # Returns true if 'type' has 'base' as its direct or indirect base.
+#
 rule is-derived ( type base )
 {
     if $(base) in [ all-bases $(type) ]
@@ -194,6 +204,7 @@
 
 
 # Returns true if 'type' is either derived from or is equal to 'base'.
+#
 rule is-subtype ( type base )
 {
     if $(type) = $(base)
@@ -233,6 +244,7 @@
 
 # Change the suffix previously registered for this type/properties combination.
 # If suffix is not yet specified, sets it.
+#
 rule change-generated-target-suffix ( type : properties * : suffix )
 {
     change-generated-target-ps suffix : $(type) : $(properties) : $(suffix) ;
@@ -241,6 +253,7 @@
 
 # Returns the suffix used when generating a file of 'type' with the given
 # properties.
+#
 rule generated-target-suffix ( type : property-set )
 {
     return [ generated-target-ps suffix : $(type) : $(property-set) ] ;
@@ -255,6 +268,7 @@
 # should be used.
 #
 # Usage example: library names use the "lib" prefix on unix.
+#
 rule set-generated-target-prefix ( type : properties * : prefix )
 {
     set-generated-target-ps prefix : $(type) : $(properties) : $(prefix) ;
@@ -263,6 +277,7 @@
 
 # Change the prefix previously registered for this type/properties combination.
 # If prefix is not yet specified, sets it.
+#
 rule change-generated-target-prefix ( type : properties * : prefix )
 {
     change-generated-target-ps prefix : $(type) : $(properties) : $(prefix) ;
@@ -299,6 +314,7 @@
 # when generating a target of 'type' with the specified properties. Parameter
 # 'ps' can be either "prefix" or "suffix". If no prefix/suffix is specified for
 # 'type', returns prefix/suffix for base type, if any.
+#
 local rule generated-target-ps-real ( ps : type : properties * )
 {
     local result ;
@@ -348,6 +364,7 @@
 # Returns file type given it's name. If there are several dots in filename,
 # tries each suffix. E.g. for name of "file.so.1.2" suffixes "2", "1", and "so"
 # will be tried.
+#
 rule type ( filename )
 {
     local type ;
@@ -365,6 +382,7 @@
 # into the global namespace under different alias names and exactly what type of
 # target it is supposed to construct is read from the name of the alias rule
 # actually used to invoke it.
+#
 rule main-target-rule ( name : sources * : requirements * : default-build *
     : usage-requirements * )
 {

Modified: branches/CMake/release/tools/build/v2/build/version.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/version.jam (original)
+++ branches/CMake/release/tools/build/v2/build/version.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,12 @@
 # Copyright 2002, 2003, 2004, 2006 Vladimir Prus
+# Copyright 2008 Jurko Gospodnetic
 # Distributed under the Boost Software License, Version 1.0.
 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
+import errors ;
+import numbers ;
+
+
 rule boost-build ( )
 {
     return "V2 (Milestone 12)" ;
@@ -10,7 +15,7 @@
 
 rule jam ( )
 {
- local v = [ modules.peek : JAM_VERSION ] ;
+ local v = [ modules.peek : JAM_VERSION ] ;
     return $(v:J=.) ;
 }
 
@@ -20,3 +25,119 @@
     ECHO "Boost.Build" [ boost-build ] ;
     ECHO "Boost.Jam" [ jam ] ;
 }
+
+
+# Utility rule for testing whether all elements in a sequence are equal to 0.
+#
+local rule is-all-zeroes ( sequence * )
+{
+ local result = "true" ;
+ for local e in $(sequence)
+ {
+ if $(e) != "0"
+ {
+ result = "" ;
+ }
+ }
+ return $(result) ;
+}
+
+
+# Returns "true" if the first version is less than the second one.
+#
+rule version-less ( lhs + : rhs + )
+{
+ numbers.check $(lhs) ;
+ numbers.check $(rhs) ;
+
+ local done ;
+ local result ;
+
+ while ! $(done) && $(lhs) && $(rhs)
+ {
+ if [ numbers.less $(lhs[1]) $(rhs[1]) ]
+ {
+ done = "true" ;
+ result = "true" ;
+ }
+ else if [ numbers.less $(rhs[1]) $(lhs[1]) ]
+ {
+ done = "true" ;
+ }
+ else
+ {
+ lhs = $(lhs[2-]) ;
+ rhs = $(rhs[2-]) ;
+ }
+ }
+ if ( ! $(done) && ! $(lhs) && ! [ is-all-zeroes $(rhs) ] )
+ {
+ result = "true" ;
+ }
+
+ return $(result) ;
+}
+
+
+# Returns "true" if the current JAM version version is at least the given
+# version.
+#
+rule check-jam-version ( version + )
+{
+ local version-tag = $(version:J=.) ;
+ if ! $(version-tag)
+ {
+ errors.error Invalid version specifier: : $(version:E="(undefined)") ;
+ }
+
+ if ! $(.jam-version-check.$(version-tag))-is-not-empty
+ {
+ local jam-version = [ modules.peek : JAM_VERSION ] ;
+ if ! $(jam-version)
+ {
+ errors.error "Unable to deduce Boost Jam version. Your Boost Jam"
+ "installation is most likely terribly outdated." ;
+ }
+ .jam-version-check.$(version-tag) = "true" ;
+ if [ version-less [ modules.peek : JAM_VERSION ] : $(version) ]
+ {
+ .jam-version-check.$(version-tag) = "" ;
+ }
+ }
+ return $(.jam-version-check.$(version-tag)) ;
+}
+
+
+rule __test__ ( )
+{
+ import assert ;
+
+ local jam-version = [ modules.peek : JAM_VERSION ] ;
+ local future-version = $(jam-version) ;
+ future-version += "1" ;
+
+ assert.true check-jam-version $(jam-version) ;
+ assert.false check-jam-version $(future-version) ;
+
+ assert.true version-less 0 : 1 ;
+ assert.false version-less 0 : 0 ;
+ assert.true version-less 1 : 2 ;
+ assert.false version-less 1 : 1 ;
+ assert.false version-less 2 : 1 ;
+ assert.true version-less 3 1 20 : 3 4 10 ;
+ assert.false version-less 3 1 10 : 3 1 10 ;
+ assert.false version-less 3 4 10 : 3 1 20 ;
+ assert.true version-less 3 1 20 5 1 : 3 4 10 ;
+ assert.false version-less 3 1 10 5 1 : 3 1 10 ;
+ assert.false version-less 3 4 10 5 1 : 3 1 20 ;
+ assert.true version-less 3 1 20 : 3 4 10 5 1 ;
+ assert.true version-less 3 1 10 : 3 1 10 5 1 ;
+ assert.false version-less 3 4 10 : 3 1 20 5 1 ;
+ assert.false version-less 3 1 10 : 3 1 10 0 0 ;
+ assert.false version-less 3 1 10 0 0 : 3 1 10 ;
+ assert.false version-less 3 1 10 0 : 3 1 10 0 0 ;
+ assert.false version-less 3 1 10 0 : 03 1 10 0 0 ;
+ assert.false version-less 03 1 10 0 : 3 1 10 0 0 ;
+
+ # TODO: Add tests for invalid input data being sent to version-less.
+}

Modified: branches/CMake/release/tools/build/v2/build/virtual-target.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/build/virtual-target.jam (original)
+++ branches/CMake/release/tools/build/v2/build/virtual-target.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,10 +4,10 @@
 # Distributed under the Boost Software License, Version 1.0.
 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
-# Implements virtual targets, which correspond to actual files created during
-# a build, but are not yet targets in Jam sense. They are needed, for example,
-# when searching for possible transormation sequences, when it's not yet known
-# whether a particular target should be created at all.
+# Implements virtual targets, which correspond to actual files created during a
+# build, but are not yet targets in Jam sense. They are needed, for example,
+# when searching for possible transformation sequences, when it's not yet known
+# whether a particular target should be created at all.
 
 import "class" : new ;
 import errors ;
@@ -64,6 +64,7 @@
 # The 'compile-action' and 'link-action' classes are not defined here but in
 # builtin.jam modules. They are shown in the diagram to give the big picture.
 
+
 # Models a potential target. It can be converted into a Jam target and used in
 # building, if needed. However, it can be also dropped, which allows us to
 # search for different transformations and select only one.
@@ -86,12 +87,15 @@
     }
 
     # Name of this target.
+ #
     rule name ( ) { return $(self.name) ; }
 
     # Project of this target.
+ #
     rule project ( ) { return $(self.project) ; }
 
     # Adds additional 'virtual-target' instances this one depends on.
+ #
     rule depends ( d + )
     {
         self.dependencies = [ sequence.merge $(self.dependencies)
@@ -113,6 +117,7 @@
     # file if 'scanner' is specified.
     #
     # If scanner is not specified then the actual target is returned.
+ #
     rule actualize ( scanner ? )
     {
         local actual-name = [ actualize-no-scanner ] ;
@@ -146,12 +151,14 @@
 
     # Sets up build actions for 'target'. Should call appropriate rules and set
     # target variables.
+ #
     rule actualize-action ( target )
     {
         errors.error "method should be defined in derived classes" ;
     }
 
     # Sets up variables on 'target' which specify its location.
+ #
     rule actualize-location ( target )
     {
         errors.error "method should be defined in derived classes" ;
@@ -159,6 +166,7 @@
 
     # If the target is a generated one, returns the path where it will be
     # generated. Otherwise, returns an empty list.
+ #
     rule path ( )
     {
         errors.error "method should be defined in derived classes" ;
@@ -166,6 +174,7 @@
 
     # Returns the actual target name to be used in case when no scanner is
     # involved.
+ #
     rule actual-name ( )
     {
         errors.error "method should be defined in derived classes" ;
@@ -175,8 +184,8 @@
     rule actualize-no-scanner ( )
     {
         # In fact, we just need to merge virtual-target with
- # abstract-virtual-target as the latter is the only class derived from
- # the former. But that's for later.
+ # abstract-file-target as the latter is the only class derived from the
+ # former. But that's for later.
         errors.error "method should be defined in derived classes" ;
     }
 }
@@ -190,6 +199,7 @@
 #
 # The target's grist is concatenation of its project's location, properties of
 # action (for derived files) and, optionally, value identifying the main target.
+#
 class abstract-file-target : virtual-target
 {
     import project ;
@@ -230,12 +240,14 @@
 
     # Sets the path. When generating target name, it will override any path
     # computation from properties.
+ #
     rule set-path ( path )
     {
         self.path = [ path.native $(path) ] ;
     }
 
     # Returns the currently set action.
+ #
     rule action ( )
     {
         return $(self.action) ;
@@ -243,6 +255,7 @@
 
     # Sets/gets the 'root' flag. Target is root if it directly corresponds to
     # some variant of a main target.
+ #
     rule root ( set ? )
     {
         if $(set)
@@ -256,12 +269,13 @@
     # when target is brought into existance and is never changed after that. In
     # particular, if a target is shared by a subvariant, only the first is
     # stored.
- rule creating-subvariant ( s ? # If specified, specifies the value to set,
- # which should be a 'subvariant' class
- # instance.
+ #
+ rule creating-subvariant ( s ? # If specified, specifies the value to set,
+ # which should be a 'subvariant' class
+ # instance.
                              )
     {
- if $(s) && ! $(self.creating-subvariant) && ! $(overwrite)
+ if $(s) && ! $(self.creating-subvariant)
         {
             self.creating-subvariant = $(s) ;
         }
@@ -333,7 +347,6 @@
             local grist = [ grist ] ;
             local basename = [ path.native $(self.name) ] ;
             self.actual-name = <$(grist)>$(basename) ;
-
         }
         return $(self.actual-name) ;
     }
@@ -341,6 +354,7 @@
     # Helper to 'actual-name', above. Computes a unique prefix used to
     # distinguish this target from other targets with the same name creating
     # different files.
+ #
     rule grist ( )
     {
         # Depending on target, there may be different approaches to generating
@@ -379,11 +393,12 @@
 
     # Given the target name specified in constructor, returns the name which
     # should be really used, by looking at the <tag> properties. Tag properties
- # need to be specified as <tag>@rule-name. This makes Boost.Build call the
+ # need to be specified as <tag>@rule-name. This makes Boost Build call the
     # specified rule with the target name, type and properties to get the new
     # name. If no <tag> property is specified or the rule specified by <tag>
     # returns nothing, returns the result of calling
     # virtual-target.add-prefix-and-suffix.
+ #
     rule _adjust-name ( specified-name )
     {
         local ps ;
@@ -468,6 +483,7 @@
 
 # Appends the suffix appropriate to 'type/property-set' combination to the
 # specified name and returns the result.
+#
 rule add-prefix-and-suffix ( specified-name : type ? : property-set )
 {
     local suffix = [ type.generated-target-suffix $(type) : $(property-set) ] ;
@@ -546,7 +562,7 @@
             DEPENDS $(target) : $(path) ;
             common.MkDir $(path) ;
 
- # It's possible that the target name includes a directory too, for
+ # It is possible that the target name includes a directory too, for
             # example when installing headers. Create that directory.
             if $(target:D)
             {
@@ -572,6 +588,10 @@
             # will be <ptest/bin/gcc/debug>test.o and the target we create below
             # will be <e>test.o
             DEPENDS $(target:G=e) : $(target) ;
+ # Allow bjam <path-to-file>/<file> to work. This won't catch all
+ # possible ways to refer to the path (relative/absolute, extra ".",
+ # various "..", but should help in obvious cases.
+ DEPENDS $(target:G=e:R=$(path)) : $(target) ;
         }
         else
         {
@@ -580,6 +600,7 @@
     }
 
     # Returns the directory for this target.
+ #
     rule path ( )
     {
         if ! $(self.path)
@@ -612,6 +633,7 @@
     }
 
     # Returns nothing to indicate that the target's path is not known.
+ #
     rule path ( )
     {
         return ;
@@ -631,7 +653,7 @@
 # rule action-name ( targets + : sources * : properties * )
 # Targets and sources are passed as actual Jam targets. The rule may not
 # establish additional dependency relationships.
-
+#
 class action
 {
     import "class" ;
@@ -687,6 +709,7 @@
     }
 
     # Generates actual build instructions.
+ #
     rule actualize ( )
     {
         if ! $(self.actualized)
@@ -729,6 +752,7 @@
 
     # Helper for 'actualize-sources'. For each passed source, actualizes it with
     # the appropriate scanner. Returns the actualized virtual targets.
+ #
     rule actualize-source-type ( sources * : property-set )
     {
         local result = ;
@@ -752,6 +776,7 @@
     #
     # New values will be *appended* to the variables. They may be non-empty if
     # caller wants it.
+ #
     rule actualize-sources ( sources * : property-set )
     {
         local dependencies = [ $(self.properties).get <dependency> ] ;
@@ -782,6 +807,7 @@
     # the last chance to fix properties, for example to adjust includes to get
     # generated headers correctly. Default implementation simply returns its
     # argument.
+ #
     rule adjust-properties ( property-set )
     {
         return $(property-set) ;
@@ -793,6 +819,7 @@
 # properties out of nowhere. It's needed to distinguish virtual targets with
 # different properties that are known to exist and have no actions which create
 # them.
+#
 class null-action : action
 {
     rule __init__ ( property-set ? )
@@ -816,6 +843,7 @@
 
 # Class which acts exactly like 'action', except that its sources are not
 # scanned for dependencies.
+#
 class non-scanning-action : action
 {
     rule __init__ ( sources * : action-name + : property-set ? )
@@ -842,6 +870,7 @@
 # name and source location for the project, and use that path to determine if
 # the target was already created.
 # TODO: passing a project with all virtual targets is starting to be annoying.
+#
 rule from-file ( file : file-loc : project )
 {
     import type ; # Had to do this here to break a circular dependency.
@@ -876,6 +905,7 @@
 # same sources and equal action. If such target is found it is returned and a
 # new 'target' is not registered. Otherwise, 'target' is registered and
 # returned.
+#
 rule register ( target )
 {
     local signature = [ sequence.join
@@ -901,8 +931,10 @@
                 {
                     local ps1 = [ $(a1).properties ] ;
                     local ps2 = [ $(a2).properties ] ;
- local p1 = [ $(ps1).base ] [ $(ps1).free ] [ $(ps1).dependency ] ;
- local p2 = [ $(ps2).base ] [ $(ps2).free ] [ $(ps2).dependency ] ;
+ local p1 = [ $(ps1).base ] [ $(ps1).free ]
+ [ set.difference [ $(ps1).dependency ] : [ $(ps1).incidental ] ] ;
+ local p2 = [ $(ps2).base ] [ $(ps2).free ]
+ [ set.difference [ $(ps2).dependency ] : [ $(ps2).incidental ] ] ;
                     if $(p1) = $(p2)
                     {
                         result = $(t) ;
@@ -925,9 +957,11 @@
 }
 
 
-# Each target returned by 'register' is added to a recent-targets list, returned
-# by this function. This allows us to find all targets created when building a
-# given main target, even if the target... !!!MISSING TEXT HERE!!!
+# Each target returned by 'register' is added to a .recent-targets list,
+# returned by this function. This allows us to find all virtual targets created
+# when building a given main target, even those constructed only as intermediate
+# targets.
+#
 rule recent-targets ( )
 {
     return $(.recent-targets) ;
@@ -941,6 +975,7 @@
 
 
 # Returns all virtual targets ever created.
+#
 rule all-targets ( )
 {
     return $(.all-targets) ;
@@ -949,6 +984,7 @@
 
 # Returns all targets from 'targets' with types equal to 'type' or derived from
 # it.
+#
 rule select-by-type ( type : targets * )
 {
     local result ;
@@ -1007,6 +1043,7 @@
 # found during traversal, it's either included or not, depending on the value of
 # 'include-roots'. In either case traversal stops at root targets, i.e. sources
 # of root targets are not traversed.
+#
 rule traverse ( target : include-roots ? : include-sources ? )
 {
     local result ;
@@ -1040,6 +1077,7 @@
 # produced by the action. The rule-name and properties are set to
 # 'new-rule-name' and 'new-properties', if those are specified. Returns the
 # cloned action.
+#
 rule clone-action ( action : new-project : new-action-name ? : new-properties ? )
 {
     if ! $(new-action-name)
@@ -1053,7 +1091,7 @@
 
     local action-class = [ modules.peek $(action) : __class__ ] ;
     local cloned-action = [ class.new $(action-class)
- [ $(action).sources ] : $(new-action-name) : $(new-properties) ] ;
+ [ $(action).sources ] : $(new-action-name) : $(new-properties) ] ;
 
     local cloned-targets ;
     for local target in [ $(action).targets ]
@@ -1145,6 +1183,7 @@
     # indirectly, and either as sources, or as dependency properties. Targets
     # referred to using the dependency property are returned as properties, not
     # targets.
+ #
     rule all-referenced-targets ( )
     {
         # Find directly referenced targets.
@@ -1173,10 +1212,11 @@
     # referred by <implcit-dependecy> properties. For all targets of type
     # 'target-type' (or for all targets, if 'target-type' is not specified), the
     # result will contain <$(feature)>path-to-that-target.
+ #
     rule implicit-includes ( feature : target-type ? )
     {
         local key = ii$(feature)-$(target-type:E="") ;
- if ! $($(key))-is-nonempty
+ if ! $($(key))-is-not-empty
         {
             local target-paths = [ all-target-directories $(target-type) ] ;
             target-paths = [ sequence.unique $(target-paths) ] ;

Modified: branches/CMake/release/tools/build/v2/doc/src/advanced.xml
==============================================================================
--- branches/CMake/release/tools/build/v2/doc/src/advanced.xml (original)
+++ branches/CMake/release/tools/build/v2/doc/src/advanced.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,15 +7,14 @@
 
   <para>This section will provide the information necessary to create your own
   projects using Boost.Build. The information provided here is relatively
- high-level, and <xref linkend="bbv2.reference"/> as
- well as the on-line help system must be used to obtain
- low-level documentation (see <xref linkend=
+ high-level, and <xref linkend="bbv2.reference"/> as well as the on-line help
+ system must be used to obtain low-level documentation (see <xref linkend=
   "bbv2.reference.init.options.help"/>).</para>
 
- <para>Boost.Build actually consists of two parts - Boost.Jam, a
- build engine with its own interpreted language, and Boost.Build itself,
- implemented in Boost.Jam's language. The chain of events when
- you type <command>bjam</command> on the command line is:
+ <para>Boost.Build actually consists of two parts - Boost.Jam, a build engine
+ with its own interpreted language, and Boost.Build itself, implemented in
+ Boost.Jam's language. The chain of events when you type
+ <command>bjam</command> on the command line is:
       <orderedlist>
         <listitem>
           <para>Boost.Jam tries to find Boost.Build and loads the top-level
@@ -23,9 +22,10 @@
           linkend="bbv2.reference.init"/></para>
         </listitem>
         <listitem>
- <para>The top-level module loads user-defined configuration
- files, <filename>user-config.jam</filename> and <filename>site-config.jam</filename>, which define
- available toolsets.</para>
+ <para>The top-level module loads user-defined configuration files,
+ <filename>user-config.jam</filename> and
+ <filename>site-config.jam</filename>, which define available toolsets.
+ </para>
         </listitem>
         <listitem>
           <para>The Jamfile in the current directory is read. That in turn
@@ -37,7 +37,7 @@
           Boost.Build decides which targets should be built, and how. That
           information is passed back to Boost.Jam, which takes care of
           actually running commands.</para>
- </listitem>
+ </listitem>
       </orderedlist>
     </para>
 
@@ -57,45 +57,45 @@
               How the build process works</link></para>
         </listitem>
         <listitem>
- <para>Some Basics about the Boost.Jam language. See
+ <para>Some Basics about the Boost.Jam language. See
           <xref linkend="bbv2.advanced.jam_language"/>.
           </para>
         </listitem>
       </itemizedlist>
     </para>
-
+
     <section id="bbv2.advanced.jam_language">
       <title>Boost.Jam Language</title>
 
       <para>This section will describe the basics of the Boost.Jam
       language&#x2014;just enough for writing Jamfiles. For more information,
- please see the <link linkend="bbv2.jam">Boost.Jam</link>
- documentation.</para>
+ please see the <link linkend="bbv2.jam">Boost.Jam</link> documentation.
+ </para>
 
- <para>Boost.Jam has an interpreted, procedural language.
- On the lowest level, a Boost.Jam program consists of variables and
+ <para><link linkend="bbv2.jam">Boost.Jam</link> has an interpreted,
+ procedural language. On the lowest level, a <link linkend="bbv2.jam">
+ Boost.Jam</link> program consists of variables and
       <indexterm><primary>rule</primary></indexterm>
       <firstterm>rules</firstterm> (the Jam term for function). They are grouped
- in modules&#x2014;there's one global module and a number of named
- modules. Besides that, a Boost.Jam program contains classes and class
- instances.
- </para>
-
- <para>Syntantically, a Boost.Jam program consists of two kind of
- elements&#x2014;keywords (which have a special meaning to Boost.Jam) and
- literals.
+ in modules&#x2014;there's one global module and a number of named modules.
+ Besides that, a <link linkend="bbv2.jam">Boost.Jam</link> program contains
+ classes and class instances.</para>
+
+ <para>Syntantically, a <link linkend="bbv2.jam">Boost.Jam</link> program
+ consists of two kind of elements&#x2014;keywords (which have a special
+ meaning to <link linkend="bbv2.jam">Boost.Jam</link>) and literals.
 
       Consider this code:
       <programlisting>
 a = b ;</programlisting>
       which assigns the value <literal>b</literal> to the variable
- <literal>a</literal>. Here, <literal>=</literal> and
- <literal>;</literal> are keywords, while <literal>a</literal> and
- <literal>b</literal> are literals.
+ <literal>a</literal>. Here, <literal>=</literal> and <literal>;</literal>
+ are keywords, while <literal>a</literal> and <literal>b</literal> are
+ literals.
       <warning>
- <para>All syntax elements, even keywords, must be separated by
- spaces. For example, omitting the space character before
- <literal>;</literal> will lead to a syntax error.
+ <para>All syntax elements, even keywords, must be separated by spaces.
+ For example, omitting the space character before <literal>;</literal>
+ will lead to a syntax error.
         </para>
       </warning>
       If you want to use a literal value that is the same as some keyword, the
@@ -103,11 +103,11 @@
       <programlisting>
 a = "=" ;</programlisting>
       </para>
-
- <para>All variables in Boost.Jam have the same type&#x2014;list of
- strings. To define a variable one assigns a value to it, like in the
- previous example. An undefined variable is the same as a variable with
- an empty value. Variables can be accessed with the
+
+ <para>All variables in <link linkend="bbv2.jam">Boost.Jam</link> have the
+ same type&#x2014;list of strings. To define a variable one assigns a value
+ to it, like in the previous example. An undefined variable is the same as
+ a variable with an empty value. Variables can be accessed using the
       <code>$(<replaceable>variable</replaceable>)</code> syntax. For example:
       <programlisting>
 a = $(b) $(c) ;</programlisting>
@@ -115,27 +115,28 @@
 
       <para>
         Rules are defined by specifying the rule name, the parameter names,
- and the allowed size of the list value for each parameter.
+ and the allowed size of the list value for each parameter.
         <programlisting>
-rule <replaceable>example</replaceable>
+rule <replaceable>example</replaceable>
      (
- <replaceable>parameter1</replaceable> :
- <replaceable>parameter2 ?</replaceable> :
+ <replaceable>parameter1</replaceable> :
+ <replaceable>parameter2 ?</replaceable> :
          <replaceable>parameter3 +</replaceable> :
- <replaceable>parameter4 *</replaceable>
+ <replaceable>parameter4 *</replaceable>
      )
      {
         // body
      }</programlisting>
         When this rule is called, the list passed as the first argument must
         have exactly one value. The list passed as the second argument can
- either have one value of be empty. The two remaining arguments can
- be arbitrary long, but the third argument may not be empty.
+ either have one value of be empty. The two remaining arguments can be
+ arbitrarily long, but the third argument may not be empty.
       </para>
 
- <para>The overview of Boost.Jam language statements is given below:
+ <para>The overview of <link linkend="bbv2.jam">Boost.Jam</link> language
+ statements is given below:
       <programlisting>
-helper 1 : 2 : 3 ;
+helper 1 : 2 : 3 ;
 x = [ helper 1 : 2 : 3 ] ;</programlisting>
       This code calls the named rule with the specified arguments. When the
       result of the call must be used inside some expression, you need to add
@@ -144,7 +145,7 @@
 if cond { statements } [ else { statements } ]</programlisting>
       This is a regular if-statement. The condition is composed of:
       <itemizedlist>
- <listitem><para>Literals (true if at least one string is not empty)</para></listitem>
+ <listitem><para>Literals (true if at least one string is not empty)</para></listitem>
         <listitem><para>Comparisons: <code>a
         <replaceable>operator</replaceable> b</code> where
         <replaceable>operator</replaceable> is one of <code>=</code>,
@@ -163,7 +164,7 @@
       <varname>var</varname> to the element value.
       <programlisting>
 while cond { statements }</programlisting>
- Repeatedly execute statements while cond remains true upon entry.
+ Repeatedly execute statements while cond remains true upon entry.
       <programlisting>
 return values ;
       </programlisting>This statement should be used only inside a
@@ -202,16 +203,17 @@
     create-file-from-another $(&lt;) $(&gt;)
 }
 </programlisting>
- This specifies a named action called
- <literal>create-file-from-another</literal>. The text inside braces is the
- command to invoke. The <literal>$(&lt;)</literal> variable will be expanded to list of
- generated files, and the <literal>$(&gt;)</literal> variable will be expanded
- to the list of source files.
+ This specifies a named action called
+ <literal>create-file-from-another</literal>. The text inside braces is
+ the command to invoke. The <literal>$(&lt;)</literal> variable will be
+ expanded to a list of generated files, and the
+ <literal>$(&gt;)</literal> variable will be expanded to a list of
+ source files.
       </para>
 
- <para>To flexibly adjust command line, you can define a rule with the
- same name as the action, and taking three parameters -- targets, sources
- and properties. For example:
+ <para>To flexibly adjust command line, you can define a rule with the same
+ name as the action, and taking three parameters -- targets, sources and
+ properties. For example:
 <programlisting>
 rule create-file-from-another ( targets * : sources * : properties * )
 {
@@ -226,14 +228,15 @@
 }
 </programlisting>
       In this example, the rule checks if certain build property is specified.
- If so, it sets variable <varname>OPIONS</varname> that's used inside
- action. Note that the variable is set "on targets" -- the value will
- be only visible inside action, not globally. Were it set globally,
- using variable named <varname>OPTIONS</varname> in two unrelated
- actions would be impossible.
+ If so, it sets variable <varname>OPIONS</varname> that is then used inside
+ the action. Note that the variables set "on a target" will be visible only
+ inside actions building that target, not globally. Were they set globally,
+ using variable named <varname>OPTIONS</varname> in two unrelated actions
+ would be impossible.
       </para>
 
- <para>More details can be found in Jam reference, <xref linkend="jam.language.rules"/>
+ <para>More details can be found in Jam reference,
+ <xref linkend="jam.language.rules"/>
       </para>
 
     </section>
@@ -243,35 +246,33 @@
 
     <para>The Boost.Build configuration is specified in the file
     <filename>user-config.jam</filename>. You can edit the one in the top-level
- directory of Boost.Build installation or create a copy in your home directory
- and edit that. (See <xref linkend="bbv2.reference.init.config"/> for the
- exact search paths.) The primary function of that file is to declare which
- compilers and other tools are available. The simplest syntax to configure
- a tool is:
+ directory of Boost.Build installation or create a copy in your home
+ directory and edit that. (See <xref linkend="bbv2.reference.init.config"/>
+ for the exact search paths.) The primary function of that file is to declare
+ which compilers and other tools are available. The simplest syntax to
+ configure a tool is:
 
 <programlisting>
-using <replaceable>tool-name</replaceable> ;
-</programlisting>
- The <functionname>using</functionname> rule is given a name of tool, and will make that tool
- available to Boost.Build. For example, <code>using gcc ;</code> will make the gcc compiler
- available.
+using <replaceable>tool-name</replaceable> ;
+</programlisting>
+ The <functionname>using</functionname> rule is given a name of tool, and
+ will make that tool available to Boost.Build. For example,
+ <code>using gcc ;</code> will make the gcc compiler available.
     </para>
 
     <para>
- Since nothing but a tool name is specified, Boost.Build will
- pick some default settings. For example, it will use the
- <command>gcc</command> executable found in the
- <envar>PATH</envar>, or look in some known installation
- locations. In most cases, this strategy works automatically. In
- case you have several versions of a compiler, it's installed in
- some unusual location, or you need to tweak its configuration,
- you'll need to pass additional parameters to the
- <functionname>using</functionname> rule. The parameters to
- <functionname>using</functionname> can be different for each
- tool. You can obtain specific documentation for any tool's
+ Since nothing but a tool name is specified, Boost.Build will pick some
+ default settings. For example, it will use the <command>gcc</command>
+ executable found in the <envar>PATH</envar>, or look in some known
+ installation locations. In most cases, this strategy works automatically.
+ In case you have several versions of a compiler, it's installed in some
+ unusual location, or you need to tweak its configuration, you'll need to
+ pass additional parameters to the <functionname>using</functionname> rule.
+ The parameters to <functionname>using</functionname> can be different for
+ each tool. You can obtain specific documentation for any tool's
       configuration parameters by invoking
 <programlisting>
-bjam --help <replaceable>tool-name</replaceable>.init
+bjam --help <replaceable>tool-name</replaceable>.init
 </programlisting>
     </para>
     <para>
@@ -285,28 +286,23 @@
       <!-- the previous text here was really confusing -->
     </para>
 
- <para>The <parameter class="function">version</parameter>
- parameter identifies the toolset version, in case you have
- several installed. It can have any form you like, but
- it's recommended that you use a numeric identifier like
- <literal>7.1</literal>.
+ <para>The <parameter class="function">version</parameter> parameter
+ identifies the toolset version, in case you have several installed. It can
+ have any form you like, but it is recommended that you use a numeric
+ identifier like <literal>7.1</literal>.
     </para>
 
     <para>
- The <parameter class="function">invocation-command</parameter>
- parameter is the command that must be executed to run the
- compiler. This parameter can usually be omitted if the compiler
- executable
+ The <parameter class="function">invocation-command</parameter> parameter
+ is the command that must be executed to run the compiler. This parameter
+ can usually be omitted if the compiler executable
       <itemizedlist>
- <listitem><para>has its &#x201C;usual
- name&#x201D; and is in the <envar>PATH</envar>,
- or</para></listitem>
- <listitem><para>was installed in a standard
- &#x201C;installation directory&#x201D;,
- or</para></listitem>
-
- <listitem><para>can be found through a global mechanism like the
- Windows registry.</para></listitem>
+ <listitem><para>has its &#x201C;usual name&#x201D; and is in the
+ <envar>PATH</envar>, or</para></listitem>
+ <listitem><para>was installed in a standard &#x201C;installation
+ directory&#x201D;, or</para></listitem>
+ <listitem><para>can be found using a global system like the Windows
+ registry.</para></listitem>
       </itemizedlist>
 
       For example:
@@ -382,7 +378,7 @@
 using gcc : 3.4 : : &lt;compileflags&gt;-m64 &lt;linkflags&gt;-m64 ;
 </programlisting>
     </para>
-
+
     </section>
 
     <section id="bbv2.advanced.invocation">
@@ -397,7 +393,7 @@
 
       <para>To build specific targets, specify them on the command line:
 <screen>
-bjam lib1 subproject//lib2
+bjam lib1 subproject//lib2
 </screen>
       </para>
 
@@ -417,12 +413,12 @@
       <para>Boost.Build recognizes the following command line options.</para>
 
       <variablelist>
-
+
         <varlistentry>
           <term><option>--clean</option></term>
           <listitem>
- <para>Cleans all targets in the current directory and
- in any subprojects. Note that unlike the <literal>clean</literal>
+ <para>Cleans all targets in the current directory and
+ in any subprojects. Note that unlike the <literal>clean</literal>
             target in make, you can use <literal>--clean</literal>
             together with target names to clean specific targets.</para>
           </listitem>
@@ -431,8 +427,8 @@
         <varlistentry>
           <term><option>--clean-all</option></term>
           <listitem>
- <para>Cleans all targets,
- no matter where they are defined. In particular, it will clean targets
+ <para>Cleans all targets,
+ no matter where they are defined. In particular, it will clean targets
             in parent Jamfiles, and targets defined under other project roots.
             </para>
           </listitem>
@@ -444,8 +440,8 @@
             <para>Changes build directories for all project roots being built. When
             this option is specified, all Jamroot files should declare project name.
             The build directory for the project root will be computed by concatanating
- the value of the <option>--build-dir</option> option, the project name
- specified in Jamroot, and the build dir specified in Jamroot
+ the value of the <option>--build-dir</option> option, the project name
+ specified in Jamroot, and the build dir specified in Jamroot
             (or <literal>bin</literal>, if none is specified).
             </para>
 
@@ -477,7 +473,7 @@
         <varlistentry>
           <term><option>--debug-configuration</option></term>
           <listitem>
- <para>Produces debug information about loading of Boost.Build
+ <para>Produces debug information about loading of Boost.Build
             and toolset files.</para>
           </listitem>
         </varlistentry>
@@ -493,7 +489,7 @@
         <varlistentry>
           <term><option>--debug-generators</option></term>
           <listitem>
- <para>Produces debug output from generator search process.
+ <para>Produces debug output from generator search process.
             Useful for debugging custom generators.
             </para>
           </listitem>
@@ -515,11 +511,11 @@
             </para>
           </listitem>
         </varlistentry>
-
+
       </variablelist>
 
 
- <para>For complete specification of command line syntax, see
+ <para>For complete specification of command line syntax, see
       <xref linkend="bbv2.reference.init.args"/>
       </para>
 
@@ -546,7 +542,7 @@
 
       <!-- I think we maybe ought to be talking about a common
            _signature_ here, having already explained Boost.Jam function
- signatures at the beginning of this chapter. Then we could show
+ signatures at the beginning of this chapter. Then we could show
            ( main-target-name : sources * : requirements * : default-build * : usage-requirements * )
            instead. More precise.
 
@@ -575,21 +571,21 @@
             (&#x2018;<code>_</code>&#x2019;).
           </simpara>
         </listitem>
-
+
         <listitem>
           <simpara>
             <parameter>sources</parameter> is the list of source files and other main
- targets that must be combined.
+ targets that must be combined.
           </simpara>
         </listitem>
-
+
         <listitem>
           <simpara>
             <parameter>requirements</parameter> is the list of properties that must always
             be present when this main target is built.
           </simpara>
         </listitem>
-
+
         <listitem>
           <simpara>
             <parameter>default-build</parameter> is the list of properties that will be used
@@ -597,7 +593,7 @@
             specified, e.g. on the command line or by propagation from a dependent target.
           </simpara>
         </listitem>
-
+
         <listitem>
           <simpara>
             <parameter>usage-requirements</parameter> is the list of properties that will be
@@ -607,7 +603,7 @@
         </listitem>
       </itemizedlist>
 
- <para>
+ <para>
         Some main target rules have a different list of parameters as explicitly
         stated in their documentation.
       </para>
@@ -615,7 +611,7 @@
       <para>The actual requirements for a target are obtained by refining
       requirements of the project where a target is declared with the
       explicitly specified requirements. The same is true for
- usage-requirements. More details can be found in
+ usage-requirements. More details can be found in
       <xref linkend="bbv2.reference.variants.proprefine"/>
       </para>
 
@@ -631,7 +627,7 @@
         prefixes.
         </para>
 
- <para>The name of a main target can contain alphanumeric characters,
+ <para>The name of a main target can contain alphanumeric characters,
         dashes, undescores and dots. The entire
         name is significant when resolving references from other targets. For determining filenames, only the
         part before the first dot is taken. For example:</para>
@@ -641,7 +637,7 @@
 </programlisting>
         <para>will generate two files named <filename>test.obj</filename> (in two different directories), not
         two files named <filename>test.release.obj</filename> and <filename>test.debug.obj</filename>.
- </para>
+ </para>
 
       </section>
 
@@ -656,7 +652,7 @@
         <functionname>glob</functionname> rule. Here are two examples:</para>
 <programlisting>
 exe a : a.cpp ; # a.cpp is the only source file
-exe b : [ glob *.cpp ] ; # all .cpp files in this directory are sources
+exe b : [ glob *.cpp ] ; # all .cpp files in this directory are sources
 </programlisting>
         <para>
         Unless you specify a file with an absolute path, the name is
@@ -677,7 +673,7 @@
           the double slash is first looked up as project name, and then as directory
           name. For example:
         </para>
-
+
 <programlisting>
 lib helper : helper.cpp ;
 exe a : a.cpp helper ;
@@ -712,18 +708,18 @@
 <programlisting>
 lib util : util.cpp : &lt;link&gt;static ;
 obj main : main.cpp : &lt;optimization&gt;off ;
-</programlisting>
+</programlisting>
         </para>
 
         <para id="bbv2.advanced.targets.requirements.conditional">Sometimes, particular relationships need to be maintained
- among a target's build properties. This can be achieved with
+ among a target's build properties. This can be achieved with
         <firstterm>conditional
         requirements</firstterm>. For example, you might want to set
         specific <code>#defines</code> when a library is built as shared,
         or when a target's <code>release</code> variant is built in
         release mode.
 <programlisting>
-lib network : network.cpp
+lib network : network.cpp
     : <emphasis role="bold">&lt;link&gt;shared:&lt;define&gt;NEWORK_LIB_SHARED</emphasis>
      &lt;variant&gt;release:&lt;define&gt;EXTRA_FAST
     ;
@@ -732,7 +728,7 @@
         In the example above, whenever <filename>network</filename> is
         built with <code>&lt;link&gt;shared</code>,
         <code>&lt;define&gt;NEWORK_LIB_SHARED</code> will be in its
- properties, too.
+ properties, too.
         </para>
 
         <para>You can use several properties in the condition, for example:
@@ -744,12 +740,12 @@
         </para>
 
         <para id="bbv2.advanced.targets.requirements.indirect">
- A more powerful variant of conditional requirements
+ A more powerful variant of conditional requirements
           is <firstterm>indirect conditional requirements</firstterm>.
           You can provide a rule that will be called with the current build properties and can compute additional properties
           to be added. For example:
 <programlisting>
-lib network : network.cpp
+lib network : network.cpp
     : &lt;conditional&gt;@my-rule
     ;
 rule my-rule ( properties * )
@@ -760,7 +756,7 @@
         result += &lt;define&gt;USE_INLINE_ASSEMBLER ;
     }
     return $(result) ;
-}
+}
 </programlisting>
         This example is equivalent to the previous one, but for complex cases, indirect conditional
         requirements can be easier to write and understand.
@@ -785,15 +781,15 @@
         Here, <code>test1</code> inherits project requirements and will always
         be built in multi-threaded mode. The <code>test2</code> target
         <emphasis>overrides</emphasis> project's requirements and will
- always be built in single-threaded mode. In contrast, the
+ always be built in single-threaded mode. In contrast, the
         <code>test3</code> target <emphasis>removes</emphasis> a property
         from project requirements and will be built either in single-threaded or
         multi-threaded mode depending on which variant is requested by the
         user.</para>
 
- <para>Note that the removal of requirements is completely textual:
+ <para>Note that the removal of requirements is completely textual:
         you need to specify exactly the same property to remove it.</para>
-
+
       </section>
 
       <section>
@@ -838,7 +834,7 @@
         parameter may include calls to other main rules. For example:</para>
 
 <programlisting>
-exe hello : hello.cpp
+exe hello : hello.cpp
     [ obj helpers : helpers.cpp : &lt;optimization&gt;off ] ;</programlisting>
 
          <para>
@@ -868,7 +864,7 @@
       because they allow us to group related targets together, define
       properties common to all those targets, and assign a symbolic
       name to the project that can be used in referring to its
- targets.
+ targets.
       </para>
 
       <para>Projects are named using the
@@ -883,11 +879,11 @@
         of attribute names along with its handling is also shown in
         the table below. For example, it is possible to write:
 <programlisting>
-project tennis
- : requirements &lt;threading&gt;multi
+project tennis
+ : requirements &lt;threading&gt;multi
     : default-build release
     ;
-</programlisting>
+</programlisting>
       </para>
 
       <para>The possible attributes are listed below.</para>
@@ -897,7 +893,7 @@
         unrelated to filesystem, such as "boost/thread". <link linkend=
           "bbv2.reference.ids">Target references</link> make use of project ids to
         specify a target.</para>
- <!--
+ <!--
              This is actually spelled "project-id," isn't it? You
              have to fix all of these and use a code font. Also below
              in the table.
@@ -911,7 +907,7 @@
 
       <para><emphasis>Default build</emphasis> is the build request that should be
         used when no build request is specified explicitly.</para>
- <!--
+ <!--
              This contradicts your earlier description of default
              build and I believe it is incorrect. Specifying a build
              request does not neccessarily render default build
@@ -930,73 +926,73 @@
             <thead>
               <row>
                 <entry>Attribute</entry>
-
+
                 <entry>Name</entry>
-
+
                 <entry>Default value</entry>
-
+
                 <entry>Handling by the <functionname>project</functionname>
                 rule</entry>
 
               </row>
             </thead>
-
+
             <tbody>
-
+
               <row>
                 <entry>Project id</entry>
-
+
                 <entry>none</entry>
-
+
                 <entry>none</entry>
-
+
                 <entry>Assigned from the first parameter of the 'project' rule.
                   It is assumed to denote absolute project id.</entry>
               </row>
-
+
               <row>
                 <entry>Source location</entry>
-
+
                 <entry><literal>source-location</literal></entry>
-
+
                 <entry>The location of jamfile for the project</entry>
-
+
                 <entry>Sets to the passed value</entry>
               </row>
-
+
               <row>
                 <entry>Requirements</entry>
-
+
                 <entry><literal>requirements</literal></entry>
-
+
                 <entry>The parent's requirements</entry>
-
+
                 <entry>The parent's requirements are refined with the passed
                   requirement and the result is used as the project
                   requirements.</entry>
               </row>
-
+
               <row>
                 <entry>Default build</entry>
-
+
                 <entry><literal>default-build</literal></entry>
-
+
                 <entry>none</entry>
-
+
                 <entry>Sets to the passed value</entry>
               </row>
-
+
               <row>
                 <entry>Build directory</entry>
-
+
                 <entry><literal>build-dir</literal></entry>
-
+
                 <entry>Empty if the parent has no build directory set.
                 Otherwise, the parent's build directory with the
                 relative path from parent to the current project
                 appended to it.
                 </entry>
-
+
                 <entry>Sets to the passed value, interpreted as relative to the
                   project's location.</entry>
               </row>
@@ -1007,7 +1003,7 @@
 
       <para>Besides defining projects and main targets, Jamfiles
       often invoke various utility rules. For the full list of rules
- that can be directly used in Jamfile see
+ that can be directly used in Jamfile see
       <xref linkend="bbv2.reference.rules"/>.
       </para>
 
@@ -1028,7 +1024,7 @@
       subprojects, so that every definition made in a parent project
       is always available to its children. The loading order of any
       other projects is unspecified. Even if one project refers to
- another via the <code>use-project</code> or a target reference,
+ another via the <code>use-project</code> or a target reference,
       no specific order should be assumed.
       </para>
 
@@ -1038,7 +1034,7 @@
         Boost.Build won't misinterpret a directory above it as the
         project root just because the directory contains a Jamfile.
         <!-- The logic of the previous reasoning didn't hang together -->
- </para>
+ </para>
       </note>
 
       <!-- All this redundancy with the tutorial is bad. The tutorial
@@ -1047,12 +1043,12 @@
            perfectly appropriate to start a user guide with that kind
            of material. -->
     </section>
-
+
   <section id="bbv2.advanced.build_process">
     <title>The Build Process</title>
 
     <para>When you've described your targets, you want Boost.Build to run the
- right tools and create the needed targets.
+ right tools and create the needed targets.
       <!-- That sentence is awkward and doesn't add much. -->
       This section will describe
       two things: how you specify what to build, and how the main targets are
@@ -1061,7 +1057,7 @@
 
     <para>The most important thing to note is that in Boost.Build, unlike
       other build tools, the targets you declare do not correspond to specific
- files. What you declare in a Jamfile is more like a “metatarget.”
+ files. What you declare in a Jamfile is more like a “metatarget.”
       <!-- Do we need a new word? We already have “main target.” If
            you're going to introduce “metatarget” you should at least
            tie it together with the main target concept. It's too
@@ -1077,7 +1073,7 @@
       <para>
         This means that for Boost.Build, you cannot directly obtain a build
         variant from a Jamfile. There could be several variants requested by the
- user, and each target can be built with different properties.
+ user, and each target can be built with different properties.
       </para>
     </tip>
 
@@ -1091,7 +1087,7 @@
 bjam app1 lib1//lib1 toolset=gcc variant=debug optimization=full
 </programlisting>
         would build two targets, "app1" and "lib1//lib1" with the specified
- properties. You can refer to any targets, using
+ properties. You can refer to any targets, using
         <link linkend="bbv2.reference.ids">target id</link> and specify arbitrary
         properties. Some of the properties are very common, and for them the name
         of the property can be omitted. For example, the above can be written as:
@@ -1110,7 +1106,7 @@
         explanation is provided, and more details are given in <xref
         linkend="bbv2.reference.buildprocess"/>.
         <orderedlist>
-
+
           <listitem><para>Applying default build. If the default-build
           property of a target specifies a value of a feature that is not
           present in the build request, that value is added.</para>
@@ -1120,21 +1116,21 @@
               the reader will be confused.
           -->
           </listitem>
-
+
           <listitem><para>Selecting the main target alternative to use. For
               each alternative we look how many properties are present both in
               alternative's requirements, and in build request. The
               alternative with large number of matching properties is selected.
             </para></listitem>
-
- <listitem><para>Determining "common" properties.
+
+ <listitem><para>Determining "common" properties.
           <!-- It would be nice to have a better name for this. But
                even more importantly, unless you say something about
                the reason for choosing whatever term you use, the
                reader is going to wonder what it means. -->
               The build request
               is <link linkend="bbv2.reference.variants.proprefine">refined</link>
- with target's requirements.
+ with target's requirements.
               <!-- It's good that you have the links here and below,
                    but I'm concerned that it doesn't communicate well
                    in print and there's not enough information for the
@@ -1144,7 +1140,7 @@
               requirements are handled as well. Finally, default values of
               features are added.
             </para></listitem>
-
+
           <listitem><para>Building targets referred by the sources list and
               dependency properties. The list of sources and the properties
               can refer to other target using <link
@@ -1153,38 +1149,34 @@
               linkend="bbv2.reference.features.attributes.propagated">propagated</link>
               properties, refine them by explicit properties specified in the
               target reference, and pass the resulting properties as build
- request to the other target.
+ request to the other target.
             </para></listitem>
-
+
           <listitem><para>Adding the usage requirements produced when building
               dependencies to the "common" properties. When dependencies are
- built in the previous step, they return
+ built in the previous step, they return
               <!-- don't assume reader has a mental model for BB internals! -->
               both the set of created
               "real" targets, and usage requirements. The usage requirements
               are added to the common properties and the resulting property
- set will be used for building the current target.
+ set will be used for building the current target.
             </para></listitem>
-
+
           <listitem><para>Building the target using generators. To convert the
               sources to the desired type, Boost.Build uses "generators" ---
- objects that correspond to tools like compilers and
- linkers. Each generator declares what type of targets it
- <!-- Was "in." Why are these short and unmistakable
- words so commonly misspelled? -->
- can
- produce and what type of sources it requires. Using this
- information, Boost.Build determines which generators must be run
- to produce a specific target from specific sources. When
- generators are run, they return the "real" targets.
+ objects that correspond to tools like compilers and linkers. Each
+ generator declares what type of targets it can produce and what
+ type of sources it requires. Using this information, Boost.Build
+ determines which generators must be run to produce a specific
+ target from specific sources. When generators are run, they return
+ the "real" targets.
             </para></listitem>
-
+
           <listitem><para>Computing the usage requirements to be returned. The
- conditional properties in usage requirements are expanded
+ conditional properties in usage requirements are expanded
           <!-- what does "expanded" mean? -->
- and the
- result is returned.</para></listitem>
- </orderedlist>
+ and the result is returned.</para></listitem>
+ </orderedlist>
       </para>
     </section>
 
@@ -1213,22 +1205,20 @@
       </para>
 
       <para>The Jamfile for a project can include a number of
- <code>build-project</code> rule calls
- <!-- A comma would only be correct here in German -->
- that specify additional projects
- to be built.
+ <code>build-project</code> rule calls that specify additional projects to
+ be built.
       </para>
 
     </section>
 
   </section>
-
+
   </chapter>
 
 <!--
      Local Variables:
      mode: nxml
- sgml-indent-data: t
+ sgml-indent-data: t
      sgml-parent-document: ("userman.xml" "chapter")
      sgml-set-face: t
      End:

Modified: branches/CMake/release/tools/build/v2/doc/src/extending.xml
==============================================================================
--- branches/CMake/release/tools/build/v2/doc/src/extending.xml (original)
+++ branches/CMake/release/tools/build/v2/doc/src/extending.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -130,14 +130,14 @@
         automatically generate necessary build actions only because you
         specify the desired type (using the different main target rules), and
         because Boost.Build can guess the type of sources from their
- extensions.
+ extensions.
       </para>
 
       <para>The first two parameters for the <code>type.register</code> rule
         are the name of new type and the list of extensions associated with
         it. A file with an extension from the list will have the given target
         type. In the case where a target of the declared type is generated
- from other sources, the first specified extension will be used.
+ from other sources, the first specified extension will be used.
       </para>
 
     <para>Sometimes you want to change the suffix used for generated targets
@@ -149,7 +149,7 @@
 </programlisting>
     </para>
 
- <para>A new target type can be inherited from an existing one.
+ <para>A new target type can be inherited from an existing one.
 <programlisting>
 type.register PLUGIN : : SHARED_LIB ;
 </programlisting>
@@ -174,10 +174,10 @@
       <section id="bbv2.extending.scanners">
         <title>Scanners</title>
         <para>
- Sometimes, a file can refer to other files via some include
- mechanism. To make Boost.Build track dependencies to the included
- files, you need to provide a scanner. The primary limitation is that
- only one scanner can be assigned to a target type.
+ Sometimes, a file can refer to other files via some include system. To
+ make Boost.Build track dependencies between included files, you need
+ to provide a scanner. The primary limitation is that only one scanner
+ can be assigned to a target type.
         </para>
 
         <para>First, we need to declare a new class for the scanner:
@@ -189,7 +189,7 @@
         return "//###include[ ]*\"([^\"]*)\"" ;
     }
 }
-</programlisting>
+</programlisting>
           All the complex logic is in the <code>common-scanner</code>
           class, and you only need to override the method that returns
           the regular expression to be used for scanning. The
@@ -221,7 +221,7 @@
       </section>
 
   </section>
-
+
   <section id="bbv2.extending.tools">
     <title>Tools and generators</title>
       <para>
@@ -319,7 +319,7 @@
 <!-- What is the point of this __init__ function?? -->
 }
 
-generators.register
+generators.register
   [ new custom-generator verbatim.inline-file : VERBATIM : CPP ] ;
 </programlisting>
         This generator will work exactly like the
@@ -335,15 +335,13 @@
         converted to the right types to actually create the result.
       </para>
 
- <para>The <code>generated-target</code> <!-- Is it generated-target or generated-targets? -->
- method can be overridden
- when you want to add additional properties to the generated
- targets or use additional sources. For a real-life example,
- suppose you have a program analysis tool that should be given a
- name of executable and the list of all sources. Naturally, you
- don't want to list all source files manually. Here's how the
- <code>generated-targets</code> method can find the list of
- sources automatically:
+ <para>The <code>generated-targets</code> method can be overridden when you
+ want to add additional properties to the generated targets or use
+ additional sources. For a real-life example, suppose you have a program
+ analysis tool that should be given a name of executable and the list of
+ all sources. Naturally, you don't want to list all source files
+ manually. Here's how the <code>generated-targets</code> method can find
+ the list of sources automatically:
 <programlisting>
 class itrace-generator : generator {
 ....
@@ -365,13 +363,13 @@
 generators.register [ new itrace-generator nm.itrace : EXE : ITRACE ] ;
 </programlisting>
         The <code>generated-targets</code> method will be called with a single
- source target of type <literal>EXE</literal>. The call to
+ source target of type <literal>EXE</literal>. The call to
         <code>virtual-target.traverse</code> will return all targets the
         executable depends on, and we further find files that are not
         produced from anything. <!-- What does "not produced from anything" mean? -->
         The found targets are added to the sources.
       </para>
-
+
       <para>The <code>run</code> method can be overriden to completely
         customize the way the generator works. In particular, the conversion of
         sources to the desired types can be completely customized. Here's
@@ -384,7 +382,7 @@
         done:
 <programlisting>
 rule run ( project name ? : property-set : sources * )
-{
+{
     local python ;
     for local s in $(sources)
     {
@@ -402,26 +400,26 @@
             libs += $(s) ;
         }
     }
-
+
     local new-sources ;
     for local s in $(sources)
     {
- if [ type.is-derived [ $(s).type ] CPP ]
+ if [ type.is-derived [ $(s).type ] CPP ]
         {
             local name = [ $(s).name ] ; # get the target's basename
- if $(name) = [ $(python).name ]
+ if $(name) = [ $(python).name ]
             {
                 name = $(name)_ext ; # rename the target
- }
+ }
             new-sources += [ generators.construct $(project) $(name) :
               PYTHON_EXTENSION : $(property-set) : $(s) $(libs) ] ;
         }
     }
-
- result = [ construct-result $(python) $(new-sources) : $(project) $(name)
- : $(property-set) ] ;
-}
-</programlisting>
+
+ result = [ construct-result $(python) $(new-sources) : $(project) $(name)
+ : $(property-set) ] ;
+}
+</programlisting>
         <!-- Why are we doing this with a generator??? It seems
              insane. We could just use a nice front-end rule that
              calls some normal target-creation rules. No? -->
@@ -430,16 +428,16 @@
         sources. For each C++ source we create a separate Python extension by
         calling <code>generators.construct</code> and passing the C++ source
         and the libraries. At this point, we also change the extension's name,
- if necessary.
+ if necessary.
       </para>
 
-
+
     </section>
 
     <section id="bbv2.extending.features">
       <title>Features</title>
       <para>
- Often, we need to control the options passed the invoked tools. This
+ Often, we need to control the options passed the invoked tools. This
         is done with features. Consider an example:
 <programlisting>
 # Declare a new free feature
@@ -494,9 +492,9 @@
       linkend="bbv2.faq.external"/> for an example of very smart usage of that
       feature). Of course one should always strive to use portable
       features, but these are still be provided as a backdoor just to make
- sure Boost.Build does not take away any control from the user.
+ sure Boost.Build does not take away any control from the user.
     </para>
-
+
     <para>
       Using portable features is a good idea because:
       <itemizedlist>
@@ -510,7 +508,7 @@
             <!-- It's a computer program. It doesn't "care" about options -->
           </para>
         </listitem>
-
+
         <listitem>
           <para>Unlike with “raw” features, you don't need to use
           specific command-line flags in your Jamfile, and it will be
@@ -519,7 +517,7 @@
         </listitem>
       </itemizedlist>
     </para>
-
+
       <bridgehead>Steps for adding a feauture</bridgehead>
       <!-- This section is redundant with the previous one -->
       <para>Adding a feature requires three steps:
@@ -531,27 +529,28 @@
               attributes</link>:
 
               <itemizedlist>
- <listitem><para>if a feature has several values<!-- what do you mean by that?? --> and
- significantly affects the build, make it “propagated,” so that the
- whole project is built with the same value by
- default</para></listitem>
-
- <listitem><para>if a feature does not have a fixed
- list of values, it must be “free.” For example, the
- <code>include</code> feature is a free
- feature.</para></listitem>
-
- <listitem><para>if a feature is used to refer to a
- path relative to the Jamfile, it must be a “path”
- feature. <code>include</code> is also a path
- feature.</para></listitem>
-
+ <listitem><para>if you want a feature value set for one target
+ to automaticaly propagate to its dependant targets then make it
+ “propagated”. <!-- Examples needed. --></para></listitem>
+
+ <listitem><para>if a feature does not have a fixed list of
+ values, it must be “free.” For example, the <code>include
+ </code> feature is a free feature.</para></listitem>
+
+ <listitem><para>if a feature is used to refer to a path relative
+ to the Jamfile, it must be a “path” feature. Such features will
+ also get their values automatically converted to Boost Build's
+ internal path representation. For example, <code>include</code>
+ is a path feature.</para></listitem>
+
                 <listitem><para>if feature is used to refer to some target, it
- must be a “dependency” feature. <!-- for example? --></para></listitem>
+ must be a “dependency” feature. <!-- for example? --></para>
+
+ <!-- Any other feature attributes? -->
+ </listitem>
               </itemizedlist>
               </para>
           </listitem>
-
 
           <listitem><para>Representing the feature value in a
           target-specific variable. Build actions are command
@@ -570,13 +569,13 @@
 
       <para>Here's another example.
         Let's see how we can make a feature that refers to a target. For example,
- when linking dynamic libraries on windows, one sometimes needs to specify
- "DEF file", telling what functions should be exported. It would be nice to
- use this file like this:
+ when linking dynamic libraries on Windows, one sometimes needs to
+ specify a "DEF file", telling what functions should be exported. It
+ would be nice to use this file like this:
 <programlisting>
         lib a : a.cpp : &lt;def-file&gt;a.def ;
 </programlisting>
-<!-- Why would that be nice? It seems to me that having a.def in the sources is the obvious and much nicer thing to do:
+<!-- Why would that be nice? It seems to me that having a.def in the sources is the obvious and much nicer thing to do:
 
         lib a : a.cpp a.def ;
 -->
@@ -605,9 +604,9 @@
 </programlisting>
             <!-- And that line does... what? -->
             </para></listitem>
-
+
         <listitem><para>Since the DEF_FILE variable is not used by the
-msvc.link action,
+msvc.link action,
 <!-- It's not? You just told us that MSVC "cares" about DEF files. I
      presume that means that it uses them in some appropriate way? -->
 we need to modify it to be:
@@ -619,8 +618,8 @@
 }
 </programlisting>
             </para>
-
-
+
+
           <para> Note the <code>bind DEF_FILE</code> part. It tells
           bjam to translate the internal target name in
           <varname>DEF_FILE</varname> to a corresponding filename in
@@ -642,11 +641,11 @@
     DEPENDS $(&lt;) : [ on $(&lt;) return $(DEF_FILE) ] ;
 }
 </programlisting>
-<!-- You *must* explain the part in [...] above. It's completely opaque to the casual reader -->
+<!-- You *must* explain the part in [...] above. It's completely opaque to the casual reader -->
 
             This is needed to accomodate some bug in bjam, which hopefully
             will be fixed one day.
- <!-- This is *NOT* a bug!! Anyway, BBv2 shouild handle this automatically. Why doesn't it? -->
+ <!-- This is *NOT* a bug!! Anyway, BBv2 shouild handle this automatically. Why doesn't it? -->
 </para></listitem>
 
       </orderedlist>
@@ -654,7 +653,7 @@
       <bridgehead>Variants and composite features.</bridgehead>
 
       <para>Sometimes you want to create a shortcut for some set of
- features. For example, <code>release</code> is a value of
+ features. For example, <code>release</code> is a value of
         <code>&lt;variant&gt;</code> and is a shortcut for a set of features.
       </para>
 
@@ -673,7 +672,7 @@
       </para>
 
       <para>You are not restricted to using the <code>variant</code> feature
- only.
+ only.
       <!-- What do you mean by that? How is defining a new feature related to what came before? -->
       Here's example that defines a brand new feature:
 <programlisting>
@@ -685,11 +684,11 @@
      above is at best confusing and unexplained -->
         This will allow you to specify the value of feature
         <code>parallelism</code>, which will expand to link to the necessary
- library.
+ library.
       </para>
-
+
   </section>
-
+
   <section id="bbv2.extending.rules">
     <title>Main target rules</title>
     <para>
@@ -705,7 +704,7 @@
       rule is already defined for you! When you define a new type, Boost.Build
       automatically defines a corresponding rule. The name of the rule is
       obtained from the name of the type, by downcasing all letters and
- replacing underscores with dashes.
+ replacing underscores with dashes.
       <!-- This strikes me as needless complexity, and confusing. Why
            do we have the uppercase-underscore convention for target
            types? If we just dropped that, the rule names could be
@@ -723,7 +722,7 @@
       and import that module, you'll be able to use the rule "obfuscated-cpp"
       in Jamfiles, which will convert source to the OBFUSCATED_CPP type.
     </para>
-
+
     <para>
       The second way is to write a wrapper rule that calls any of the existing
       rules. For example, suppose you have only one library per directory and
@@ -816,7 +815,7 @@
         <listitem><para>Check for multiple initialization. A user can try to
             initialize the module several times. You need to check for this
             and decide what to do. Typically, unless you support several
- versions of a tool, duplicate initialization is a user error.
+ versions of a tool, duplicate initialization is a user error.
             <!-- Why should that be typical? -->
             If the
             tool's version can be specified during initialization, make sure the
@@ -854,7 +853,7 @@
     </para>
 
 
-
+
 
   </section>
 
@@ -862,7 +861,7 @@
 
 <!--
      Local Variables:
- sgml-indent-data: t
+ sgml-indent-data: t
      sgml-parent-document: ("userman.xml" "chapter")
      sgml-set-face: t
      End:

Modified: branches/CMake/release/tools/build/v2/doc/src/fragments.xml
==============================================================================
--- branches/CMake/release/tools/build/v2/doc/src/fragments.xml (original)
+++ branches/CMake/release/tools/build/v2/doc/src/fragments.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,53 +6,54 @@
   <section id="root_option">
     <varlistentry>
       <term><literal>root</literal></term>
-
- <!-- At present, this option is only used to set LD_LIBRARY_PATH
- when running tests, and matters only if compiler's lib directory
- is not in LD_LIBRARY_PATH -->
-
- <listitem><para>Specifies root directory of the compiler
- installation. This option is necessary only if it's not possible
- to detect this information from the compiler command&#x2014;for
- example if the specified compiler command is a user script. </para>
- </listitem>
+
+ <!-- At present, this option is only used to set LD_LIBRARY_PATH when
+ running tests, and matters only if compiler's lib directory is not in
+ LD_LIBRARY_PATH. -->
+
+ <listitem><para>Specifies root directory of the compiler installation.
+ This option is necessary only if it is not possible to detect this
+ information from the compiler command&#x2014;for example if the specified
+ compiler command is a user script.</para></listitem>
     </varlistentry>
   </section>
 
   <section id="common_options">
-
+
+ <!-- This most likely needs splitting into common_options,
+ common_cxx_options & common_fortran_options or something similar. We also
+ need to document the fortran specific fflags option. Possibly related Boost
+ Build code should be updated as well so that fortran options may not be
+ specified for non-fortran toolsets and C/C++ options may not be specified
+ for non-C/C++ ones. -->
+
     <varlistentry>
       <term><literal>cflags</literal></term>
-
- <listitem><para>Specifies additional compiler flags that
- will be used when compiling C sources.</para>
- </listitem>
+
+ <listitem><para>Specifies additional compiler flags that will be used when
+ compiling C sources.</para></listitem>
     </varlistentry>
-
+
     <varlistentry>
       <term><literal>cxxflags</literal></term>
-
- <listitem><para>Specifies additional compiler flags that
- will be used when compiling C++ sources.</para>
- </listitem>
+
+ <listitem><para>Specifies additional compiler flags that will be used when
+ compiling C++ sources.</para></listitem>
     </varlistentry>
 
     <varlistentry>
       <term><literal>compileflags</literal></term>
-
- <listitem><para>Specifies additional compiler flags that
- will be used when compiling both C and C++ sources.</para>
- </listitem>
+
+ <listitem><para>Specifies additional compiler flags that will be used when
+ compiling both C and C++ sources.</para></listitem>
     </varlistentry>
 
     <varlistentry>
       <term><literal>linkflags</literal></term>
-
- <listitem><para>Specifies additional command line options
- that will be passed to the linker.</para>
+
+ <listitem><para>Specifies additional command line options that will be
+ passed to the linker.</para>
       </listitem>
     </varlistentry>
-
   </section>
-
 </chapter>

Modified: branches/CMake/release/tools/build/v2/doc/src/reference.xml
==============================================================================
--- branches/CMake/release/tools/build/v2/doc/src/reference.xml (original)
+++ branches/CMake/release/tools/build/v2/doc/src/reference.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -150,16 +150,14 @@
 
           <listitem>
             <para>
- An argument containing either slashes or
- the <code>=</code> symbol specifies a number of build
- request elements (see <xref
- linkend="bbv2.advanced.build_request"/>). In its simplest
- form, it's just a set of properties, separated by
- slashes, which become a single build request element,
- for example:
+ An argument containing either slashes or the <code>=</code> symbol
+ specifies a number of build request elements (see <xref linkend=
+ "bbv2.advanced.build_request"/>). In its simplest form, it is just
+ a set of properties, separated by slashes, which become a single
+ build request element, for example:
 
 <programlisting>
-borland/&lt;runtime-link&gt;static
+borland/runtime-link=static
 </programlisting>
 
               A more complex form can be used to save typing. For example,
@@ -184,13 +182,13 @@
               part should have either the form
 
 <programlisting>
-<emphasis>feature-name</emphasis>=<emphasis>feature-value1</emphasis>[","<emphasis>feature-valueN</emphasis>]*
+<emphasis>feature-name</emphasis>=<emphasis>feature-value1</emphasis>[","<emphasis>feature-valueN</emphasis>]*
 </programlisting>
 
               or, in case of implicit features
 
 <programlisting>
-<emphasis>feature-value1</emphasis>[","<emphasis>feature-valueN</emphasis>;]*
+<emphasis>feature-value1</emphasis>[","<emphasis>feature-valueN</emphasis>;]*
 </programlisting>
 
               will be converted into the property set
@@ -225,7 +223,7 @@
           They are described in the following table.</para>
 
         <para>FIXME: That table has moved into "User documentation" section
- and there's nothing we can add here. Remove this part?</para>
+ and there is nothing we can add here. Remove this part?</para>
 
 
       </section>
@@ -244,36 +242,36 @@
     <variablelist>
       <varlistentry>
         <term><literal>exe</literal></term>
-
- <listitem><para>Creates an executable file. See
+
+ <listitem><para>Creates an executable file. See
         <xref linkend="bbv2.tasks.programs"/>.</para></listitem>
       </varlistentry>
 
       <varlistentry>
         <term><literal>lib</literal></term>
-
- <listitem><para>Creates an library file. See
+
+ <listitem><para>Creates an library file. See
         <xref linkend="bbv2.tasks.libraries"/>.</para></listitem>
       </varlistentry>
 
       <varlistentry>
         <term><literal>install</literal></term>
-
- <listitem><para>Installs built targets and other files. See
+
+ <listitem><para>Installs built targets and other files. See
         <xref linkend="bbv2.tasks.installing"/>.</para></listitem>
       </varlistentry>
 
       <varlistentry>
         <term><literal>alias</literal></term>
-
- <listitem><para>Creates an alias for other targets. See
+
+ <listitem><para>Creates an alias for other targets. See
         <xref linkend="bbv2.tasks.alias"/>.</para></listitem>
       </varlistentry>
 
       <varlistentry>
         <term><literal>unit-test</literal></term>
-
- <listitem><para>Creates an executable that will be automatically run. See
+
+ <listitem><para>Creates an executable that will be automatically run. See
         <xref linkend="bbv2.tutorial.testing"/>.</para></listitem>
       </varlistentry>
 
@@ -284,23 +282,23 @@
         <term><literal>link-fail</literal></term>
         <term><literal>run</literal></term>
         <term><literal>run-fail</literal></term>
-
- <listitem><para>Specialized rules for testing. See
+
+ <listitem><para>Specialized rules for testing. See
         <xref linkend="bbv2.tutorial.testing"/>.</para></listitem>
       </varlistentry>
 
 
       <varlistentry>
         <term><literal>obj</literal></term>
-
+
         <listitem><para>Creates an object file. Useful when a single source
         file must be compiled with special properties.</para></listitem>
       </varlistentry>
 
       <varlistentry>
         <term><literal>glob</literal></term>
-
- <listitem><para>The <code>glob</code> rule takes a list shell pattern
+
+ <listitem><para>The <code>glob</code> rule takes a list shell pattern
         and returns the list of files in the project's source directory that
         match the pattern. For example:
         <programlisting>
@@ -319,15 +317,15 @@
       <varlistentry id="bbv2.reference.glob-tree">
         <indexterm><primary>glob-tree</primary></indexterm>
         <term><literal>glob-tree</literal></term>
-
+
         <listitem><para>The <code>glob-tree</code> is similar to the
         <code>glob</code> except that it operates recursively from
         the directory of the containing Jamfile. For example:
         <programlisting>
 ECHO [ glob-tree *.cpp : .svn ] ;
         </programlisting>
- will print the names of all C++ files in your project. The
- <literal>.svn</literal> exclude pattern prevents the
+ will print the names of all C++ files in your project. The
+ <literal>.svn</literal> exclude pattern prevents the
         <code>glob-tree</code> rule from entering administrative
         directories of the Subversion version control system.
         </para></listitem>
@@ -335,7 +333,7 @@
 
       <varlistentry>
         <term><literal>project</literal></term>
-
+
         <listitem><para>Declares project id and attributes, including
         project requirements. See <xref linkend="bbv2.advanced.projects"/>.
         </para></listitem>
@@ -343,15 +341,15 @@
 
       <varlistentry>
         <term><literal>use-project</literal></term>
-
- <listitem><para>Assigns a symbolic project ID to a project at
+
+ <listitem><para>Assigns a symbolic project ID to a project at
         a given path. This rule must be better documented!
         </para></listitem>
       </varlistentry>
 
       <varlistentry>
         <term><literal>explicit</literal></term>
-
+
         <listitem><para>The <literal>explicit</literal> rule takes a single
         parameter&#x2014;a list of target names. The named targets will
         be marked explicit, and will be built only if they are explicitly
@@ -362,7 +360,7 @@
 
       <varlistentry>
         <term><literal>constant</literal></term>
-
+
         <listitem><para>Sets project-wide constant. Takes two
         parameters: variable name and a value and makes the specified
         variable name accessible in this Jamfile and any child Jamfiles.
@@ -375,7 +373,7 @@
 
       <varlistentry>
         <term><literal>path-constant</literal></term>
-
+
         <listitem><para>Same as <literal>constant</literal> except that
         the value is treated as path relative to Jamfile location. For example,
         if <command>bjam</command> is invoked in the current directory,
@@ -383,17 +381,17 @@
         <programlisting>
 path-constant DATA : data/a.txt ;
         </programlisting>
- then the variable <varname>DATA</varname> will be set to
+ then the variable <varname>DATA</varname> will be set to
         <literal>helper/data/a.txt</literal>, and if <command>bjam</command>
         is invoked from the <filename>helper</filename> directory, then
- the variable <varname>DATA</varname> will be set to
+ the variable <varname>DATA</varname> will be set to
         <literal>data/a.txt</literal>.
         </para></listitem>
       </varlistentry>
 
       <varlistentry>
         <term><literal>build-project</literal></term>
-
+
         <listitem><para>Cause some other project to be built. This rule
         takes a single parameter&#x2014;a directory name relative to
         the containing Jamfile. When the containing Jamfile is built,
@@ -405,7 +403,7 @@
 
       <varlistentry>
         <term><literal>test-suite</literal></term>
-
+
         <listitem><para>This rule is deprecated and equivalent to
         <code>alias</code>.</para></listitem>
       </varlistentry>
@@ -415,52 +413,52 @@
   </section>
 
   <section id="bbv2.advanced.builtins.features">
- <title>Builtin features</title>
-
+ <title>Builtin features</title>
+
     <variablelist>
       <varlistentry><term><literal>variant</literal></term>
-
+
         <listitem>
           <para>
             A feature that combines several low-level features, making
             it easy to request common build configurations.
           </para>
-
+
           <para><emphasis role="bold">Allowed values:</emphasis> <literal>debug</literal>, <literal>release</literal>,
             <literal>profile</literal>.</para>
-
+
           <para>The value <literal>debug</literal> expands to</para>
-
+
 <programlisting>
 &lt;optimization&gt;off &lt;debug-symbols&gt;on &lt;inlining&gt;off &lt;runtime-debugging&gt;on
 </programlisting>
-
+
           <para>The value <literal>release</literal> expands to</para>
-
+
 <programlisting>
 &lt;optimization&gt;speed &lt;debug-symbols&gt;off &lt;inlining&gt;full &lt;runtime-debugging&gt;off
 </programlisting>
-
+
           <para>The value <literal>profile</literal> expands to the same as
           <literal>release</literal>, plus:</para>
-
+
 <programlisting>
 &lt;profiling&gt;on &lt;debug-symbols&gt;on
 </programlisting>
 
           <para>User can define his own build variants using the <code>variant</code> rule from the <code>common</code>
           module.</para>
-
+
           <para><emphasis role="bold">Notee:</emphasis> Runtime
           debugging is on in debug builds to suit the expectations of
- people used to various IDEs.
+ people used to various IDEs.
           <!-- Define "runtime debugging." Why will those people expect it to be on in debug builds? -->
           </para>
         </listitem></varlistentry>
-
+
       <varlistentry id="bbv2.advanced.builtins.features.link">
         <term><literal>link</literal></term>
-
+
         <listitem>
 
           <para><emphasis role="bold">Allowed values:</emphasis> <literal>shared</literal>,
@@ -469,13 +467,13 @@
           <simpara>
             A feature that controls how libraries are built.
           </simpara>
-
+
         </listitem></varlistentry>
 
       <varlistentry id="bbv2.advanced.builtins.features.runtime-link">
         <indexterm><primary>runtime linking</primary></indexterm>
         <term><literal>runtime-link</literal></term>
-
+
         <listitem>
           <para><emphasis role="bold">Allowed values:</emphasis> <literal>shared</literal>,
             <literal>static</literal></para>
@@ -488,33 +486,33 @@
             mixing static and shared runtime requires extreme care. Check
             your compiler documentation for more details.
           </simpara>
-
+
         </listitem>
       </varlistentry>
-
+
       <varlistentry><term><literal>source</literal></term>
-
+
         <listitem>
           <simpara>
- The <code>&lt;source&gt;X</code> feature has the same effect on
- building a target as putting X in the list of sources.
- It's useful when you want to add
- the same source to all targets in the project
+ The <code>&lt;source&gt;X</code> feature has the same effect on
+ building a target as putting X in the list of sources. It is useful
+ when you want to add the same source to all targets in the project
             (you can put &lt;source&gt; in requirements) or to conditionally
- include a source (using conditional requirements, see <xref linkend="bbv2.tutorial.conditions"/>)
- See also the <code>&lt;library&gt;</code> feature.
+ include a source (using conditional requirements, see <xref linkend=
+ "bbv2.tutorial.conditions"/>). See also the <code>&lt;library&gt;
+ </code> feature.
           </simpara>
         </listitem>
       </varlistentry>
-
+
       <varlistentry><term><literal>library</literal></term>
-
+
         <listitem>
           <simpara>
- This feature is almost equivalent to the <code>&lt;source&gt;</code> feature,
- except that it takes effect only for linking. When you want to
- link all targets in a Jamfile to certain library, the
- <code>&lt;library&gt;</code> feature is preferred over
+ This feature is almost equivalent to the <code>&lt;source&gt;</code>
+ feature, except that it takes effect only for linking. When you want
+ to link all targets in a Jamfile to certain library, the
+ <code>&lt;library&gt;</code> feature is preferred over
             <code>&lt;source&gt;X</code> -- the latter will add the library to
             all targets, even those that have nothing to do with libraries.
           </simpara>
@@ -523,55 +521,65 @@
 
       <varlistentry><term><anchor id="bbv2.builtin.features.dependency"/>
           <literal>dependency</literal></term>
-
+
         <listitem>
           <simpara>
- Introduces a dependency on the target named by the
- value of this feature (so it will be brought
- up-to-date whenever the target being declared is).
- The dependency is not used in any other way. For example, in
- application with plugins, the plugins are not used when linking
- the application,
- application might have dependency on its plugins, even though
-
-
- , and
- adds its usage requirements to the build properties
- of the target being declared.
+ Introduces a dependency on the target named by the value of this
+ feature (so it will be brought up-to-date whenever the target being
+ declared is). The dependency is not used in any other way.
+
+ <!--
+ ====================================================================
+ An example and a motivation is needed here. Below is some commented
+ out content that used to be here but did not make any sense and
+ seems to have been left unfinished in some previous revision. Should
+ be fixed and this whole feature should be retested and fixed as
+ needed.
+ ====================================================================
+ For example, in application with plugins, the plugins are not used
+ when linking the application, application might have a dependency on
+ its plugins, even though
+
+ and
+ adds its usage requirements to the build properties
+ of the target being declared.
 
- The primary use case is when you want
+ The primary use case is when you want
             the usage requirements (such as <code>#include</code> paths) of some
- library to be applied, but don't want to link to it.
- <!-- It's hard to picture why anyone would want to do
- that. Please flesh out this motivation -->
+ library to be applied, but do not want to link to it.
+
+ It is hard to picture why anyone would want to do that. Please flesh
+ out this motivation.
+ ====================================================================
+ -->
           </simpara>
         </listitem>
       </varlistentry>
 
-
+
       <varlistentry><term><anchor id="bbv2.builtin.features.use"/>
           <literal>use</literal></term>
-
+
         <listitem>
           <simpara>
- Introduces a dependency on the target named by the
- value of this feature (so it will be brought
- up-to-date whenever the target being declared is), and
- adds its usage requirements to the build properties
+ Introduces a dependency on the target named by the value of this
+ feature (so it will be brought up-to-date whenever the target being
+ declared is), and adds its usage requirements to the build
+ properties
             <!-- Do you really mean "to the requirements?" -->
- of the target being declared. The dependency is not used
- in any other way. The primary use case is when you want
- the usage requirements (such as <code>#include</code> paths) of some
- library to be applied, but don't want to link to it.
- <!-- It's hard to picture why anyone would want to do
- that. Please flesh out this motivation -->
+ of the target being declared. The dependency is not used in any
+ other way. The primary use case is when you want the usage
+ requirements (such as <code>#include</code> paths) of some library
+ to be applied, but do not want to link to it.
+ <!-- It is hard to picture why anyone would want to do that. Please
+ flesh out this motivation. -->
           </simpara>
         </listitem>
       </varlistentry>
-
+
       <varlistentry><term><anchor id="bbv2.reference.features.dll-path"/>
       <literal>dll-path</literal></term>
-
+
         <listitem>
           <simpara>
             Specify an additional directory where the system should
@@ -581,53 +589,51 @@
             in <xref linkend="bbv2.faq"/> for details.
           </simpara>
         </listitem></varlistentry>
-
+
       <varlistentry><term><literal>hardcode-dll-paths</literal></term>
-
+
         <listitem>
           <simpara>
             Controls automatic generation of dll-path properties.
           </simpara>
-
+
           <para><emphasis role="bold">Allowed values:</emphasis>
- <literal>true</literal>, <literal>false</literal>. This property
- is specific to Unix systems. If an executable is built with
+ <literal>true</literal>, <literal>false</literal>. This property is
+ specific to Unix systems. If an executable is built with
             <code>&lt;hardcode-dll-paths&gt;true</code>, the generated binary
- will contain the list of all the paths to the used shared
- libraries. As the result, the executable can be run without
- changing system paths to shared libraries or installing the
- libraries to system paths. This
- <!-- you need an antecedent. This _what_? -->
- is very convenient during
- development. Plase see the <link
- linkend="bbv2.faq.dll-path">FAQ entry</link> for details.
- Note that on Mac OSX, the paths are unconditionally hardcoded by
- the linker, and it's not possible to disable that behaviour.
- </para>
- </listitem></varlistentry>
+ will contain the list of all the paths to the used shared libraries.
+ As the result, the executable can be run without changing system
+ paths to shared libraries or installing the libraries to system
+ paths. This <!-- you need an antecedent. This _what_? --> is very
+ convenient during development. Plase see the <link linkend=
+ "bbv2.faq.dll-path">FAQ entry</link> for details. Note that on Mac
+ OSX, the paths are unconditionally hardcoded by the linker, and it
+ is not possible to disable that behaviour.</para>
+ </listitem>
+ </varlistentry>
 
       <varlistentry>
         <term><literal>cflags</literal></term>
         <term><literal>cxxflags</literal></term>
         <term><literal>linkflags</literal></term>
-
+
         <listitem>
           <simpara>
             The value of those features is passed without modification to the
- corresponding tools. For <code>cflags</code> that's both the C and C++
- compilers, for <code>cxxflags</code> that's the C++ compiler and for
- <code>linkflags</code> that's the linker. The features are handy when
- you're trying to do something special that cannot be achieved by
- higher-level feature in Boost.Build.
+ corresponding tools. For <code>cflags</code> that is both the C and
+ C++ compilers, for <code>cxxflags</code> that is the C++ compiler
+ and for <code>linkflags</code> that is the linker. The features are
+ handy when you are trying to do something special that cannot be
+ achieved by a higher-level feature in Boost.Build.
           </simpara>
         </listitem>
       </varlistentry>
 
       <varlistentry><term><literal>warnings</literal></term>
-
         <listitem>
           <simpara>
- The <code>&lt;warnings&gt;</code> feature controls the warning level of compilers. It has the following values:
+ The <code>&lt;warnings&gt;</code> feature controls the warning level
+ of compilers. It has the following values:
             <itemizedlist>
               <listitem><para><code>off</code> - disables all warnings.</para></listitem>
               <listitem><para><code>on</code> - enables default warning level for the tool.</para></listitem>
@@ -639,25 +645,27 @@
       </varlistentry>
 
       <varlistentry><term><literal>warnings-as-errors</literal></term>
-
         <listitem>
           <simpara>
- The <code>&lt;warnings-as-errors&gt;</code> makes it possible to treat warnings as errors and abort
- compilation on a warning. The value <code>on</code> enables this behaviour. The default value is
+ The <code>&lt;warnings-as-errors&gt;</code> makes it possible to
+ treat warnings as errors and abort compilation on a warning. The
+ value <code>on</code> enables this behaviour. The default value is
             <code>off</code>.
           </simpara>
         </listitem>
       </varlistentry>
 
       <varlistentry><term><literal>build</literal></term>
-
+
         <listitem>
           <para><emphasis role="bold">Allowed values:</emphasis> <literal>no</literal></para>
 
           <para>
- The <code>build</code> feature is used to conditionally disable build of a target. If <code>&lt;build&gt;no</code>
- is in properties when building a target, build of that target is skipped. Combined with conditional requirements this
- allows to skip building some target in configurations where the build is known to fail.
+ The <code>build</code> feature is used to conditionally disable
+ build of a target. If <code>&lt;build&gt;no</code> is in properties
+ when building a target, build of that target is skipped. Combined
+ with conditional requirements this allows you to skip building some
+ target in configurations where the build is known to fail.
           </para>
         </listitem>
       </varlistentry>
@@ -667,32 +675,31 @@
         <listitem><para>The <literal>tag</literal> feature is used to customize
         the name of the generated files. The value should have the form:
 <programlisting>@<replaceable>rulename</replaceable></programlisting> where
- <replaceable>rulename</replaceable> should be a name of a rule with
- the following signature:
+ <replaceable>rulename</replaceable> should be a name of a rule with the
+ following signature:
 <programlisting>rule tag ( name : type ? : property-set )</programlisting>
         The rule will be called for each target with the default name computed
- by Boost.Build, the type of the target, and property set. The rule
- can either return a string that must be used as the name of the
- target, or empty string, in which case the default name will be used.
+ by Boost.Build, the type of the target, and property set. The rule can
+ either return a string that must be used as the name of the target, or
+ an empty string, in which case the default name will be used.
         </para>
 
- <para>Most typical use of the <literal>tag</literal> feature is
- to encode build properties, or library version in library target names.
- You should take care to return non-empty string from the tag rule
- only for types you care about &#x2014; otherwise, you might
- end up modifying names of object files, generated header file and
- other targets for which changing names does not make sense.</para>
+ <para>Most typical use of the <literal>tag</literal> feature is to
+ encode build properties, or library version in library target names. You
+ should take care to return non-empty string from the tag rule only for
+ types you care about &#x2014; otherwise, you might end up modifying
+ names of object files, generated header file and other targets for which
+ changing names does not make sense.</para>
         </listitem>
-
       </varlistentry>
 
       <varlistentry><term><literal>debug-symbols</literal></term>
-
- <listitem>
+
+ <listitem>
           <para><emphasis role="bold">Allowed values:</emphasis> <literal>on</literal>, <literal>off</literal>.</para>
 
           <para>The <literal>debug-symbols</literal> feature specifies if
- produced object files, executables and libraries should include
+ produced object files, executables and libraries should include
           debug information.
           Typically, the value of this feature is implicitly set by the
           <literal>variant</literal> feature, but it can be explicitly
@@ -702,48 +709,48 @@
       </varlistentry>
 
       <varlistentry><term><literal>architecture</literal></term>
- <listitem>
+ <listitem>
 
           <para>The <literal>architecture</literal> features specifies
           the general processor familty to generate code for.</para>
-
+
         </listitem>
       </varlistentry>
 
       <varlistentry><term><literal>instruction-set</literal></term>
         <indexterm><primary>instruction-set</primary></indexterm>
- <listitem>
+ <listitem>
           <para>Allowed values for this feature depend on used toolset.</para>
 
- <para>The <literal>instruction-set</literal> specifies for which
+ <para>The <literal>instruction-set</literal> specifies for which
           specific instruction set the code should be generated. The
           code in general might not run on processors with older/different
           instruction sets.</para>
 
           <para>While Boost.Build allows a large set of possible values
           for this features, whether a given value works depends on which
- compiler you use. Please see
+ compiler you use. Please see
           <xref linkend="bbv2.reference.tools.compilers"/> for details.
           </para>
-
+
         </listitem>
       </varlistentry>
 
       <varlistentry><term><literal>address-model</literal></term>
- <indexterm><primary>64-bit compilation</primary></indexterm>
- <listitem>
+ <indexterm><primary>64-bit compilation</primary></indexterm>
+ <listitem>
           <para><emphasis role="bold">Allowed values:</emphasis> <literal>32</literal>, <literal>64</literal>.</para>
 
           <para>The <literal>address-model</literal> specifies if 32-bit or
           64-bit code should be generated by the compiler. Whether this feature
- works depends on the used compiler, it's version, how the compiler
- is configured, and the values of the <literal>architecture</literal>
+ works depends on the used compiler, its version, how the compiler is
+ configured, and the values of the <literal>architecture</literal>
           <literal>instruction-set</literal>
- features. Please see <xref linkend="bbv2.reference.tools.compilers"/>
+ features. Please see <xref linkend="bbv2.reference.tools.compilers"/>
           for details.</para>
         </listitem>
       </varlistentry>
-
+
     </variablelist>
   </section>
 
@@ -754,8 +761,8 @@
       and other tools. This section documents how to use those tools.</para>
 
       <para>Before using any tool, you must declare your intention, and possibly
- specify additional information about tool's configuration. This is done
- with the <code>using</code> rule, for example:
+ specify additional information about the tool's configuration. This is
+ done with the <code>using</code> rule, for example:
 <programlisting>
 using gcc ;
 </programlisting>
@@ -776,9 +783,9 @@
         <section id="bbv2.reference.tools.compiler.gcc">
 
           <title>GNU C++</title>
-
- <para>The <code>gcc</code> module supports the
- <ulink url="http://gcc.gnu.org">GNU C++ compiler</ulink>
+
+ <para>The <code>gcc</code> module supports the
+ <ulink url="http://gcc.gnu.org">GNU C++ compiler</ulink>
           on Linux, a number of Unix-like system including MacOS X, SunOS and
           BeOS, and on Windows (either <ulink url="http://www.cygwin.com">Cygwin</ulink>
           or <ulink url="http://www.mingw.org">MinGW</ulink>).
@@ -803,11 +810,11 @@
           &option_list_intro;
           <variablelist>
 
- <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
+ parse="xml"/>
 
- <xi:include href="fragments.xml#xpointer(id('root_option')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('root_option')/*)"
+ parse="xml"/>
 
             <varlistentry>
               <term><literal>rc</literal></term>
@@ -830,7 +837,7 @@
                 or <code>rc</code> for borland's resource compiler.</para>
               </listitem>
             </varlistentry>
-
+
           </variablelist>
 
           <indexterm><primary>64-bit compilation</primary>
@@ -849,11 +856,12 @@
 
           <title>Microsoft Visual C++</title>
 
- <para>The <code>msvc</code> module supports the
+ <para>The <code>msvc</code> module supports the
           <ulink url="http://msdn.microsoft.com/visualc/">Microsoft Visual
           C++</ulink> command-line tools on Microsoft Windows. The supported
           products and versions of command line tools are listed below:</para>
           <itemizedlist>
+ <listitem><para>Visual Studio 2008&#x2014;9.0</para></listitem>
             <listitem><para>Visual Studio 2005&#x2014;8.0</para></listitem>
             <listitem><para>Visual Studio .NET 2003&#x2014;7.1</para></listitem>
             <listitem><para>Visual Studio .NET&#x2014;7.0</para></listitem>
@@ -867,12 +875,11 @@
           </programlisting>
           &using_repeation;
           <para>If the version is not explicitly specified, the most recent
- version found in the registry will be used instead. If the
- special value <code>all</code> is passed as the version, all
- versions found in the registry will be configured. If a version is
- specified, but the command is not, the compiler binary will be
- searched in standard installation paths for that version, followed
- by <envar>PATH</envar>.
+ version found in the registry will be used instead. If the special
+ value <code>all</code> is passed as the version, all versions found in
+ the registry will be configured. If a version is specified, but the
+ command is not, the compiler binary will be searched in standard
+ installation paths for that version, followed by <envar>PATH</envar>.
           </para>
 
           <para>The compiler command should be specified using forward slashes,
@@ -881,84 +888,98 @@
           &option_list_intro;
           <variablelist>
 
- <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
+ parse="xml"/>
 
             <varlistentry>
- <term><literal>setup</literal></term>
+ <term><literal>assembler</literal></term>
 
- <listitem><para>The filename of the environment setup scripts
- to run before invoking the compiler. If not specified,
- <command>vcvars32.bat</command> alongside the compiler binary
- will be used.</para>
- </listitem>
+ <listitem><para>The command that compiles assembler sources. If
+ not specified, <command>ml</command> will be used. The command
+ will be invoked after the setup script was executed and adjusted
+ the <envar>PATH</envar> variable.</para></listitem>
             </varlistentry>
 
             <varlistentry>
               <term><literal>compiler</literal></term>
 
- <listitem><para>The command that compiles C and C++ sources.
- If not specified, <command>cl</command> will be used. The
- command will be invoked after the setup script was
- executed and adjusted the <envar>PATH</envar> variable.</para>
- </listitem>
+ <listitem><para>The command that compiles C and C++ sources. If
+ not specified, <command>cl</command> will be used. The command
+ will be invoked after the setup script was executed and adjusted
+ the <envar>PATH</envar> variable.</para></listitem>
             </varlistentry>
 
             <varlistentry>
- <term><literal>linker</literal></term>
+ <term><literal>compiler-filter</literal></term>
 
- <listitem><para>The command that links executables and dynamic
- libraries.
- If not specified, <command>link</command> will be used. The
- command will be invoked after the setup script was
- executed and adjusted the <envar>PATH</envar> variable.</para>
- </listitem>
+ <listitem><para>Command through which to pipe the output of
+ running the compiler. For example to pass the output to STLfilt.
+ </para></listitem>
             </varlistentry>
 
             <varlistentry>
- <term><literal>assembler</literal></term>
+ <term><literal>idl-compiler</literal></term>
 
- <listitem><para>The command that compiles assember files.
- If not specified, <command>cl</command> will be used. The
- command will be invoked after the setup script was
+ <listitem><para>The command that compiles Microsoft COM interface
+ definition files. If not specified, <command>midl</command> will
+ be used. The command will be invoked after the setup script was
               executed and adjusted the <envar>PATH</envar> variable.</para>
               </listitem>
             </varlistentry>
 
             <varlistentry>
- <term><literal>resource-compiler</literal></term>
+ <term><literal>linker</literal></term>
 
- <listitem><para>The command that compiles resource files.
- If not specified, <command>rc</command> will be used. The
- command will be invoked after the setup script was
- executed and adjusted the <envar>PATH</envar> variable.</para>
- </listitem>
+ <listitem><para>The command that links executables and dynamic
+ libraries. If not specified, <command>link</command> will be used.
+ The command will be invoked after the setup script was executed
+ and adjusted the <envar>PATH</envar> variable.</para></listitem>
             </varlistentry>
 
             <varlistentry>
- <term><literal>idl-compiler</literal></term>
+ <term><literal>mc-compiler</literal></term>
 
- <listitem><para>The command that compiles Microsoft COM
- interface definition files.
- If not specified, <command>midl</command> will be used. The
- command will be invoked after the setup script was
+ <listitem><para>The command that compiles Microsoft message
+ catalog files. If not specified, <command>mc</command> will be
+ used. The command will be invoked after the setup script was
               executed and adjusted the <envar>PATH</envar> variable.</para>
               </listitem>
             </varlistentry>
 
             <varlistentry>
- <term><literal>mc-compiler</literal></term>
+ <term><literal>resource-compiler</literal></term>
 
- <listitem><para>The command that compiles Microsoft message
- catalog files.
- If not specified, <command>mt</command> will be used. The
- command will be invoked after the setup script was
- executed and adjusted the <envar>PATH</envar> variable.</para>
- </listitem>
+ <listitem><para>The command that compiles resource files. If not
+ specified, <command>rc</command> will be used. The command will be
+ invoked after the setup script was executed and adjusted the
+ <envar>PATH</envar> variable.</para></listitem>
             </varlistentry>
 
+ <varlistentry>
+ <term><literal>setup</literal></term>
+
+ <listitem><para>The filename of the global environment setup
+ script to run before invoking any of the tools defined in this
+ toolset. Will not be used in case a target platform specific
+ script has been explicitly specified for the current target
+ platform. Used setup script will be passed the target platform
+ identifier (x86, x86_amd64, x86_ia64, amd64 or ia64) as a
+ arameter. If not specified a default script is chosen based on the
+ used compiler binary, e.g. <command>vcvars32.bat</command> or
+ <command>vsvars32.bat</command>.</para></listitem>
+ </varlistentry>
 
- </variablelist>
+ <varlistentry>
+ <term><literal>setup-amd64></literal></term>
+ <term><literal>setup-i386></literal></term>
+ <term><literal>setup-ia64></literal></term>
+
+ <listitem><para>The filename of the target platform specific
+ environment setup script to run before invoking any of the tools
+ defined in this toolset. If not specified the global environment
+ setup script is used.</para></listitem>
+ </varlistentry>
+ </variablelist>
 
           <section>
             <title>64-bit support</title>
@@ -966,13 +987,14 @@
             <indexterm><primary>64-bit compilation</primary>
             <secondary>Microsoft Visual Studio</secondary></indexterm>
 
- <para>Starting with version 8.0, Microsoft Visual Studio
- can generate binaries for 64-bit processor, both 64-bit
- flavours of x86 (codenamed AMD64/EM64T), and
- Itanium (codenamed IA64). In addition, compilers that are
- itself run in 64-bit mode, for better performance, are provided.
- The complete list of compiler configurations are as follows
- (we abbreviate AMD64/EM64T to just AMD64):</para>
+ <para>Starting with version 8.0, Microsoft Visual Studio can
+ generate binaries for 64-bit processor, both 64-bit flavours of x86
+ (codenamed AMD64/EM64T), and Itanium (codenamed IA64). In addition,
+ compilers that are itself run in 64-bit mode, for better
+ performance, are provided. The complete list of compiler
+ configurations are as follows (we abbreviate AMD64/EM64T to just
+ AMD64):</para>
+
             <itemizedlist>
               <listitem><para>32-bit x86 host, 32-bit x86 target</para>
               </listitem>
@@ -986,20 +1008,19 @@
               </listitem>
             </itemizedlist>
             <para>
- The 32-bit host compilers can be always used, even on 64-bit Windows.
- On the contrary, 64-bit host compilers require both 64-bit
+ The 32-bit host compilers can be always used, even on 64-bit
+ Windows. On the contrary, 64-bit host compilers require both 64-bit
             host processor and 64-bit Windows, but can be faster. By default,
- only 32-bit host, 32-bit target compiler is installed, and additional
- compilers should be installed explicitly.
+ only 32-bit host, 32-bit target compiler is installed, and
+ additional compilers need to be installed explicitly.
             </para>
 
             <para>To use 64-bit compilation you should:</para>
             <orderedlist>
- <listitem><para>Configure you compiler as usual. If you provide
- a path to the compiler explicitly, provide the path to the
- 32-bit compiler. If you try to specify the path to any of 64-bit
- compilers, configuration won't work.</para>
- </listitem>
+ <listitem><para>Configure you compiler as usual. If you provide a
+ path to the compiler explicitly, provide the path to the 32-bit
+ compiler. If you try to specify the path to any of 64-bit
+ compilers, configuration will not work.</para></listitem>
 
               <listitem><para>When compiling, use <code>address-model=64</code>,
               to generate AMD64 code.</para></listitem>
@@ -1008,22 +1029,19 @@
               <code>architecture=ia64</code></para></listitem>
             </orderedlist>
 
- <para>The (AMD64 host, AMD64 target) compiler will be used
- automatically when you're generating AMD64 code and are
- running 64-bit Windows on AMD64. The (IA64 host, IA64 target)
- compiler won't be ever used, since nobody has an IA64 machine
- to test.</para>
+ <para>The (AMD64 host, AMD64 target) compiler will be used
+ automatically when you are generating AMD64 code and are running
+ 64-bit Windows on AMD64. The (IA64 host, IA64 target) compiler will
+ never be used, since nobody has an IA64 machine to test.</para>
 
             <para>It is believed that AMD64 and EM64T targets are essentially
- compatible. The compiler options <code>/favor:AMD64</code>
- and <code>/favor:EM64T</code>, which are accepted only by
- AMD64 targeting compilers, cause the generated code to be
- tuned to a specific flavor of 64-bit x86. Boost.Build will
- make use of those options depending on the value
- of the<code>instruction-set</code> feature.</para>
-
+ compatible. The compiler options <code>/favor:AMD64</code> and
+ <code>/favor:EM64T</code>, which are accepted only by AMD64
+ targeting compilers, cause the generated code to be tuned to a
+ specific flavor of 64-bit x86. Boost.Build will make use of those
+ options depending on the value of the<code>instruction-set</code>
+ feature.</para>
           </section>
-
         </section>
 
         <section id="bbv2.reference.tools.compiler.intel">
@@ -1052,25 +1070,25 @@
           look in <envar>PATH</envar> for an executable <command>icpc</command>
           (on Linux), or <command>icc.exe</command> (on Windows).
           </para>
-
+
           &option_list_intro;
           <variablelist>
 
- <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
+ parse="xml"/>
 
           </variablelist>
-
+
           <para>The Linux version supports the following additional options:</para>
           <variablelist>
 
- <xi:include href="fragments.xml#xpointer(id('root_option')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('root_option')/*)"
+ parse="xml"/>
 
           </variablelist>
 
           <!-- the compatibility option appears to be messed up -->
-
+
         </section>
 
         <section id="bbv2.reference.tools.compiler.acc">
@@ -1095,10 +1113,10 @@
 
           &option_list_intro;
           <variablelist>
- <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
+ parse="xml"/>
           </variablelist>
-
+
         </section>
 
         <section id="bbv2.reference.tools.compiler.borland">
@@ -1130,10 +1148,10 @@
 
           &option_list_intro;
           <variablelist>
- <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
+ parse="xml"/>
           </variablelist>
-
+
         </section>
 
         <section id="bbv2.reference.tools.compiler.como">
@@ -1141,7 +1159,7 @@
           <title>Comeau C/C++ Compiler</title>
 
           <para>The <code>como-linux</code> and the <code>como-win</code>
- modules supports the
+ modules supports the
           <ulink url="http://www.comeaucomputing.com/">Comeau C/C++ Compiler</ulink>
           on Linux and Windows respectively.</para>
 
@@ -1152,21 +1170,20 @@
           &using_repeation;
 
           <para>If the command is not specified, Boost.Build will search for
- a binary named <command>como</command> in
+ a binary named <command>como</command> in
           <envar>PATH</envar>.</para>
 
           &option_list_intro;
           <variablelist>
- <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
+ parse="xml"/>
           </variablelist>
 
- <para>Before using the windows version of the compiler,
- you need to setup necessary environment variables per compiler's
- documentation. In particular, the <envar>COMO_XXX_INCLUDE</envar>
- variable should be set, where <envar>XXX</envar> corresponds to the
- used backend C compiler.</para>
-
+ <para>Before using the Windows version of the compiler, you need to
+ setup necessary environment variables per compiler's documentation. In
+ particular, the <envar>COMO_XXX_INCLUDE</envar> variable should be
+ set, where <envar>XXX</envar> corresponds to the used backend C
+ compiler.</para>
         </section>
 
         <section id="bbv2.reference.tools.compiler.cw">
@@ -1174,11 +1191,11 @@
           <title>Code Warrior</title>
 
           <para>The <code>cw</code> module support CodeWarrior compiler,
- originally produced by Metrowerks and presently developed
- by Freescale. Boost.Build supports only the versions of the compiler
- that target x86 processors. All such versions were released by
- Metrowerks before aquisition and are not sold any longer.
- The last version known to work is 9.4</para>
+ originally produced by Metrowerks and presently developed by
+ Freescale. Boost.Build supports only the versions of the compiler that
+ target x86 processors. All such versions were released by Metrowerks
+ before aquisition and are not sold any longer. The last version known
+ to work is 9.4.</para>
 
           <para>The module is initialized using the following syntax:</para>
           <programlisting>
@@ -1186,24 +1203,24 @@
 
           &using_repeation;
 
- <para>If the command is not specified, Boost.Build will search for
- a binary named <command>mwcc</command> in default installation
- paths and in <envar>PATH</envar>.</para>
+ <para>If the command is not specified, Boost.Build will search for a
+ binary named <command>mwcc</command> in default installation paths and
+ in <envar>PATH</envar>.</para>
 
           &option_list_intro;
           <variablelist>
 
- <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
+ parse="xml"/>
 
- <xi:include href="fragments.xml#xpointer(id('root_option')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('root_option')/*)"
+ parse="xml"/>
 
             <varlistentry>
               <term><literal>setup</literal></term>
 
               <listitem><para>The command that sets up environment variables
- prior to invoking the compiler. If not specified,
+ prior to invoking the compiler. If not specified,
               <command>cwenv.bat</command> alongside the compiler binary
               will be used.</para>
               </listitem>
@@ -1230,9 +1247,9 @@
               executed and adjusted the <envar>PATH</envar> variable.</para>
               </listitem>
             </varlistentry>
-
+
           </variablelist>
-
+
         </section>
 
         <section id="bbv2.reference.tools.compiler.dmc">
@@ -1250,15 +1267,15 @@
           &using_repeation;
 
           <para>If the command is not specified, Boost.Build will search for
- a binary named <command>como</command> in
+ a binary named <command>como</command> in
           <envar>PATH</envar>.</para>
 
           &option_list_intro;
           <variablelist>
- <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
+ parse="xml"/>
           </variablelist>
-
+
         </section>
 
         <section id="bbv2.reference.tools.compiler.hp_cxx">
@@ -1280,10 +1297,10 @@
 
           &option_list_intro;
           <variablelist>
- <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
+ parse="xml"/>
           </variablelist>
-
+
         </section>
 
         <section id="bbv2.reference.tools.compiler.sun">
@@ -1302,7 +1319,7 @@
 
           <para>If the command is not specified, Boost.Build will search for
           a binary named <command>CC</command>
- in <filename>/opt/SUNWspro/bin</filename> and in
+ in <filename>/opt/SUNWspro/bin</filename> and in
           <envar>PATH</envar>.</para>
 
           <para>When using this compiler on complex C++ code, such as the
@@ -1316,15 +1333,15 @@
 
           &option_list_intro;
           <variablelist>
- <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
- parse="xml"/>
+ <xi:include href="fragments.xml#xpointer(id('common_options')/*)"
+ parse="xml"/>
           </variablelist>
 
           <indexterm><primary>64-bit compilation</primary>
           <secondary>Sun Studio</secondary></indexterm>
           Starting with Sun Studio 12, you can create 64-bit applications
           by using the <code>address-model=64</code> property.
-
+
         </section>
 
         <section id="bbv2.reference.tools.compiler.vacpp">
@@ -1346,14 +1363,14 @@
 
           <para>Later versions of Visual Age are known as XL C/C++. They
           were not tested with the the <code>vacpp</code> module.</para>
-
+
         </section>
 
       </section>
 
       <section>
         <title>Third-party libraries</title>
-
+
         <para>Boost.Build provides special support for some
         third-party C++ libraries, documented below.</para>
 
@@ -1363,18 +1380,18 @@
 
           <para>The <ulink url="http://stlport.org">STLport</ulink> library
           is an alternative implementation of C++ runtime library. Boost.Build
- supports using that library on Windows platfrom. Linux is
+ supports using that library on Windows platfrom. Linux is
           hampered by different naming of libraries in each STLport
           version and is not officially supported.</para>
 
- <para>Before using STLport, you need to configure it in
+ <para>Before using STLport, you need to configure it in
           <filename>user-config.jam</filename> using the following syntax:
           </para>
           <programlisting>
 using stlport : <optional><replaceable>version</replaceable></optional> : <replaceable>header-path</replaceable> : <optional><replaceable>library-path</replaceable></optional> ;
 </programlisting>
           <para>
- Where <replaceable>version</replaceable> is the version of
+ Where <replaceable>version</replaceable> is the version of
           STLport, for example <literal>5.1.4</literal>,
           <replaceable>headers</replaceable> is the location where
           STLport headers can be found, and <replaceable>libraries</replaceable>
@@ -1392,13 +1409,13 @@
         </section>
 
       </section>
-
+
     </section>
 
   <section id="bbv2.reference.buildprocess">
     <title>Build process</title>
 
- <para>The general overview of the build process was given in the
+ <para>The general overview of the build process was given in the
       <link linkend="bbv2.advanced.build_process">user documentation</link>.
       This section provides additional details, and some specific rules.
     </para>
@@ -1432,7 +1449,7 @@
 
       <para>When there are several alternatives, one of them must be
         selected. The process is as follows:</para>
-
+
       <orderedlist>
         <listitem>
           <simpara>
@@ -1442,14 +1459,14 @@
             requirements].
           </simpara>
         </listitem>
-
+
         <listitem>
           <simpara>
             An alternative is viable only if all properties in condition
             are present in build request.
           </simpara>
         </listitem>
-
+
         <listitem>
           <simpara>
             If there's one viable alternative, it's choosen. Otherwise,
@@ -1462,8 +1479,8 @@
           </simpara>
         </listitem>
       </orderedlist>
-
- </section>
+
+ </section>
 
     <section id="bbv2.reference.buildprocess.common">
       <title>Determining common properties</title>
@@ -1484,7 +1501,7 @@
 
         <listitem><para>A non-conditional property in requirement in always
             present in common properties.</para></listitem>
-
+
         <listitem><para>A property in build request is present in
             common properties, unless (2) tells otherwise.</para></listitem>
 
@@ -1511,14 +1528,14 @@
         conditional property. For example, the following example works as
         expected:
 <programlisting>
-exe a : a.cpp
- : &lt;toolset&gt;gcc:&lt;variant&gt;release
+exe a : a.cpp
+ : &lt;toolset&gt;gcc:&lt;variant&gt;release
         &lt;variant&gt;release:&lt;define&gt;FOO ;
 </programlisting>
- </para>
+ </para>
 
   </section>
-
+
   </section>
 
 
@@ -1534,7 +1551,7 @@
         aspect of a build configuration, such as whether inlining is
         enabled. Feature names may not contain the '<literal>&gt;</literal>'
         character.</para>
-
+
   <!--
     And what about dash?
   -->
@@ -1544,7 +1561,7 @@
         may not contain the '<literal>&lt;</literal>', '<literal>:</literal>', or
         '<literal>=</literal>' characters. Feature values for free features may not
         contain the '<literal>&lt;</literal>' character.</para>
-
+
       <para>A <emphasis>property</emphasis> is a (feature,value) pair, expressed as
         &lt;feature&gt;value.</para>
 
@@ -1553,7 +1570,7 @@
         (in the context of its parent) from its value. A subfeature's
         parent can never be another subfeature. Thus, features and their
         subfeatures form a two-level hierarchy.</para>
-
+
       <para>A <emphasis>value-string</emphasis> for a feature <emphasis role="bold">F</emphasis> is a string of
         the form
         <literal>value-subvalue1-subvalue2</literal>...<literal>-subvalueN</literal>, where
@@ -1563,22 +1580,22 @@
         <literal>&lt;toolset&gt;gcc &lt;toolset-version&gt;3.0.1</literal> can be
         expressed more conscisely using a value-string, as
         <literal>&lt;toolset&gt;gcc-3.0.1</literal>.</para>
-
+
       <para>A <emphasis>property set</emphasis> is a set of properties (i.e. a
         collection without duplicates), for instance:
         <literal>&lt;toolset&gt;gcc &lt;runtime-link&gt;static</literal>.</para>
-
+
       <para>A <emphasis>property path</emphasis> is a property set whose elements have
         been joined into a single string separated by slashes. A property
         path representation of the previous example would be
         <literal>&lt;toolset&gt;gcc/&lt;runtime-link&gt;static</literal>.</para>
-
+
       <para>A <emphasis>build specification</emphasis> is a property set that fully
         describes the set of features used to build a target.</para>
-
+
       <section id="bbv2.reference.features.validity">
         <title>Property Validity</title>
-
+
         <para>
           For <link linkend=
             "bbv2.reference.features.attributes.free">free</link>
@@ -1592,11 +1609,11 @@
           property is only valid in the presence of
           <code>&lt;gcc-version&gt;2.95.2</code>.
         </para>
-
+
       </section>
       <section id="bbv2.reference.features.attributes">
         <title>Feature Attributes</title>
-
+
         <para>Each feature has a collection of zero or more of the following
           attributes. Feature attributes are low-level descriptions of how the
           build system should interpret a feature's values when they appear in
@@ -1604,31 +1621,31 @@
           that an <emphasis>incidental</emphasis> property, for example, is
           one whose feature has the <emphasis>incidental</emphasis>
           attribute.</para>
-
+
         <itemizedlist>
           <listitem>
             <para><emphasis>incidental</emphasis></para>
-
+
             <para>Incidental features are assumed not to affect build
               products at all. As a consequence, the build system may use
               the same file for targets whose build specification differs
               only in incidental features. A feature that controls a
               compiler's warning level is one example of a likely
               incidental feature.</para>
-
+
             <para>Non-incidental features are assumed to affect build
               products, so the files for targets whose build specification
               differs in non-incidental features are placed in different
               directories as described in "target paths" below. [ where? ]
             </para>
           </listitem>
-
+
           <listitem>
             <para>
               <anchor id="bbv2.reference.features.attributes.propagated"/>
               <emphasis>propagated</emphasis>
             </para>
-
+
             <para>Features of this kind are
               propagated to dependencies. That is, if a <link linkend=
                 "bbv2.advanced.targets.main">main target</link> is built using a
@@ -1640,29 +1657,29 @@
               libraries. Thus, the <literal>&lt;optimization&gt;</literal> feature is
               propagated.</para>
           </listitem>
-
+
           <listitem>
             <para>
               <anchor id="bbv2.reference.features.attributes.free"/>
               <emphasis>free</emphasis>
             </para>
-
+
             <para>Most features have a finite set of allowed values, and can
               only take on a single value from that set in a given build
               specification. Free features, on the other hand, can have
               several values at a time and each value can be an arbitrary
               string. For example, it is possible to have several
               preprocessor symbols defined simultaneously:</para>
-
+
 <programlisting>
 &lt;define&gt;NDEBUG=1 &lt;define&gt;HAS_CONFIG_H=1
 </programlisting>
 
           </listitem>
-
+
           <listitem>
             <para><emphasis>optional</emphasis></para>
-
+
             <para>An optional feature is a feature that is not required to
               appear in a build specification. Every non-optional non-free
               feature has a default value that is used when a value for
@@ -1742,25 +1759,25 @@
       </section>
       <section id="bbv2.reference.features.declaration">
         <title>Feature Declaration</title>
-
+
         <para>The low-level feature declaration interface is the
           <literal>feature</literal> rule from the
           <literal>feature</literal> module:
-
+
 <programlisting>
 rule feature ( name : allowed-values * : attributes * )
 </programlisting>
-
+
           A feature's allowed-values may be extended with the
           <code>feature.extend</code> rule.
         </para>
-
+
       </section>
     </section>
 
     <section id="bbv2.reference.variants">
       <title>Build Variants</title>
-
+
       <para>
         A build variant, or (simply variant) is a special kind of composite
         feature that automatically incorporates the default values of
@@ -1783,7 +1800,7 @@
         target requires some set of properties, it is needed to find the
         set of properties to use for building. This process is called
         <emphasis>property refinement</emphasis> and is performed by these rules</para>
-
+
       <orderedlist>
 
         <listitem>
@@ -1835,22 +1852,22 @@
 
     <section id="bbv2.reference.ids">
       <title>Target identifiers and references</title>
-
+
       <para><emphasis>Target identifier</emphasis> is used to denote a
         target. The syntax is:</para>
 
 <programlisting>
 target-id -&gt; (project-id | target-name | file-name )
- | (project-id | directory-name) "//" target-name
+ | (project-id | directory-name) "//" target-name
 project-id -&gt; path
 target-name -&gt; path
 file-name -&gt; path
-directory-name -&gt; path
+directory-name -&gt; path
 </programlisting>
 
       <para>
         This grammar allows some elements to be recognized as either
-
+
         <itemizedlist>
           <listitem>
             <simpara>
@@ -1898,7 +1915,7 @@
 
         <listitem>
           <simpara>
- It allows to have main target names with slashes.
+ It allows to have main target names with slashes.
 
             <!-- The motivation for which is:
 
@@ -1913,7 +1930,7 @@
             target name that contains slashes?
 
             3. Using sub-Jamfile in "foo" to declare extracted file "foo/b" is
- not an option, because you should not change existing tree
+ not an option, because you should not change existing tree
 
             That makes good rationale for why main target must contain names.
             -->
@@ -1937,21 +1954,21 @@
         <programlisting>
           exe compiler : compiler.cpp libs/cmdline/&lt;optimization&gt;space ;
         </programlisting>
-
+
         would cause the version of <literal>cmdline</literal> library,
         optimized for space, to be linked in even if the
         <literal>compiler</literal> executable is build with optimization for
         speed.
       </para>
     </section>
-
+
   </section>
 
   <section id="bbv2.reference.generators">
     <title>Generators</title>
 
     <warning><para>The information is this section is likely to be outdated
- and misleading.
+ and misleading.
       </para></warning>
 
     <para>To construct a main target with given properties from sources,
@@ -1999,7 +2016,7 @@
           </simpara>
         </listitem>
       </orderedlist>
-
+
       <para>
         Generator's required and optional properties may not include
         either free or incidental properties. (Allowing this would
@@ -2126,7 +2143,7 @@
 <!--
      Local Variables:
      mode: xml
- sgml-indent-data: t
+ sgml-indent-data: t
      sgml-parent-document: ("userman.xml" "chapter")
      sgml-set-face: t
      End:

Modified: branches/CMake/release/tools/build/v2/doc/src/tasks.xml
==============================================================================
--- branches/CMake/release/tools/build/v2/doc/src/tasks.xml (original)
+++ branches/CMake/release/tools/build/v2/doc/src/tasks.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,21 +10,20 @@
   <title>Common tasks</title>
 
   <para>This section describes main targets types that Boost.Build supports
- of-of-the-box. Unless otherwise noted, all mentioned main target rules
- have the common signature, described in <xref
- linkend="bbv2.advanced.targets"/>.
+ out-of-the-box. Unless otherwise noted, all mentioned main target rules have
+ the common signature, described in <xref linkend="bbv2.advanced.targets"/>.
   </para>
-
+
   <section id="bbv2.tasks.programs">
     <title>Programs</title>
 
       <indexterm><primary>exe</primary></indexterm>
- <para>Programs are created using the <code>exe</code> rule, which
- follows the <link linkend="bbv2.main-target-rule-syntax">common
- syntax</link>. For example:
+ <para>Programs are created using the <code>exe</code> rule, which follows
+ the <link linkend="bbv2.main-target-rule-syntax">common syntax</link>.
+ For example:
 <programlisting>
-exe hello : hello.cpp some_library.lib /some_project//library
- : &lt;threading&gt;multi
+exe hello : hello.cpp some_library.lib /some_project//library
+ : &lt;threading&gt;multi
           ;
 </programlisting>
         This will create an executable file from the sources -- in this case,
@@ -35,7 +34,7 @@
       </para>
 
       <tip>
- <para>
+ <para>
           On Windows, if an application uses dynamic libraries, and both
           the application and the libraries are built by Boost.Build, its not
           possible to immediately run the application, because the
@@ -44,9 +43,9 @@
           manually, or place the application and the libraries to the same
           directory. See <xref linkend="bbv2.tasks.installing"/>.
         </para>
- <!-- We should be emphasizing the use of the built-in testing
- rules rather than continually discussing these quirks of
- running programs with dynamic libraries. -->
+ <!-- We should be emphasizing the use of the built-in testing rules
+ rather than continually discussing these quirks of running programs
+ with dynamic libraries. -->
       </tip>
     </section>
 
@@ -55,27 +54,27 @@
 
       <para>Libraries are created using the <code>lib</code> rule, which
         follows the <link linkend="bbv2.main-target-rule-syntax">common
- syntax</link>. For example:
+ syntax</link>. For example:
 <programlisting>
 lib helpers : helpers.cpp : &lt;include&gt;boost : : &lt;include&gt;. ;
 </programlisting>
       </para>
       <!-- Add one sentence that says what the above does. -->
- <para>In the most common case, the <code>lib</code> creates a library
- from the specified sources. Depending on the value of
- &lt;link&gt; feature the library will be either static or
- shared. There are two other cases. First is when the library is
- installed somewhere in compiler's search paths, and should be
- searched by the compiler (typically, using the <option>-l</option>
- option). The second case is where the library is available as a
- prebuilt file and the full path is known.
+ <para>
+ In the most common case, the <code>lib</code> creates a library from the
+ specified sources. Depending on the value of &lt;link&gt; feature the
+ library will be either static or shared. There are two other cases.
+ First is when the library is installed somewhere in compiler's search
+ paths, and should be searched by the compiler (typically, using the
+ <option>-l</option> option). The second case is where the library is
+ available as a prebuilt file and the full path is known.
         <!-- But the first case is also prebuilt. This is confusingly phrased. -->
- </para>
-
+ </para>
+
       <para>
         The syntax for these case is given below:
 <programlisting>
-lib z : : &lt;name&gt;z &lt;search&gt;/home/ghost ;
+lib z : : &lt;name&gt;z &lt;search&gt;/home/ghost ;
 lib compress : : &lt;file&gt;/opt/libs/compress.a ;
 </programlisting>
         The <code>name</code> property specifies the name that should be
@@ -106,7 +105,7 @@
         release or debug versions.
         <!-- explain -->
       </para>
-
+
       <para>
         For convenience, the following syntax is allowed:
 <programlisting>
@@ -115,18 +114,19 @@
 </programlisting>
           and is does exactly the same as:
 <programlisting>
-lib z : : &lt;name&gt;z ;
-lib gui : : &lt;name&gt;gui ;
-lib db : : &lt;name&gt;db ;
-lib aux : : &lt;name&gt;aux ;
+lib z : : &lt;name&gt;z ;
+lib gui : : &lt;name&gt;gui ;
+lib db : : &lt;name&gt;db ;
+lib aux : : &lt;name&gt;aux ;
 </programlisting>
       </para>
-
- <para>When a library uses another library you should put that other
- library in the list of sources. This will do the right thing in all
- cases. For portability, you should specify library dependencies even
- for searched and prebuilt libraries, othewise, static linking on
- Unix won't work. For example:
+
+ <para>
+ When a library uses another library you should put that other library in
+ the list of sources. This will do the right thing in all cases. For
+ portability, you should specify library dependencies even for searched
+ and prebuilt libraries, othewise, static linking on Unix will not work.
+ For example:
 <programlisting>
 lib z ;
 lib png : z : &lt;name&gt;png ;
@@ -134,15 +134,16 @@
         </para>
 
       <note>
- <para>When a library (say, <code>a</code>), that has another
- library, (say, <code>b</code>)
+ <para>
+ When a library (say, <code>a</code>), that has another library, (say,
+ <code>b</code>)
           <!-- how can a library "have" a library? -->
           is linked dynamically, the <code>b</code>
- library will be incorporated
+ library will be incorporated
           <!-- Incorporated? Be precise. -->
           in <code>a</code>. (If <code>b</code>
- is dynamic library as well, then <code>a</code> will only refer to
- it, and not include any extra code.)
+ is dynamic library as well, then <code>a</code> will only refer to it,
+ and not include any extra code.)
           <!-- Don't parenthesize a whole sentence. -->
           When the <code>a</code>
           library is linked statically, Boost.Build will assure that all
@@ -150,9 +151,10 @@
           <code>b</code>.
         </para>
       </note>
-
- <para>One feature of Boost.Build that is very important for libraries
- is usage requirements.
+
+ <para>
+ One feature of Boost.Build that is very important for libraries is usage
+ requirements.
         <!-- Rephrase that. But then, it's much too late for an
              introduction of usage requirements - you've already
              discussed them many times. -->
@@ -161,7 +163,7 @@
 lib helpers : helpers.cpp : : : &lt;include&gt;. ;
 </programlisting>
         then the compiler include path for all targets that use
- <code>helpers</code> will contain the directory
+ <code>helpers</code> will contain the directory
         <!-- The rest of this sentence is unintelligible -->
         where the target is defined.path to "helpers.cpp". The user
         only needs to add <code>helpers</code> to the list of sources,
@@ -185,7 +187,7 @@
           <code>a</code> library won't even refer to <code>b</code>.
         </para>
       </note>
-
+
     </section>
 
     <section id="bbv2.tasks.alias">
@@ -213,13 +215,13 @@
 alias threads : /boost/thread//boost_thread : &lt;link&gt;static ;
 </programlisting>
         and use only the <code>threads</code> alias in your Jamfiles.
- </para>
+ </para>
 
       <para>
         You can also specify usage requirements for the
         <code>alias</code> target. If you write the following:
 <programlisting>
-alias header_only_library : : : : &lt;include&gt;/usr/include/header_only_library ;
+alias header_only_library : : : : &lt;include&gt;/usr/include/header_only_library ;
 </programlisting>
         then using <code>header_only_library</code> in sources will only add an
         include path. Also note that when an alias has sources, their usage
@@ -233,7 +235,7 @@
         will compile <filename>main.cpp</filename> with additional includes
         required for using the specified static libraries.
       </para>
-
+
     </section>
 
     <section id="bbv2.tasks.installing">
@@ -270,19 +272,19 @@
 install dist : hello helpers : &lt;variant&gt;release:&lt;location&gt;dist/release
                              &lt;variant&gt;debug:&lt;location&gt;dist/debug ;
 install dist2 : hello helpers : &lt;location&gt;$(DIST) ;
-</programlisting>
+</programlisting>
         See also <link linkend="bbv2.reference.variants.propcond">conditional
           properties</link> and <link linkend="bbv2.faq.envar">environment variables</link>
       </para>
 
       <bridgehead>Installing with all dependencies</bridgehead>
-
+
       <para>
         Specifying the names of all libraries to install can be boring. The
         <code>install</code> allows you to specify only the top-level executable
         targets to install, and automatically install all dependencies:
 <programlisting>
-install dist : hello
+install dist : hello
            : &lt;install-dependencies&gt;on &lt;install-type&gt;EXE
              &lt;install-type&gt;LIB
            ;
@@ -304,16 +306,16 @@
       <indexterm><primary>install-source-root</primary></indexterm>
       <para>By default, the <code>install</code> rules will stip paths from
       it's sources. So, if sources include <filename>a/b/c.hpp</filename>,
- the <filename>a/b</filename> part will be ignored. To make the
+ the <filename>a/b</filename> part will be ignored. To make the
       <code>install</code> rule preserve the directory hierarchy you need
       to use the <code>install-source-root</code> feature to specify the
       root of the hierarchy you are installing. Relative paths from that
       root will be preserved. For example, if you write:
 
 <programlisting>
-install headers
- : a/b/c.h
- : &lt;location&gt;/tmp &lt;install-source-root&gt;a
+install headers
+ : a/b/c.h
+ : &lt;location&gt;/tmp &lt;install-source-root&gt;a
     ;
 </programlisting>
 
@@ -323,7 +325,7 @@
       <para>The <link linkend="bbv2.reference.glob-tree">glob-tree</link> rule
       can be used to find all files below a given directory, making
       it easy to install entire directory tree.</para>
-
+
       <bridgehead>Installing into Several Directories</bridgehead>
 
       <para>The <link linkend="bbv2.tasks.alias"><code>alias</code></link>
@@ -336,26 +338,26 @@
 </programlisting>
     </para>
 
- <para>Because the <code>install</code> rule just copies targets, most
- free features <footnote><para>see the definition of "free" in <xref
- linkend="bbv2.reference.features.attributes"/>.</para></footnote>
- have no effect when used in requirements of the <code>install</code> rule.
- The only two which matter are
- <link linkend="bbv2.builtin.features.dependency">
- <varname>dependency</varname></link> and, on Unix,
- <link linkend="bbv2.reference.features.dll-path"><varname>dll-path</varname></link>.
+ <para>
+ Because the <code>install</code> rule just copies targets, most free
+ features <footnote><para>see the definition of "free" in
+ <xref linkend="bbv2.reference.features.attributes"/>.</para></footnote>
+ have no effect when used in requirements of the <code>install</code> rule.
+ The only two which matter are <link
+ linkend="bbv2.builtin.features.dependency"><varname>dependency</varname>
+ </link> and, on Unix, <link linkend="bbv2.reference.features.dll-path">
+ <varname>dll-path</varname></link>.
     </para>
 
     <note>
       <para>
         (Unix specific). On Unix, executables built with Boost.Build typically
- contain the list of paths to all used dynamic libraries. For
- installing, this is not desired, so Boost.Build relinks the executable
- with an empty list of paths. You can also specify additional paths for
- installed executables with the <varname>dll-path</varname> feature.
+ contain the list of paths to all used dynamic libraries. For installing,
+ this is not desired, so Boost.Build relinks the executable with an empty
+ list of paths. You can also specify additional paths for installed
+ executables with the <varname>dll-path</varname> feature.
       </para>
     </note>
-
 
     </section>
 
@@ -363,9 +365,10 @@
 
       <title>Testing</title>
 
- <para>Boost.Build has convenient support for running unit tests. The
- simplest way is the <code>unit-test</code> rule, which follows the
- <link linkend="bbv2.main-target-rule-syntax">common syntax</link>. For
+ <para>
+ Boost.Build has convenient support for running unit tests. The simplest
+ way is the <code>unit-test</code> rule, which follows the <link
+ linkend="bbv2.main-target-rule-syntax">common syntax</link>. For
         example:
 <programlisting>
 unit-test helpers_test : helpers_test.cpp helpers ;
@@ -380,22 +383,22 @@
         can't miss a unit test failure.
       </para>
 
- <para>By default, the executable is run directly. Sometimes, it's
+ <para>By default, the executable is run directly. Sometimes, it's
       desirable to run the executable using some helper command. You should use the
       <literal>testing.launcher</literal> property to specify the name of the
       helper command. For example, if you write:
       </para>
 <programlisting>
-unit-test helpers_test
- : helpers_test.cpp helpers
+unit-test helpers_test
+ : helpers_test.cpp helpers
    : <emphasis role="bold">&lt;testing.launcher&gt;valgrind</emphasis>
- ;
+ ;
 </programlisting>
       <para>The command used to run the executable will be:</para>
 <screen>
-<emphasis role="bold">valgrind</emphasis> bin/$toolset/debug/helpers_test
+<emphasis role="bold">valgrind</emphasis> bin/$toolset/debug/helpers_test
 </screen>
-
+
       <para>There are few specialized testing rules, listed below:
       <programlisting>
 rule compile ( sources : requirements * : target-name ? )
@@ -403,7 +406,7 @@
 rule link ( sources + : requirements * : target-name ? )
 rule link-fail ( sources + : requirements * : target-name ? )
       </programlisting>
- They are are given a list of sources and requirements.
+ They are are given a list of sources and requirements.
       If the target name is not provided, the name of the first
       source file is used instead. The <literal>compile*</literal>
       tests try to compile the passed source. The <literal>link*</literal>
@@ -415,10 +418,10 @@
       </para>
 
       <para>There are two specialized rules for running applications, which
- are more powerful than the <code>unit-test</code> rule. The
+ are more powerful than the <code>unit-test</code> rule. The
       <code>run</code> rule has the following signature:
       <programlisting>
-rule run ( sources + : args * : input-files * : requirements * : target-name ?
+rule run ( sources + : args * : input-files * : requirements * : target-name ?
     : default-build * )
       </programlisting>
       The rule builds application from the provided sources and runs it,
@@ -430,15 +433,15 @@
       directory. The <code>run-fail</code> rule is identical to the
       <code>run</code> rule, except that it expects that the run fails.
       </para>
-
+
       <para>All rules described in this section, if executed successfully,
       create a special manifest file to indicate that the test passed.
       For the <code>unit-test</code> rule the files is named
       <filename><replaceable>target-name</replaceable>.passed</filename> and
- for the other rules it is called
+ for the other rules it is called
       <filename><replaceable>target-name</replaceable>.test</filename>.
       The <code>run*</code> rules also capture all output from the program,
- and store it in a file named
+ and store it in a file named
       <filename><replaceable>target-name</replaceable>.output</filename>.</para>
 
       <para>The <code>run</code> and the <code>run-fail</code> rules, if
@@ -451,12 +454,12 @@
       the <literal>--dump-tests</literal> command-line option. The output
       will consist of lines of the form:
       <screen>
-boost-test(<replaceable>test-type</replaceable>) <replaceable>path</replaceable> : <replaceable>sources</replaceable>
- </screen>
+boost-test(<replaceable>test-type</replaceable>) <replaceable>path</replaceable> : <replaceable>sources</replaceable>
+ </screen>
       </para>
 
       <para>It is possible to process the list of tests, the output of
- bjam during command run, and the presense/absense of the
+ bjam during command run, and the presense/absense of the
       <filename>*.test</filename> files created when test passes into
       human-readable status table of tests. Such processing utilities
       are not included in Boost.Build.</para>
@@ -467,53 +470,64 @@
 
       <title>Custom commands</title>
 
- <para>When you use most of main target rules, Boost.Build automatically
- figures what commands to run and it what order. As soon as you want
- to use new file types, or support new tools, one approach is to
- extend Boost.Build to smoothly support them, as documented in
- <xref linkend="bbv2.extender"/>. However, if there's a single
- place where the new tool is used, it might be easier to just
- explicitly specify the commands to run.</para>
-
- <para>Three main target rules can be used for that. The
- <functionname>make</functionname> rule allows you to construct
- a single file from any number of source file, by running a
- command you specify. The <functionname>notfile</functionname> rule
- allows you to run an arbitrary command, without creating any files.
- Finaly, the <functionname>generate</functionname> rule allows you
- to describe transformation using Boost.Build's virtual targets.
- This is higher-level than file names that the make rule operates with,
- and allows you to create more than one target, or create differently
- named targets depending on properties, or use more than one
- tool.</para>
-
- <para>The <functionname>make</functionname> rule is used when you want to
- create one file from a number of sources using some specific command.
- The <functionname>notfile</functionname> is used to unconditionally run
- a command.
+ <para>
+ When you use most of main target rules, Boost.Build automatically
+ figures what commands to run and it what order. As soon as you want to
+ use new file types, or support new tools, one approach is to extend
+ Boost.Build to smoothly support them, as documented in
+ <xref linkend="bbv2.extender"/>. However, if there's a single place
+ where the new tool is used, it might be easier to just explicitly
+ specify the commands to run.
+ </para>
+
+ <para>
+ <!-- This paragraph requires links to where the terms 'virtual target'
+ & 'target' are defined. -->
+ Three main target rules can be used for that. The <functionname>make
+ </functionname> rule allows you to construct a single file from any
+ number of source file, by running a command you specify. The
+ <functionname>notfile</functionname> rule allows you to run an arbitrary
+ command, without creating any files. And finaly, the <functionname>
+ generate</functionname> rule allows you to describe transformation using
+ Boost.Build's virtual targets. This is higher-level than file names that
+ the <functionname>make</functionname> rule operates with and allows you
+ to create more than one target, create differently named targets
+ depending on properties or use more than one tool.
+ </para>
+
+ <para>
+ The <functionname>make</functionname> rule is used when you want to
+ create one file from a number of sources using some specific command.
+ The <functionname>notfile</functionname> is used to unconditionally run
+ a command.
       </para>
 
+ <!-- We need to specify somewhere that the user can get rules like make,
+ notfile & generate defined in his Jamfiles by importing an appropriate
+ Boost.Build module. Also, each of those rules should get a separate
+ documentation page explicitly listing which module needs to be imported
+ for them to become accessible. -->
+
       <para>
- Suppose you want to create file <filename>file.out</filename> from
- file <filename>file.in</filename> by running command
- <command>in2out</command>. Here's how you'd do this in Boost.Build:
+ Suppose you want to create file <filename>file.out</filename> from file
+ <filename>file.in</filename> by running command
+ <command>in2out</command>. Here is how you would do this in Boost.Build:
 <programlisting>
+make file.out : file.in : @in2out ;
 actions in2out
 {
     in2out $(&lt;) $(&gt;)
 }
-make file.out : file.in : @in2out ;
 </programlisting>
- If you run <command>bjam</command> and <filename>file.out</filename>
+ If you run <command>bjam</command> and <filename>file.out</filename>
         does not exist, Boost.Build will run the <command>in2out</command>
- command to create that file. For more details on specifying actions,
- see <xref linkend="bbv2.advanced.jam_language.actions"/>.
+ command to create that file. For more details on specifying actions, see
+ <xref linkend="bbv2.advanced.jam_language.actions"/>.
       </para>
 
-
       <para>
- It could be that you just want to run some command unconditionally,
- and that command does not create any specific files. The, you can use
+ It could be that you just want to run some command unconditionally, and
+ that command does not create any specific files. For that you can use
         the <functionname>notfile</functionname> rule. For example:
 <programlisting>
 notfile echo_something : @echo ;
@@ -527,97 +541,118 @@
         Boost.Build will unconditionally run the action.
       </para>
 
- <para>The <functionname>generate</functionname> rule is used when
- you want to express transformations using Boost.Build's virtual targets,
- as opposed to just filenames. The <functionname>generate</functionname>
- rule has the standard main target rule signature, but you are required
- to specify the <literal>generating-rule</literal> property. The value
- of the property should be in the form
- <literal>@<replaceable>rule-name</replaceable></literal> and the named
- rule should have the following signature:
- <programlisting>
+ <para>
+ <!-- This paragraph requires links to where terms like 'virtual target',
+ 'target', 'project-target' & 'property-set' are defined. -->
+ The <functionname>generate</functionname> rule is used when you want to
+ express transformations using Boost.Build's virtual targets, as opposed
+ to just filenames. The <functionname>generate</functionname> rule has
+ the standard main target rule signature, but you are required to specify
+ the <literal>generating-rule</literal> property. The value of the
+ property should be in the form
+ <literal>@<replaceable>rule-name</replaceable></literal>, the named rule
+ should have the following signature:
+<programlisting>
 rule generating-rule ( project name : property-set : sources * )
- </programlisting>
- and will be called with an instance of the <code>project-target</code>
- class, the name of the main target, an instance of the
- <code>property-set</code> class containing build properties,
- and the list of instances of the <code>virtual-target</code> class
- corresponding to sources.
- The rule must return a list of <code>virtual-target</code> instances.
- The interface of the <code>virtual-target</code> class can be learned
- by looking at the <filename>build/virtual-target.jam</filename> file.
- The <filename>generate</filename> example in Boost.Build distribution
- illustrates how the <literal>generate</literal> rule can be used.
+</programlisting>
+ and will be called with an instance of the <code>project-target</code>
+ class, the name of the main target, an instance of the
+ <code>property-set</code> class containing build properties, and the
+ list of instances of the <code>virtual-target</code> class corresponding
+ to sources. The rule must return a list of <code>virtual-target</code>
+ instances. The interface of the <code>virtual-target</code> class can be
+ learned by looking at the <filename>build/virtual-target.jam</filename>
+ file. The <filename>generate</filename> example contained in the
+ Boost.Build distribution illustrates how the <literal>generate</literal>
+ rule can be used.
       </para>
-
+
     </section>
 
     <section id="bbv2.reference.precompiled_headers">
       <title>Precompiled Headers</title>
 
- <para>Precompiled headers is a mechanism to speed up compilation
- by creating a partially processed version of some header files,
- and then using that version during compilations rather then
- repeatedly parsing the original headers. Boost.Build supports
- precompiled headers with gcc and msvc toolsets.</para>
+ <para>
+ Precompiled headers is a mechanism to speed up compilation by creating a
+ partially processed version of some header files, and then using that
+ version during compilations rather then repeatedly parsing the original
+ headers. Boost.Build supports precompiled headers with gcc and msvc
+ toolsets.
+ </para>
+
+ <para>
+ To use precompiled headers, follow the following steps:
+ </para>
 
- <para>To use precompiled headers, follow these steps:</para>
       <orderedlist>
- <listitem><para>Create a header that includes big headers used by your project.
- It's better to include only headers that are sufficiently stable &#x2014;
- like headers from the compiler, and external libraries. Please wrap
- the header in <code>#ifdef BOOST_BUILD_PCH_ENABLED</code>, so that
- the potentially expensive inclusion of headers is not done
- when PCH is not enabled. Include the new header at the top of your
- source files.</para></listitem>
-
- <listitem><para>Declare a new Boost.Build target for the precompiled header
- and add that precompiled header to the sources of the target whose compilation
- you want to speed up:
- <programlisting>
-cpp-pch pch : pch.hpp ;
-exe main : main.cpp pch ;</programlisting>
- You can use the <code>c-pch</code> if you want to use the precompiled
- header in C programs.
+ <listitem><para>
+ Create a header that includes headers used by your project that you
+ want precompiled. It is better to include only headers that are
+ sufficiently stable &#x2014; like headers from the compiler and
+ external libraries. Please wrap the header in <code>#ifdef
+ BOOST_BUILD_PCH_ENABLED</code>, so that the potentially expensive
+ inclusion of headers is not done when PCH is not enabled. Include the
+ new header at the top of your source files.
         </para></listitem>
 
+ <listitem><para>
+ Declare a new Boost.Build target for the precompiled header and add
+ that precompiled header to the sources of the target whose compilation
+ you want to speed up:
+<programlisting>
+cpp-pch pch : pch.hpp ;
+exe main : main.cpp pch ;
+</programlisting>
+ You can use the <functionname>c-pch</functionname> rule if you want to
+ use the precompiled header in C programs.
+ </para></listitem>
       </orderedlist>
- <para>The <filename>pch</filename> example in Boost.Build distribution
- can be used as reference.</para>
 
- <para>Please note the following:</para>
+ <para>
+ The <filename>pch</filename> example in Boost.Build distribution can be
+ used as reference.
+ </para>
+
+ <para>
+ Please note the following:
+ </para>
+
       <itemizedlist>
- <listitem><para>The inclusion of the precompiled header must be the
- first thing in a source file, before any code or preprocessor directives.
+ <listitem><para>
+ The inclusion of the precompiled header must be the first thing in a
+ source file, before any code or preprocessor directives.
+ </para></listitem>
+
+ <listitem><para>
+ The build properties used to compile the source files and the
+ precompiled header must be the same. Consider using project
+ requirements to assure this.
         </para></listitem>
 
- <listitem><para>The build properties used to compile the source files
- and the precompiled header must be the same. Consider using
- project requirements to assure this.
+ <listitem><para>
+ Precompiled headers must be used purely as a way to improve
+ compilation time, not to save the number of <code>#include</code>
+ statements. If a source file needs to include some header, explicitly
+ include it in the source file, even if the same header is included
+ from the precompiled header. This makes sure that your project will
+ build even if precompiled headers are not supported.
         </para></listitem>
 
- <listitem><para>Precompiled headers must be used purely as a way to
- improve compilation time, not to save the number of <code>#include</code>
- statements. If a source file needs to include some header, explicitly include
- it in the source file, even if the same header is included from
- the precompiled header. This makes sure that your project will build
- even if precompiled headers are not supported.</para></listitem>
-
- <listitem><para>On the gcc compiler, the name of the header being
- precompiled must be equal to the name of the <code>cpp-pch</code>
- target. This is gcc requirement.</para></listitem>
-
- <listitem><para>Prior to version 4.2, the gcc compiler did not
- handle anonymous namespaces in precompiled headers, which
- limit their utility. See the <ulink url="http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29085">bug
- report</ulink> for details.</para></listitem>
-
+ <listitem><para>
+ On the gcc compiler, the name of the header being precompiled must be
+ equal to the name of the <code>cpp-pch</code> target. This is a gcc
+ requirement.
+ </para></listitem>
+
+ <listitem><para>
+ Prior to version 4.2, the gcc compiler did not allow anonymous
+ namespaces in precompiled headers, which limits their utility. See the
+ <ulink url="http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29085">bug
+ report</ulink> for details.
+ </para></listitem>
       </itemizedlist>
-
-
     </section>
 
-
     <section id="bbv2.reference.generated_headers">
       <title>Generated headers</title>
 
@@ -625,7 +660,7 @@
         automatically. For example, for C++ files, all <literal>#include</literal>
         statements are found and handled. The only aspect where user help
         might be needed is implicit dependency on generated files.</para>
-
+
       <para>By default, Boost.Build handles such dependencies within one
         main target. For example, assume that main target "app" has two
         sources, "app.cpp" and "parser.y". The latter source is converted
@@ -634,13 +669,13 @@
         since "parser.h" will be generated into a build directory, the
         path to that directory will automatically added to include
         path.</para>
-
+
       <para>Making this mechanism work across main target boundaries is
         possible, but imposes certain overhead. For that reason, if
         there's implicit dependency on files from other main targets, the
         <literal>&lt;implicit-dependency&gt;</literal> [ link ] feature must
         be used, for example:</para>
-
+
 <programlisting>
 lib parser : parser.y ;
 exe app : app.cpp : &lt;implicit-dependency&gt;parser ;
@@ -652,14 +687,14 @@
         targets from "parser" as potential dependencies.
       </para>
 </section>
-
+
 </chapter>
 
 
 <!--
      Local Variables:
      mode: xml
- sgml-indent-data: t
+ sgml-indent-data: t
      sgml-parent-document: ("userman.xml" "chapter")
      sgml-set-face: t
      End:

Modified: branches/CMake/release/tools/build/v2/doc/src/tutorial.xml
==============================================================================
--- branches/CMake/release/tools/build/v2/doc/src/tutorial.xml (original)
+++ branches/CMake/release/tools/build/v2/doc/src/tutorial.xml 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,74 +16,70 @@
     sections.
 -->
 
- <para>This section will guide you though the most basic features of
- Boost.Build V2. We will start with the &#x201C;Hello, world&#x201D; example,
- learn how to use libraries, and finish with testing and installing features.
+ <para>
+ This section will guide you though the most basic features of Boost.Build
+ V2. We will start with the &#x201C;Hello, world&#x201D; example, learn how
+ to use libraries, and finish with testing and installing features.
   </para>
 
   <section id="bbv2.tutorial.hello">
     <title>Hello, world</title>
 
- <para>The simplest project that Boost.Build can construct is
- stored in <filename>example/hello/</filename> directory. The
- project is described by a file
- called <filename>Jamroot</filename> that contains:
+ <para>
+ The simplest project that Boost.Build can construct is stored in
+ <filename>example/hello/</filename> directory. The project is described by
+ a file called <filename>Jamroot</filename> that contains:
 
 <programlisting>
 exe hello : hello.cpp ;
 </programlisting>
 
- Even with this simple setup, you can do some interesting
- things. First of all, just invoking <command>bjam</command> will
- build the <filename>hello</filename>
- executable by compiling and
- linking <filename>hello.cpp</filename>. By default, debug variant
- is built. Now, to build the
- release variant of <filename>hello</filename>, invoke
+ Even with this simple setup, you can do some interesting things. First of
+ all, just invoking <command>bjam</command> will build the <filename>hello
+ </filename> executable by compiling and linking <filename>hello.cpp
+ </filename>. By default, debug variant is built. Now, to build the release
+ variant of <filename>hello</filename>, invoke
 
 <screen>
 bjam release
 </screen>
 
- Note that debug and release variants are created in different
- directories, so you can switch between variants or even build
- multiple variants at once, without any unnecessary
- recompilation. Let's extend the example by adding another line
- to our project's <filename>Jamroot</filename>:
+ Note that debug and release variants are created in different directories,
+ so you can switch between variants or even build multiple variants at
+ once, without any unnecessary recompilation. Let us extend the example by
+ adding another line to our project's <filename>Jamroot</filename>:
 
 <programlisting>
 exe hello2 : hello.cpp ;
 </programlisting>
 
- Now let us build both the debug and release variants of our project
- again:
+ Now let us build both the debug and release variants of our project again:
 
 <screen>
 bjam debug release
 </screen>
 
- Note that two variants of <filename>hello2</filename> are linked.
- Since we have already built both variants
- of <filename>hello</filename>, hello.cpp won't be recompiled;
- instead the existing object files will just be linked into the
- corresponding variants of <filename>hello2</filename>. Now
- let's remove all the built products:
+ Note that two variants of <filename>hello2</filename> are linked. Since we
+ have already built both variants of <filename>hello</filename>, hello.cpp
+ will not be recompiled; instead the existing object files will just be
+ linked into the corresponding variants of <filename>hello2</filename>. Now
+ let us remove all the built products:
 
 <screen>
 bjam --clean debug release
 </screen>
 
- It's also possible to build or clean specific targets. The
- following two commands, respectively, build or clean only the
- debug version of <filename>hello2</filename>.
+ It is also possible to build or clean specific targets. The following two
+ commands, respectively, build or clean only the debug version of
+ <filename>hello2</filename>.
 
 <screen>
 bjam hello2
 bjam --clean hello2
 </screen>
     </para>
-
   </section>
+
   <section id="bbv2.tutorial.properties">
     <title>Properties</title>
 
@@ -97,125 +93,125 @@
       value) pair. When a user initiates a build, Boost.Build
       automatically translates the requested properties into appropriate
       command-line flags for invoking toolset components like compilers
- and linkers.</para>
+ and linkers.
+ </para>
 
- <para>There are many built-in features that can be combined to
+ <para>
+ There are many built-in features that can be combined to
       produce arbitrary build configurations. The following command
       builds the project's <code>release</code> variant with inlining
       disabled and debug symbols enabled:
-
 <screen>
 bjam release inlining=off debug-symbols=on
 </screen>
-</para>
+ </para>
 
- <para>Properties on the command-line are specified with the syntax:
+ <para>
+ Properties on the command-line are specified with the syntax:
 
 <screen>
 <replaceable>feature-name</replaceable>=<replaceable>feature-value</replaceable>
 </screen>
-</para>
+ </para>
 
- <para>The <option>release</option> and <option>debug</option> that we've seen
- in <command>bjam</command> invocations are just a shorthand way to
- specify values of the <varname>variant</varname> feature. For example, the command
- above could also have been written this way:
+ <para>
+ The <option>release</option> and <option>debug</option> that we have seen
+ in <command>bjam</command> invocations are just a shorthand way to specify
+ values of the <varname>variant</varname> feature. For example, the
+ command above could also have been written this way:
 
       <screen>
 bjam variant=release inlining=off debug-symbols=on
       </screen>
     </para>
 
- <para> <varname>variant</varname> is so commonly-used that it has
- been given special status as an <firstterm>implicit</firstterm>
- feature&#x2014;Boost.Build will deduce the its identity just
- from the name of one of its values.
+ <para>
+ <varname>variant</varname> is so commonly-used that it has been given
+ special status as an <firstterm>implicit</firstterm> feature&#x2014;
+ Boost.Build will deduce the its identity just from the name of one of its
+ values.
     </para>
 
     <para>
       A complete description of features can be found in <xref linkend="bbv2.reference.features"/>.
     </para>
 
-
     <section id="bbv2.tutorial.properties.requirements">
       <title>Build Requests and Target Requirements</title>
 
- <para>
+ <para>
         The set of properties specified on the command line constitute
         a <firstterm>build request</firstterm>&#x2014;a description of
         the desired properties for building the requested targets (or,
         if no targets were explicitly requested, the project in the
- current directory). The <emphasis>actual</emphasis>
+ current directory). The <emphasis>actual</emphasis>
         properties used for building targets are typically a
         combination of the build request and properties derived from
         the project's <filename>Jamroot</filename> (and its other
         Jamfiles, as described in <xref
- linkend="bbv2.tutorial.hierarchy"/>). For example, the
+ linkend="bbv2.tutorial.hierarchy"/>). For example, the
         locations of <code>#include</code>d header files are normally
         not specified on the command-line, but described in
         Jamfiles as <firstterm>target
         requirements</firstterm> and automatically combined with the
- build request for those targets. Multithread-enabled
+ build request for those targets. Multithread-enabled
         compilation is another example of a typical target
- requirement. The Jamfile fragment below
+ requirement. The Jamfile fragment below
         illustrates how these requirements might be specified.
       </para>
 
 <programlisting>
-exe hello
+exe hello
     : hello.cpp
     : &lt;include&gt;boost &lt;threading&gt;multi
     ;
 </programlisting>
 
- <para>
- When <filename>hello</filename> is built, the two
- requirements specified above will always be present.
- If the build request given on the <command>bjam</command>
- command-line explictly contradicts a target's requirements,
- the target requirements usually override (or, in the case of
- &#x201C;free&rdquo;&#x201D; features like
+ <para>
+ When <filename>hello</filename> is built, the two requirements specified
+ above will always be present. If the build request given on the
+ <command>bjam</command> command-line explictly contradicts a target's
+ requirements, the target requirements usually override (or, in the case
+ of &#x201C;free&rdquo;&#x201D; features like
         <varname>&lt;include&gt;</varname>,
         <footnote>
-<para>
-See <xref linkend="bbv2.reference.features.attributes"/>
-</para></footnote>
+ <para>
+ See <xref linkend="bbv2.reference.features.attributes"/>
+ </para>
+ </footnote>
         augments) the build request.
-
       </para>
 
       <tip>
- <para>The value of the <varname>&lt;include&gt;</varname> feature is
- relative to the location of <filename>Jamroot</filename> where it's
- used.
+ <para>
+ The value of the <varname>&lt;include&gt;</varname> feature is
+ relative to the location of <filename>Jamroot</filename> where it is
+ used.
         </para>
       </tip>
-
     </section>
+
     <section id="bbv2.tutorial.properties.project_attributes">
       <title>Project Attributes</title>
 
       <para>
- If we want the same requirements for our other
- target, <filename>hello2</filename>, we could simply duplicate
- them. However, as projects grow, that approach leads to a great
- deal of repeated boilerplate in Jamfiles.
-
- Fortunately, there's a better way. Each project can specify a
- set of <firstterm>attributes</firstterm>, including
- requirements:
+ If we want the same requirements for our other target, <filename>hello2
+ </filename>, we could simply duplicate them. However, as projects grow,
+ that approach leads to a great deal of repeated boilerplate in Jamfiles.
+
+ Fortunately, there's a better way. Each project can specify a set of
+ <firstterm>attributes</firstterm>, including requirements:
 
 <programlisting>
-project
- : requirements &lt;include&gt;/home/ghost/Work/boost &lt;threading&gt;multi
+project
+ : requirements &lt;include&gt;/home/ghost/Work/boost &lt;threading&gt;multi
     ;
 
 exe hello : hello.cpp ;
-exe hello2 : hello.cpp ;
-</programlisting>
+exe hello2 : hello.cpp ;</programlisting>
 
- The effect would be as if we specified the same requirement for
- both <filename>hello</filename> and <filename>hello2</filename>.
+ The effect would be as if we specified the same requirement for both
+ <filename>hello</filename> and <filename>hello2</filename>.
       </para>
     </section>
   </section>
@@ -223,20 +219,19 @@
   <section id="bbv2.tutorial.hierarchy">
     <title>Project Hierarchies</title>
 
- <para>So far we've only considered examples with one project
- &#x2014;a. with one user-written Boost.Jam file,
- <filename>Jamroot</filename>). A typical large codebase would be
- composed of many projects organized into a tree. The top of the
- tree is called the <firstterm>project root</firstterm>. Every
- subproject is defined by a file called
- <filename>Jamfile</filename> in a descendant directory of the
- project root. The parent project of a subproject is defined by
- the nearest <filename>Jamfile</filename> or
- <filename>Jamroot</filename> file in an ancestor directory. For
- example, in the following directory layout:
+ <para>
+ So far we have only considered examples with one project &#x2014;a. with
+ one user-written Boost.Jam file, <filename>Jamroot</filename>). A typical
+ large codebase would be composed of many projects organized into a tree.
+ The top of the tree is called the <firstterm>project root</firstterm>.
+ Every subproject is defined by a file called <filename>Jamfile</filename>
+ in a descendant directory of the project root. The parent project of a
+ subproject is defined by the nearest <filename>Jamfile</filename> or
+ <filename>Jamroot</filename> file in an ancestor directory. For example,
+ in the following directory layout:
 
 <screen>
-top/
+top/
   |
   +-- Jamroot
   |
@@ -244,7 +239,7 @@
   | |
   | +-- Jamfile
   | `-- app.cpp
- |
+ |
   `-- util/
        |
        +-- foo/
@@ -253,10 +248,9 @@
        . `-- bar.cpp
 </screen>
 
- the project root is <filename>top/</filename>. The projects in
- <filename>top/app/</filename> and
- <filename>top/util/foo/</filename> are immediate children of the
- root project.
+ the project root is <filename>top/</filename>. The projects in
+ <filename>top/app/</filename> and <filename>top/util/foo/</filename> are
+ immediate children of the root project.
 
       <note>
         <para>
@@ -274,7 +268,7 @@
     <para>
       Projects inherit all attributes (such as requirements)
       from their parents. Inherited requirements are combined with
- any requirements specified by the subproject.
+ any requirements specified by the subproject.
       For example, if <filename>top/Jamroot</filename> has
 
 <programlisting>
@@ -289,8 +283,8 @@
       rather than added-to, in subprojects. See <xref
       linkend="bbv2.reference.features.attributes"/> for more
       information</para>
- </footnote>
- More details can be found in
+ </footnote>
+ More details can be found in
       <xref linkend= "bbv2.advanced.projects"/>.
     </para>
 
@@ -346,7 +340,7 @@
       While <code>app.cpp</code> refers to a regular source file,
       <code>../util/foo//bar</code> is a reference to another target:
       a library <filename>bar</filename> declared in the Jamfile at
- <filename>../util/foo</filename>.
+ <filename>../util/foo</filename>.
     </para>
 
     <tip>
@@ -372,241 +366,223 @@
     </para>
 
 
- <para>Let's improve this project further.
- The library
- probably has some headers that must be used when compiling
- <filename>app.cpp</filename>. We could manually add the necessary
- <code>#include</code> paths to <filename>app</filename>'s
- requirements as values of the
- <varname>&lt;include&gt;</varname> feature, but then this work will
- be repeated for all programs
+ <para>
+ Let's improve this project further. The library probably has some headers
+ that must be used when compiling <filename>app.cpp</filename>. We could
+ manually add the necessary <code>#include</code> paths to <filename>app
+ </filename>'s requirements as values of the <varname>&lt;include&gt;
+ </varname> feature, but then this work will be repeated for all programs
       that use <filename>foo</filename>. A better solution is to modify
       <filename>util/foo/Jamfile</filename> in this way:
 
-<programlisting>
-project
+ <programlisting>
+project
     : usage-requirements &lt;include&gt;.
     ;
 
-lib foo : foo.cpp ;
-</programlisting>
+lib foo : foo.cpp ;</programlisting>
 
- Usage requirements are applied not to the target being declared
- but to its
- dependents. In this case, <literal>&lt;include&gt;.</literal> will be applied to all
- targets that directly depend on <filename>foo</filename>.
- </para>
-
- <para>Another improvement is using symbolic identifiers to refer to
- the library, as opposed to <filename>Jamfile</filename> location.
- In a large project, a library can be used by many targets, and if
- they all use <filename>Jamfile</filename> location,
- a change in directory organization entails much work.
- The solution is to use project ids&#x2014;symbolic names
- not tied to directory layout. First, we need to assign a project id by
- adding this code to
- <filename>Jamroot</filename>:</para>
- <programlisting>
-use-project /library-example/foo : util/foo ;
- </programlisting>
- <para>Second, we modify <filename>app/Jamfile</filename> to use the
- project id:
+ Usage requirements are applied not to the target being declared but to its
+ dependants. In this case, <literal>&lt;include&gt;.</literal> will be
+ applied to all targets that directly depend on <filename>foo</filename>.
+ </para>
 
-<programlisting>
-exe app : app.cpp /library-example/foo//bar ;
-</programlisting>
-The <filename>/library-example/foo//bar</filename> syntax is used
- to refer to the target <filename>bar</filename> in
- the project with id <filename>/library-example/foo</filename>.
- We've achieved our goal&#x2014;if the library is moved to a different
- directory, only <filename>Jamroot</filename> must be modified.
- Note that project ids are global&#x2014;two Jamfiles are not
- allowed to assign the same project id to different directories.
-
+ <para>
+ Another improvement is using symbolic identifiers to refer to the library,
+ as opposed to <filename>Jamfile</filename> location. In a large project, a
+ library can be used by many targets, and if they all use <filename>Jamfile
+ </filename> location, a change in directory organization entails much
+ work. The solution is to use project ids&#x2014;symbolic names not tied to
+ directory layout. First, we need to assign a project id by adding this
+ code to <filename>Jamroot</filename>:
+ </para>
+
+ <programlisting>
+use-project /library-example/foo : util/foo ;</programlisting>
+
+ <para>
+ Second, we modify <filename>app/Jamfile</filename> to use the project id:
+ <programlisting>
+exe app : app.cpp /library-example/foo//bar ;</programlisting>
+
+ The <filename>/library-example/foo//bar</filename> syntax is used to refer
+ to the target <filename>bar</filename> in the project with id <filename>
+ /library-example/foo</filename>. We've achieved our goal&#x2014;if the
+ library is moved to a different directory, only <filename>Jamroot
+ </filename> must be modified. Note that project ids are global&#x2014;two
+ Jamfiles are not allowed to assign the same project id to different
+ directories.
     </para>
 
     <tip>
- <para>If you want all applications in some project to link
- to a certain library, you can avoid having to specify it directly the sources of every
- target by using the
- <varname>&lt;library&gt;</varname> property. For example, if <filename>/boost/filesystem//fs</filename>
- should be linked to all applications in your project, you can add
- <code>&lt;library&gt;/boost/filesystem//fs</code> to the project's requirements, like this:</para>
+ <para>If you want all applications in some project to link to a certain
+ library, you can avoid having to specify it directly the sources of
+ every target by using the <varname>&lt;library&gt;</varname> property.
+ For example, if <filename>/boost/filesystem//fs</filename> should be
+ linked to all applications in your project, you can add
+ <code>&lt;library&gt;/boost/filesystem//fs</code> to the project's
+ requirements, like this:
+ </para>
 
       <programlisting>
-project
+project
    : requirements &lt;source&gt;/boost/filesystem//fs
- ;
- </programlisting>
+ ;</programlisting>
     </tip>
-
   </section>
 
   <section id="bbv2.tutorial.testing">
     <title>Testing</title>
-
-
   </section>
 
   <section id="bbv2.tutorial.linkage">
     <title>Static and shared libaries</title>
 
- <para>Libraries can be either
- <emphasis>static</emphasis>, which means they are included in executable
- files that use them, or <emphasis>shared</emphasis> (a.k.a.
- <emphasis>dynamic</emphasis>), which are only referred to from executables,
- and must be available at run time. Boost.Build can create and use both kinds.
- </para>
-
- <para>The kind of library produced from a <code>lib</code> target is
- determined by the value of the <varname>link</varname> feature. Default
- value is <literal>shared</literal>, and to build static library, the value
- should be <literal>static</literal>. You can either requiest static build
- on the command line:
- <screen>
-bjam link=static
- </screen>
- or in the library's requirements:
- <programlisting>
-lib l : l.cpp : &lt;link&gt;static ;
- </programlisting>
+ <para>
+ Libraries can be either <emphasis>static</emphasis>, which means they are
+ included in executable files that use them, or <emphasis>shared</emphasis>
+ (a.k.a. <emphasis>dynamic</emphasis>), which are only referred to from
+ executables, and must be available at run time. Boost.Build can create and
+ use both kinds.
     </para>
 
     <para>
- We can also use the <varname>&lt;link&gt;</varname> property
- to express linking requirements on a per-target basis.
- For example, if a particular executable can be correctly built
- only with the static version of a library, we can qualify the
- executable's <link
- linkend="bbv2.reference.targets.references">target
- reference</link> to the library as follows:
-
-<!-- There has been no earlier indication that target references can
- contain properties. You can't assume that the reader will
- recognize that strange incantation as a target reference, or that
- she'll know what it means. You also can't assume that hyperlinks
- will help the reader, because she may be working from a printout,
- as I was.
- VP: to be addressed when this section is moved. See comment
- below.
+ The kind of library produced from a <code>lib</code> target is determined
+ by the value of the <varname>link</varname> feature. Default value is
+ <literal>shared</literal>, and to build a static library, the value should
+ be <literal>static</literal>. You can request a static build either on the
+ command line:
+ <programlisting>bjam link=static</programlisting>
+ or in the library's requirements:
+ <programlisting>lib l : l.cpp : &lt;link&gt;static ;</programlisting>
+ </para>
+
+ <para>
+ We can also use the <varname>&lt;link&gt;</varname> property to express
+ linking requirements on a per-target basis. For example, if a particular
+ executable can be correctly built only with the static version of a
+ library, we can qualify the executable's <link
+ linkend="bbv2.reference.targets.references">target reference</link> to the
+ library as follows:
+
+<!-- There has been no earlier indication that target references can contain
+ properties. You can't assume that the reader will recognize that strange
+ incantation as a target reference, or that she'll know what it means. You
+ also can't assume that hyperlinks will help the reader, because she may be
+ working from a printout, as I was.
+ VP: to be addressed when this section is moved. See comment below.
 -->
 
- <programlisting>
+ <programlisting>
 exe important : main.cpp helpers/&lt;link&gt;static ;</programlisting>
 
- No matter what arguments are specified on the <command>bjam</command>
- command line, <filename>important</filename> will only be linked with
- the static version of <filename>helpers</filename>.
+ No matter what arguments are specified on the <command>bjam</command>
+ command line, <filename>important</filename> will only be linked with the
+ static version of <filename>helpers</filename>.
     </para>
 
- <para>
- Specifying properties in target references is especially useful if you
- use a library defined in some other project (one you can't
- change) but you still want static (or dynamic) linking to that library
- in all cases. If that library is used by many targets,
- you <emphasis>could</emphasis> use target references
- everywhere:
+ <para>
+ Specifying properties in target references is especially useful if you use
+ a library defined in some other project (one you can't change) but you
+ still want static (or dynamic) linking to that library in all cases. If
+ that library is used by many targets, you <emphasis>could</emphasis> use
+ target references everywhere:
 
- <programlisting>
+ <programlisting>
 exe e1 : e1.cpp /other_project//bar/&lt;link&gt;static ;
 exe e10 : e10.cpp /other_project//bar/&lt;link&gt;static ;</programlisting>
 
- but that's far from being convenient. A better approach is
- to introduce a level of indirection. Create a local
- <type>alias</type> target that refers to the static (or
- dynamic) version of <filename>foo</filename>:
+ but that's far from being convenient. A better approach is to introduce a
+ level of indirection. Create a local <type>alias</type> target that refers
+ to the static (or dynamic) version of <filename>foo</filename>:
 
- <programlisting>
+ <programlisting>
 alias foo : /other_project//bar/&lt;link&gt;static ;
 exe e1 : e1.cpp foo ;
 exe e10 : e10.cpp foo ;</programlisting>
 
- The <link linkend="bbv2.tasks.alias"><functionname>alias</functionname></link>
- rule is specifically used to rename a reference to a target and possibly
- change the properties.
-
- <!-- You should introduce the alias rule in an earlier
- section, before describing how it applies to this
- specific use-case, and the foregoing sentence should
- go there.
- VP: we've agreed that this section should be moved further
- in the docs, since it's more like advanced reading. When
- I'll move it, I'll make sure 'alias' is already mentioned.
- -->
- </para>
+ The <link linkend="bbv2.tasks.alias"><functionname>alias</functionname>
+ </link> rule is specifically used to rename a reference to a target and
+ possibly change the properties.
+
+ <!-- You should introduce the alias rule in an earlier section, before
+ describing how it applies to this specific use-case, and the
+ foregoing sentence should go there.
+ VP: we've agreed that this section should be moved further in the
+ docs, since it's more like advanced reading. When I move it, I'll
+ make sure 'alias' is already mentioned.
+ -->
+ </para>
 
- <tip>
- <para>
- When one library uses another, you put the second library in
- the source list of the first. For example:
- <programlisting>
-lib utils : utils.cpp /boost/filesystem//fs ;
+ <tip>
+ <para>
+ When one library uses another, you put the second library in the source
+ list of the first. For example:
+ <programlisting>
+lib utils : utils.cpp /boost/filesystem//fs ;
 lib core : core.cpp utils ;
 exe app : app.cpp core ;</programlisting>
- This works no matter what kind of linking is used. When
- <filename>core</filename> is built as a shared library, it is linked
- directly into <filename>utils</filename>. Static libraries can't
- link to other libraries, so when <filename>core</filename> is built
- as a static library, its dependency on <filename>utils</filename> is passed along to
- <filename>core</filename>'s dependents, causing
- <filename>app</filename> to be linked with both
- <filename>core</filename> and <filename>utils</filename>.
- </para>
- </tip>
+ This works no matter what kind of linking is used. When <filename>core
+ </filename> is built as a shared library, it is linked directly into
+ <filename>utils</filename>. Static libraries can't link to other
+ libraries, so when <filename>core</filename> is built as a static
+ library, its dependency on <filename>utils</filename> is passed along to
+ <filename>core</filename>'s dependents, causing <filename>app</filename>
+ to be linked with both <filename>core</filename> and <filename>utils
+ </filename>.
+ </para>
+ </tip>
 
- <note>
- <para>(Note for non-UNIX system). Typically, shared libraries must be
- installed to a directory in the dynamic linker's search
- path. Otherwise, applications that use shared libraries can't be
- started. On Windows, the dynamic linker's search path is given by the
- <envar>PATH</envar> environment variable. This restriction is lifted
- when you use Boost.Build testing facilities&#x2014;the
- <envar>PATH</envar> variable will be automatically adjusted before
- running executable.
+ <note>
+ <para>
+ (Note for non-UNIX system). Typically, shared libraries must be
+ installed to a directory in the dynamic linker's search path. Otherwise,
+ applications that use shared libraries can't be started. On Windows, the
+ dynamic linker's search path is given by the <envar>PATH</envar>
+ environment variable. This restriction is lifted when you use
+ Boost.Build testing facilities&#x2014;the <envar>PATH</envar> variable
+ will be automatically adjusted before running the executable.
         <!-- Need ref here to 'testing facilities' -->
- </para>
- </note>
-
+ </para>
+ </note>
   </section>
 
   <section id="bbv2.tutorial.conditions">
     <title>Conditions and alternatives</title>
 
- <para>Sometimes, particular relationships need to be maintained
- among a target's build properties. For example, you might want to set
- specific <code>#define</code> when a library is built as shared,
- or when a target's <code>release</code> variant is built.
- This can be achieved with <firstterm>conditional requirements</firstterm>.
+ <para>
+ Sometimes, particular relationships need to be maintained among a target's
+ build properties. For example, you might want to set specific <code>
+ #define</code> when a library is built as shared, or when a target's
+ <code>release</code> variant is built. This can be achieved using
+ <firstterm>conditional requirements</firstterm>.
 
- <programlisting>
-lib network : network.cpp
+ <programlisting>
+lib network : network.cpp
     : <emphasis role="bold">&lt;link&gt;shared:&lt;define&gt;NEWORK_LIB_SHARED</emphasis>
      &lt;variant&gt;release:&lt;define&gt;EXTRA_FAST
- ;
-</programlisting>
+ ;</programlisting>
 
- In the example above, whenever <filename>network</filename> is
- built with <code>&lt;link&gt;shared</code>,
- <code>&lt;define&gt;NEWORK_LIB_SHARED</code> will be in its
- properties, too. Also, whenever its release variant is built,
- <code>&lt;define&gt;EXTRA_FAST</code> will appear in its properties.
+ In the example above, whenever <filename>network</filename> is built with
+ <code>&lt;link&gt;shared</code>, <code>&lt;define&gt;NEWORK_LIB_SHARED
+ </code> will be in its properties, too. Also, whenever its release variant
+ is built, <code>&lt;define&gt;EXTRA_FAST</code> will appear in its
+ properties.
     </para>
 
     <para>
- Sometimes the ways a target is built are so different that
- describing them using conditional requirements would be
- hard. For example, imagine that a library actually uses
- different source files depending on the toolset used to build
- it. We can express this situation using <firstterm>target
+ Sometimes the ways a target is built are so different that describing them
+ using conditional requirements would be hard. For example, imagine that a
+ library actually uses different source files depending on the toolset used
+ to build it. We can express this situation using <firstterm>target
       alternatives</firstterm>:
-<programlisting>
+ <programlisting>
 lib demangler : dummy_demangler.cpp ; # alternative 1
 lib demangler : demangler_gcc.cpp : &lt;toolset&gt;gcc ; # alternative 2
-lib demangler : demangler_msvc.cpp : &lt;toolset&gt;msvc ; # alternative 3
-</programlisting>
+lib demangler : demangler_msvc.cpp : &lt;toolset&gt;msvc ; # alternative 3</programlisting>
       When building <filename>demangler</filename>, Boost.Build will compare
       requirements for each alternative with build properties to find the best
- match. For example, when building with <code>&lt;toolset&gt;gcc</code>
+ match. For example, when building with <code>&lt;toolset&gt;gcc</code>
       alternative 2, will be selected, and when building with
       <code>&lt;toolset&gt;msvc</code> alternative 3 will be selected. In all
       other cases, the most generic alternative 1 will be built.
@@ -622,77 +598,71 @@
       <varname>file</varname> property. Target alternatives can be used to
       associate multiple library files with a single conceptual target. For
       example:
-<programlisting>
+ <programlisting>
 # util/lib2/Jamfile
 lib lib2
- :
+ :
     : &lt;file&gt;lib2_release.a &lt;variant&gt;release
     ;
 
 lib lib2
- :
+ :
     : &lt;file&gt;lib2_debug.a &lt;variant&gt;debug
- ;
-</programlisting>
+ ;</programlisting>
 
       This example defines two alternatives for <filename>lib2</filename>, and
       for each one names a prebuilt file. Naturally, there are no sources.
       Instead, the <varname>&lt;file&gt;</varname> feature is used to specify
       the file name.
     </para>
- <para>
- Once a prebuilt target has been declared, it can be used just like any other target:
 
-<programlisting>
-exe app : app.cpp ../util/lib2//lib2 ;
-</programlisting>
+ <para>
+ Once a prebuilt target has been declared, it can be used just like any
+ other target:
 
- As with any target, the alternative selected depends on the
- properties propagated from <filename>lib2</filename>'s dependents.
- If we build the the release and debug versions of <filename>app</filename> will be linked
- with <filename>lib2_release.a</filename> and <filename>lib2_debug.a</filename>, respectively.
+ <programlisting>
+exe app : app.cpp ../util/lib2//lib2 ;</programlisting>
 
+ As with any target, the alternative selected depends on the properties
+ propagated from <filename>lib2</filename>'s dependants. If we build the
+ release and debug versions of <filename>app</filename> will be linked
+ with <filename>lib2_release.a</filename> and <filename>lib2_debug.a
+ </filename>, respectively.
     </para>
 
     <para>
- System libraries&#x2014;those that are automatically found by
- the toolset by searching through some set of predetermined
- paths&#x2014;should be declared almost like regular ones:
+ System libraries&#x2014;those that are automatically found by the toolset
+ by searching through some set of predetermined paths&#x2014;should be
+ declared almost like regular ones:
 
-<programlisting>
-lib pythonlib : : &lt;name&gt;python22 ;
-</programlisting>
+ <programlisting>
+lib pythonlib : : &lt;name&gt;python22 ;</programlisting>
 
- We again don't specify any sources, but give a
- <varname>name</varname> that should be passed to the
- compiler. If the gcc toolset were used to link an executable
- target to <filename>pythonlib</filename>, <option>-lpython22</option>
- would appear in the command line (other compilers may use
- different options).
+ We again don't specify any sources, but give a <varname>name</varname>
+ that should be passed to the compiler. If the gcc toolset were used to
+ link an executable target to <filename>pythonlib</filename>,
+ <option>-lpython22</option> would appear in the command line (other
+ compilers may use different options).
     </para>
 
     <para>
       We can also specify where the toolset should look for the library:
 
-<programlisting>
-lib pythonlib : : &lt;name&gt;python22 &lt;search&gt;/opt/lib ;
-</programlisting>
+ <programlisting>
+lib pythonlib : : &lt;name&gt;python22 &lt;search&gt;/opt/lib ;</programlisting>
 
       And, of course, target alternatives can be used in the usual way:
 
-<programlisting>
+ <programlisting>
 lib pythonlib : : &lt;name&gt;python22 &lt;variant&gt;release ;
-lib pythonlib : : &lt;name&gt;python22_d &lt;variant&gt;debug ;
-</programlisting>
-
+lib pythonlib : : &lt;name&gt;python22_d &lt;variant&gt;debug ;</programlisting>
     </para>
 
- <para>A more advanced use of prebuilt targets is described in <xref
- linkend="bbv2.recipies.site-config"/>.
+ <para>
+ A more advanced use of prebuilt targets is described in <xref linkend=
+ "bbv2.recipies.site-config"/>.
     </para>
-
   </section>
-
 </chapter>
 
 <!--

Modified: branches/CMake/release/tools/build/v2/index.html
==============================================================================
--- branches/CMake/release/tools/build/v2/index.html (original)
+++ branches/CMake/release/tools/build/v2/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -112,7 +112,7 @@
 
       <li><b>Standalone</b>. Boost.Build's only dependency is a C compiler,
       so it's easy to setup. You can even include all of Boost.Build in your
- project. Boost.Build does not use depend on C++ Boost in any way.</li>
+ project. Boost.Build does not depend on C++ Boost in any way.</li>
     </ul>
 
     <h2>Status and future</h2>

Modified: branches/CMake/release/tools/build/v2/kernel/bootstrap.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/kernel/bootstrap.jam (original)
+++ branches/CMake/release/tools/build/v2/kernel/bootstrap.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -94,12 +94,8 @@
       util # low-level substrate: string/number handling, etc.
       build # essential elements of the build system architecture
       tools # toolsets for handling specific build jobs and targets.
-
- new # until we get everything sorted out, there is
- # still some code here
-
+ contrib # user contributed (unreviewed) modules
       . # build-system.jam lives here
-
       ;
     local whereami = [ NORMALIZE_PATH $(.bootstrap-file:DT) ] ;
     BOOST_BUILD_PATH += $(whereami:D)/$(subdirs) ;

Modified: branches/CMake/release/tools/build/v2/kernel/class.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/kernel/class.jam (original)
+++ branches/CMake/release/tools/build/v2/kernel/class.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,16 +1,16 @@
-# Copyright 2001, 2002, 2003 Dave Abrahams
-# Copyright 2002, 2005 Rene Rivera
-# Copyright 2002, 2003 Vladimir Prus
-# Distributed under the Boost Software License, Version 1.0.
-# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+# Copyright 2001, 2002, 2003 Dave Abrahams
+# Copyright 2002, 2005 Rene Rivera
+# Copyright 2002, 2003 Vladimir Prus
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
 # Polymorphic class system built on top of core Jam facilities.
 #
 # Classes are defined by 'class' keywords::
 #
-# class myclass ( arg1 )
+# class myclass
 # {
-# rule __init__ ( ) # constructor
+# rule __init__ ( arg1 ) # constructor
 # {
 # self.attribute = $(arg1) ;
 # }
@@ -28,14 +28,14 @@
 #
 # The __init__ rule is the constructor, and sets member variables.
 #
-# New instances are created by invoking [ new <class> <args...> ]::
+# New instances are created by invoking [ new <class> <args...> ]:
 #
 # local x = [ new myclass foo ] ; # x is a new myclass object
 # assert.result foo : [ $(x).method1 ] ; # $(x).method1 returns "foo"
 #
 # Derived class are created by mentioning base classes in the declaration::
 #
-# class derived : myclass
+# class derived : myclass
 # {
 # rule __init__ ( arg )
 # {
@@ -49,26 +49,21 @@
 # }
 # }
 #
-# All methods operate virtually, replacing behavior in the base
-# classes. For example::
+# All methods operate virtually, replacing behavior in the base classes. For
+# example::
 #
-# local y = [ new derived foo ] ; # y is a new derived object
-# assert.result fooXXX : [ $(y).method1 ] ; # $(y).method1 returns "foo"
+# local y = [ new derived foo ] ; # y is a new derived object
+# assert.result fooXXX : [ $(y).method1 ] ; # $(y).method1 returns "foo"
 #
-# Each class instance is its own core Jam module. All instance
-# attributes and methods are accessible without additional
-# qualification from within the class instance. All rules imported in
-# class declaration, or visible in base classses are also visible.
-# Base methods are available in qualified form: base-name.method-name.
-# By convention, attribute names are prefixed with "self.".
+# Each class instance is its own core Jam module. All instance attributes and
+# methods are accessible without additional qualification from within the class
+# instance. All rules imported in class declaration, or visible in base classses
+# are also visible. Base methods are available in qualified form:
+# base-name.method-name. By convention, attribute names are prefixed with
+# "self.".
 
-import numbers ;
-import errors : * ;
-import set ;
 import modules ;
-import assert ;
-
-classes = ;
+import numbers ;
 
 
 rule xinit ( instance : class )
@@ -77,7 +72,7 @@
     {
         __class__ = $(2) ;
         __name__ = $(1) ;
- }
+ }
 }
 
 
@@ -85,16 +80,16 @@
 {
     .next-instance ?= 1 ;
     local id = object($(class))@$(.next-instance) ;
-
+
     xinit $(id) : $(class) ;
-
+
     INSTANCE $(id) : class@$(class) ;
- IMPORT_MODULE $(id) : ;
+ IMPORT_MODULE $(id) ;
     $(id).__init__ $(args) : $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ;
-
- # bump the next unique object name
+
+ # Bump the next unique object name.
     .next-instance = [ numbers.increment $(.next-instance) ] ;
-
+
     # Return the name of the new instance.
     return $(id) ;
 }
@@ -102,28 +97,18 @@
 
 rule bases ( class )
 {
- #if ! ( $(class) in $(classes) )
- #{
- # error class $(class) not defined ;
- #}
-
     module class@$(class)
     {
         return $(__bases__) ;
     }
 }
 
+
 rule is-derived ( class : bases + )
 {
- #local all = $(class) $(bases) ;
- #if ! ( $(all) in $(classes) )
- #{
- # error class(es) [ set.difference $(class) $(bases) : $(classes) ] not defined ;
- #}
-
     local stack = $(class) ;
     local visited found ;
- while ( ! $(found) ) && $(stack)
+ while ! $(found) && $(stack)
     {
         local top = $(stack[1]) ;
         stack = $(stack[2-]) ;
@@ -131,7 +116,7 @@
         {
             visited += $(top) ;
             stack += [ bases $(top) ] ;
-
+
             if $(bases) in $(visited)
             {
                 found = true ;
@@ -141,19 +126,21 @@
     return $(found) ;
 }
 
+
 # Returns true if the 'value' is a class instance.
-rule is-instance ( value # The value to check
- )
+#
+rule is-instance ( value )
 {
- return [ MATCH "^(object\\()[^@]+\\)@.*" : $(value) ] ;
+ return [ MATCH "^(object\\()[^@]+\\)@.*" : $(value) ] ;
 }
 
+
 # Check if the given value is of the given type.
 #
 rule is-a (
- instance # The value to check.
- : type # The type to test for.
- )
+ instance # The value to check.
+ : type # The type to test for.
+)
 {
     if [ is-instance $(instance) ]
     {
@@ -161,6 +148,7 @@
     }
 }
 
+
 local rule typecheck ( x )
 {
     local class-name = [ MATCH "^\\[(.*)\\]$" : [ BACKTRACE 1 ] ] ;
@@ -170,26 +158,26 @@
     }
 }
 
-local rule __test__ ( )
+
+rule __test__ ( )
 {
- import "class" : * ;
     import assert ;
- import errors : * ;
+ import "class" : new ;
 
- # This will be the construction function for a class called
- # 'myclass'
- class myclass
+ # This will be the construction function for a class called 'myclass'.
+ #
+ class myclass
     {
- import assert : nonempty-variable ;
-
+ import assert ;
+
         rule __init__ ( x_ * : y_ * )
- {
- # set some instance variables
+ {
+ # Set some instance variables.
             x = $(x_) ;
             y = $(y_) ;
             foo += 10 ;
         }
-
+
         rule set-x ( newx * )
         {
             x = $(newx) ;
@@ -235,33 +223,34 @@
         {
             return $(__class__) ;
         }
-
+
         rule get-instance ( )
         {
             return $(__name__) ;
         }
-
+
         rule invariant ( )
         {
             assert.equal 1 : 1 ;
- }
-
+ }
+
         rule get-foo ( )
         {
             return $(foo) ;
- }
+ }
     }
 # class myclass ;
 
     class derived1 : myclass
- {
+ {
         rule __init__ ( z_ )
         {
             myclass.__init__ $(z_) : X ;
- z = $(z_) ;
+ z = $(z_) ;
         }
-
- # override g
+
+ # Override g.
+ #
         rule g ( args * )
         {
             return derived1.g ;
@@ -277,50 +266,53 @@
             return $(z) ;
         }
 
- # Check that 'assert.equal' visible in base class is visible
- # here.
+ # Check that 'assert.equal' visible in base class is visible here.
+ #
         rule invariant2 ( )
         {
             assert.equal 2 : 2 ;
- }
-
- # Check that 'nonempty-variable' visible in base class is
+ }
+
+ # Check that 'assert.variable-not-empty' visible in base class is
         # visible here.
+ #
         rule invariant3 ( )
         {
             local v = 10 ;
- nonempty-variable v ;
- }
+ assert.variable-not-empty v ;
+ }
     }
 # class derived1 : myclass ;
 
- class derived2 : myclass
+ class derived2 : myclass
     {
         rule __init__ ( )
- {
+ {
             myclass.__init__ 1 : 2 ;
         }
-
- # override g
+
+ # Override g.
+ #
         rule g ( args * )
         {
             return derived2.g ;
         }
 
- rule get-x ( )
- {
- # Test the ability to call base class functions with qualification.
- return [ myclass.get-x ] ;
- }
+ # Test the ability to call base class functions with qualification.
+ #
+ rule get-x ( )
+ {
+ return [ myclass.get-x ] ;
+ }
     }
 # class derived2 : myclass ;
 
     class derived2a : derived2
     {
- rule __init__
+ rule __init__
         {
             derived2.__init__ ;
- }
+ }
     }
 # class derived2a : derived2 ;
 
@@ -336,11 +328,10 @@
     expect_derived2 $(d) ;
     expect_derived2 $(e) ;
 
- # argument checking is set up to call exit(1) directly on
- # failure, and we can't hijack that with try, so we'd better
- # not do this test by default. We could fix this by having
- # errors look up and invoke the EXIT rule instead; EXIT can be
- # hijacked (;-)
+ # Argument checking is set up to call exit(1) directly on failure, and we
+ # can not hijack that with try, so we should better not do this test by
+ # default. We could fix this by having errors look up and invoke the EXIT
+ # rule instead; EXIT can be hijacked (;-)
     if --fail-typecheck in [ modules.peek : ARGV ]
     {
         try ;
@@ -348,11 +339,10 @@
             expect_derived2 $(a) ;
         }
         catch
- "Expected an instance of derived2 but got" instead
- ;
+ "Expected an instance of derived2 but got" instead
+ ;
     }
 
-
     #try ;
     #{
     # new bad_subclass ;
@@ -378,14 +368,14 @@
     assert.result derived1.g : $(b).f ;
     assert.result derived2.g : $(c).f ;
     assert.result derived2.g : $(d).f ;
-
+
     assert.result 10 : $(b).get-foo ;
-
+
     $(a).invariant ;
     $(b).invariant2 ;
     $(b).invariant3 ;
-
- # Check that the __class__ attribute is getting properly set.
+
+ # Check that the __class__ attribute is getting properly set.
     assert.result myclass : $(a).get-class ;
     assert.result derived1 : $(b).get-class ;
     assert.result $(a) : $(a).get-instance ;
@@ -399,13 +389,12 @@
     assert.result c.x : $(c).get-x ;
     assert.result d.x : $(d).get-x ;
 
- class derived3 : derived1 derived2
+ class derived3 : derived1 derived2
     {
         rule __init__ ( )
         {
         }
     }
-
 
     assert.result : bases myclass ;
     assert.result myclass : bases derived1 ;

Modified: branches/CMake/release/tools/build/v2/kernel/errors.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/kernel/errors.jam (original)
+++ branches/CMake/release/tools/build/v2/kernel/errors.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,6 +6,7 @@
 # Print a stack backtrace leading to this rule's caller. Each argument
 # represents a line of output to be printed after the first line of the
 # backtrace.
+#
 rule backtrace ( skip-frames prefix messages * : * )
 {
     local frame-skips = 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 65 69 73 77 81 ;
@@ -71,6 +72,7 @@
 # message matched expectations.
 
 # Begin looking for error messages.
+#
 rule try ( )
 {
     .disabled += true ;
@@ -80,13 +82,14 @@
 
 # Stop looking for error messages; generate an error if an argument of messages
 # is not found in the corresponding argument in the error call.
+#
 rule catch ( messages * : * )
 {
     .disabled = $(.disabled[2-]) ; # Pop the stack.
 
     import sequence ;
 
- if ! $(.last-error-$(.args))-is-nonempty
+ if ! $(.last-error-$(.args))-is-not-empty
     {
         error-skip-frames 3 expected an error, but none occurred ;
     }
@@ -102,7 +105,7 @@
 
                 .last-error-$(.args) = ;
                 error-skip-frames 3 expected \"$(v)\" in argument $(n) of error
- : got \"$(joined)\" instead ;
+ : got \"$(joined)\" instead ;
             }
         }
     }
@@ -134,6 +137,7 @@
 
 
 # Print an error message with a stack backtrace and exit.
+#
 rule error ( messages * : * )
 {
     if $(.no-error-backtrace)
@@ -164,6 +168,7 @@
 
 
 # Same as 'error', but the generated backtrace will include only user files.
+#
 rule user-error ( messages * : * )
 {
     .user-modules-only = 1 ;
@@ -172,6 +177,7 @@
 
 
 # Print a warning message with a stack backtrace and exit.
+#
 rule warning
 {
     backtrace 2 warning: $(1) : $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ;
@@ -182,6 +188,7 @@
 # elements representing the same information. This is mostly useful for
 # formatting descriptions of arguments with which a rule was called when
 # reporting an error.
+#
 rule lol->list ( * )
 {
     local result ;
@@ -203,6 +210,7 @@
 
 # Return the file:line for the nearest entry in backtrace which correspond to a
 # user module.
+#
 rule nearest-user-location ( )
 {
     local bt = [ BACKTRACE ] ;

Modified: branches/CMake/release/tools/build/v2/kernel/modules.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/kernel/modules.jam (original)
+++ branches/CMake/release/tools/build/v2/kernel/modules.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -10,26 +10,55 @@
 # dependencies.
 .loading ?= ;
 
-# A list of modules needing to be tested via __test__ rule.
+# A list of modules needing to be tested using their __test__ rule.
 .untested ?= ;
 
-# A list of modules which have been tested via __test__.
+# A list of modules which have been tested using their __test__ rule.
 .tested ?= ;
 
 
-# Meant to be invoked from import when no __test__ rule is defined in the given
-# module.
-local rule no-test-defined
+# Runs internal Boost Build unit tests for the specified module. The module's
+# __test__ rule is executed in its own module to eliminate any inadvertent
+# effects of testing module dependencies (such as assert) on the module itself.
+#
+local rule run-module-test ( m )
 {
- import modules ;
- if ! ( --quiet in [ modules.peek : ARGV ] )
+ local tested-modules = [ modules.peek modules : .tested ] ;
+
+ if ( ! $(m) in $(tested-modules) ) # Avoid recursive test invocations.
+ && ( ( --debug in $(argv) ) || ( --debug-module=$(m) in $(argv) ) )
     {
- ECHO warning: no __test__ rule defined in module $(__module__) ;
+ modules.poke modules : .tested : $(tested-modules) $(m) ;
+
+ if ! ( __test__ in [ RULENAMES $(m) ] )
+ {
+ local argv = [ peek : ARGV ] ;
+ if ! ( --quiet in $(argv) ) && ( --debug-tests in $(argv) )
+ {
+ ECHO warning: no __test__ rule defined in module $(m) ;
+ }
+ }
+ else
+ {
+ if ! ( --quiet in $(argv) )
+ {
+ ECHO testing module $(m)... ;
+ }
+
+ local test-module = __test-$(m)__ ;
+ IMPORT $(m) : [ RULENAMES $(m) ] : $(test-module) : [ RULENAMES $(m) ] ;
+ IMPORT $(m) : __test__ : $(test-module) : __test__ : LOCALIZE ;
+ module $(test-module)
+ {
+ __test__ ;
+ }
+ }
     }
 }
 
 
 # Return the binding of the given module.
+#
 rule binding ( module )
 {
     return $($(module).__binding__) ;
@@ -39,6 +68,7 @@
 # Sets the module-local value of a variable. This is the most reliable way to
 # set a module-local variable in a different module; it eliminates issues of
 # name shadowing due to dynamic scoping.
+#
 rule poke ( module-name ? : variables + : value * )
 {
     module $(<)
@@ -51,6 +81,7 @@
 # Returns the module-local value of a variable. This is the most reliable way to
 # examine a module-local variable in a different module; it eliminates issues of
 # name shadowing due to dynamic scoping.
+#
 rule peek ( module-name ? : variables + )
 {
     module $(<)
@@ -63,7 +94,8 @@
 # Call the given rule locally in the given module. Use this for rules accepting
 # rule names as arguments, so that the passed rule may be invoked in the context
 # of the rule's caller (for example, if the rule accesses module globals or is a
-# local rule).
+# local rule). Note that rules called this way may accept at most 8 parameters.
+#
 rule call-in ( module-name ? : rule-name args * : * )
 {
     module $(module-name)
@@ -75,18 +107,24 @@
 
 # Given a possibly qualified rule name and arguments, remove any initial module
 # qualification from the rule and invoke it in that module. If there is no
-# module qualification, the rule is invoked in the global module.
+# module qualification, the rule is invoked in the global module. Note that
+# rules called this way may accept at most 8 parameters.
+#
 rule call-locally ( qualified-rule-name args * : * )
 {
     local module-rule = [ MATCH (.*)\\.(.*) : $(qualified-rule-name) ] ;
     local rule-name = $(module-rule[2]) ;
     rule-name ?= $(qualified-rule-name) ;
- return [ call-in $(module-rule[1]) : $(rule-name) $(args)
- : $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ] ;
+ # We pass only 8 parameters here since Boost Jam allows at most 9 rule
+ # parameter positions and the call-in rule already uses up the initial
+ # position for the module name.
+ return [ call-in $(module-rule[1]) : $(rule-name) $(args) : $(2) : $(3) :
+ $(4) : $(5) : $(6) : $(7) : $(8) ] ;
 }
 
 
 # Load the indicated module if it is not already loaded.
+#
 rule load (
       module-name # Name of module to load. Rules will be defined in this
                    # module.
@@ -95,12 +133,12 @@
                    # $(BOOST_BUILD_PATH).
 )
 {
- # Avoid loading modules twice
+ # Avoid loading modules twice.
     if ! ( $(module-name) in $(.loaded) )
     {
         filename ?= $(module-name).jam ;
 
- # Mark the module loaded so we don't try to load it recursively.
+ # Mark the module loaded so we do not try to load it recursively.
         .loaded += $(module-name) ;
 
         # Suppress tests if any module loads are already in progress.
@@ -109,7 +147,7 @@
         # Push this module on the loading stack.
         .loading += $(module-name) ;
 
- # Remember that it's untested.
+ # Remember that it is untested.
         .untested += $(module-name) ;
 
         # Insert the new module's __name__ and __file__ globals.
@@ -118,9 +156,6 @@
 
         module $(module-name)
         {
- # Prepare default behavior, in case no __test__ is defined.
- IMPORT modules : no-test-defined : $(__name__) : __test__ ;
-
             # Add some grist so that the module will have a unique target name.
             local module-target = $(__file__:G=module@) ;
 
@@ -139,11 +174,11 @@
         if $(module-name) != modules && ! [ binding $(module-name) ]
         {
             import errors ;
- errors.error "Couldn't find module" $(module-name) in $(search) ;
+ errors.error "Could not find module" $(module-name) in $(search) ;
         }
 
- # Pop the loading stack. Must happen before testing or we'll run into a
- # circular loading dependency.
+ # Pop the loading stack. Must happen before testing or we will run into
+ # a circular loading dependency.
         .loading = $(.loading[1--2]) ;
 
         # Run any pending tests if this is an outer load.
@@ -152,31 +187,7 @@
             local argv = [ peek : ARGV ] ;
             for local m in $(.untested)
             {
- if ( ! $(m) in $(.tested) ) # Avoid recursive test invocations.
- && ( ( --debug in $(argv) ) || ( --debug-module=$(m) in $(argv) ) )
- {
- .tested += $(m) ;
- if ! ( --quiet in $(argv) )
- {
- ECHO testing module $(m)... ;
- }
-
- # Import m's rules into __test-$(m)__ for easy access.
- IMPORT $(m) : [ RULENAMES $(m) ] : __test-$(m)__ : [ RULENAMES $(m) ] ;
-
- # Execute the module's __test__ rule in its own module to
- # eliminate the inadvertent effects of testing module
- # dependencies (such as assert) on the module itself.
- IMPORT $(m) : __test__ : __test-$(m)__ : __test__ : LOCALIZE ;
-
- module __test-$(m)__
- {
- # Set up the name of the module we're testing so that
- # no-test-defined can find it.
- __module__ = $(1) ;
- __test__ ;
- }
- }
+ run-module-test $(m) ;
             }
             .untested = ;
         }
@@ -193,6 +204,7 @@
 
 # This helper is used by load (above) to record the binding (path) of each
 # loaded module.
+#
 rule record-binding ( module-target : binding )
 {
     $(.loading[-1]).__binding__ = $(binding) ;
@@ -201,8 +213,9 @@
 
 # Transform each path in the list, with all backslashes converted to forward
 # slashes and all detectable redundancy removed. Something like this is probably
-# needed in path.jam, but I'm not sure of that, I don't understand it, and I'm
-# not ready to move all of path.jam into the kernel.
+# needed in path.jam, but I am not sure of that, I do not understand it, and I
+# am not ready to move all of path.jam into the kernel.
+#
 local rule normalize-raw-paths ( paths * )
 {
     local result ;
@@ -224,6 +237,7 @@
 # If rules-opt = '*', all rules from the indicated module are imported into the
 # caller's module. If rename-opt is supplied, it must have the same number of
 # elements as rules-opt.
+#
 rule import ( module-names + : rules-opt * : rename-opt * )
 {
     if ( $(rules-opt) = * || ! $(rules-opt) ) && $(rename-opt)
@@ -288,10 +302,12 @@
     }
 }
 
+
 # Define exported copies in $(target-module) of all rules exported from
 # $(source-module). Also make them available in the global module with
 # qualification, so that it is just as though the rules were defined originally
 # in $(target-module).
+#
 rule clone-rules ( source-module target-module )
 {
     local rules = [ RULENAMES $(source-module) ] ;
@@ -308,7 +324,7 @@
 IMPORT modules : $(globalize) : : modules.$(globalize) ;
 
 
-local rule __test__ ( )
+rule __test__ ( )
 {
     import assert ;
     import modules : normalize-raw-paths ;

Modified: branches/CMake/release/tools/build/v2/roll.sh
==============================================================================
--- branches/CMake/release/tools/build/v2/roll.sh (original)
+++ branches/CMake/release/tools/build/v2/roll.sh 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -50,7 +50,7 @@
 chmod a+x jam_src/build.bat
 cd .. && zip -r boost-build.zip boost-build && tar --bzip2 -cf boost-build.tar.bz2 boost-build
 # Copy packages to a location where they are grabbed for beta.boost.org
-cp boost-build.zip boost-build.tar.bz2 ~/public_html/boost_build_nightly
+cp userman.pdf boost-build.zip boost-build.tar.bz2 ~/public_html/boost_build_nightly
 cd boost-build
 
 chmod -R u+w *

Modified: branches/CMake/release/tools/build/v2/test/BoostBuild.py
==============================================================================
--- branches/CMake/release/tools/build/v2/test/BoostBuild.py (original)
+++ branches/CMake/release/tools/build/v2/test/BoostBuild.py 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -139,14 +139,48 @@
     def _status(self):
         return self.status
 
+
 class Tester(TestCmd.TestCmd):
- """Class for testing Boost.Build.
+ """Main tester class for Boost Build.
 
- Optional argument `executable` indicates the name of the executable to
- invoke. Set this to "jam" to test Boost.Build v1 behavior.
+ Optional arguments:
 
- Optional argument `work_dir` indicates an absolute directory, where the test
- will run be run.
+ `arguments` - Arguments passed to the run executable.
+ `executable` - Name of the executable to invoke.
+ `match` - Function to use for compating actual and
+ expected file contents.
+ `boost_build_path` - Boost build path to be passed to the run
+ executable.
+ `translate_suffixes` - Whether to update suffixes on the the file
+ names passed from the test script so they
+ match those actually created by the current
+ toolset. For example, static library files
+ are specified by using the .lib suffix but
+ when the 'gcc' toolset is used it actually
+ creates them using the .a suffix.
+ `pass_toolset` - Whether the test system should pass the
+ specified toolset to the run executable.
+ `use_test_config` - Whether the test system should tell the run
+ executable to read in the test_config.jam
+ configuration file.
+ `ignore_toolset_requirements` - Whether the test system should tell the run
+ executable to ignore toolset requirements.
+ `workdir` - indicates an absolute directory where the
+ test will be run from.
+
+ Optional arguments inherited from the base class:
+
+ `description` - Test description string displayed in case of
+ a failed test.
+ `subdir' - List of subdirectories to automatically
+ create under the working directory. Each
+ subdirectory needs to be specified
+ separately parent coming before its child.
+ `verbose` - Flag that may be used to enable more verbose
+ test system output. Note that it does not
+ also enable more verbose build system
+ output like the --verbose command line
+ option does.
     """
     def __init__(self, arguments="", executable="bjam",
         match=TestCmd.match_exact, boost_build_path=None,
@@ -157,7 +191,8 @@
         if workdir != '' and not os.path.isabs(workdir):
             raise "Parameter workdir <"+workdir+"> must point to an absolute directory: "
 
- self.last_build_time = 0
+ self.last_build_time_start = 0
+ self.last_build_time_finish = 0
         self.translate_suffixes = translate_suffixes
         self.use_test_config = use_test_config
 
@@ -186,7 +221,10 @@
                 elif os.uname()[0] == 'SunOS':
                     jam_build_dir = "bin.solaris"
                 elif os.uname()[0] == 'Darwin':
- jam_build_dir = "bin.macosxppc"
+ if os.uname()[4] == 'i386':
+ jam_build_dir = "bin.macosxx86"
+ else:
+ jam_build_dir = "bin.macosxppc"
                 elif os.uname()[0] == "AIX":
                     jam_build_dir = "bin.aix"
                 elif os.uname()[0] == "IRIX64":
@@ -218,7 +256,7 @@
 
         verbosity = ['-d0', '--quiet']
         if '--verbose' in sys.argv:
- keywords['verbose'] = 1
+ keywords['verbose'] = True
             verbosity = ['-d+2']
 
         if boost_build_path is None:
@@ -232,7 +270,7 @@
         else:
             program_list.append(os.path.join(jam_build_dir, executable))
             inpath_bjam = None
- program_list.append('-sBOOST_BUILD_PATH=' + boost_build_path)
+ program_list.append('-sBOOST_BUILD_PATH="' + boost_build_path + '"')
         if verbosity:
             program_list += verbosity
         if arguments:
@@ -253,7 +291,7 @@
             TestCmd.TestCmd.cleanup(self)
             os.chdir(self.original_workdir)
         except AttributeError:
- # When this is called during by TestCmd.TestCmd.__del__ we can have
+ # When this is called during TestCmd.TestCmd.__del__ we can have
             # both 'TestCmd' and 'os' unavailable in our scope. Do nothing in
             # this case.
             pass
@@ -262,7 +300,7 @@
     # Methods that change the working directory's content.
     #
     def set_tree(self, tree_location):
- # Seems like it's not possible to remove the current a directory.
+ # It is not possible to remove the current directory.
         d = os.getcwd()
         os.chdir(os.path.dirname(self.workdir))
         shutil.rmtree(self.workdir, ignore_errors=False)
@@ -281,7 +319,7 @@
         os.path.walk(".", make_writable, None)
 
     def write(self, file, content):
- self.wait_for_time_change()
+ self.wait_for_time_change_since_last_build()
         nfile = self.native_file_name(file)
         try:
             os.makedirs(os.path.dirname(nfile))
@@ -304,7 +342,7 @@
         self.touch(new);
 
     def copy(self, src, dst):
- self.wait_for_time_change()
+ self.wait_for_time_change_since_last_build()
         try:
             self.write(dst, self.read(src, 1))
         except:
@@ -318,12 +356,12 @@
         os.utime(dst_name, (stats.st_atime, stats.st_mtime))
 
     def touch(self, names):
- self.wait_for_time_change()
+ self.wait_for_time_change_since_last_build()
         for name in self.adjust_names(names):
             os.utime(self.native_file_name(name), None)
 
     def rm(self, names):
- self.wait_for_time_change()
+ self.wait_for_time_change_since_last_build()
         if not type(names) == types.ListType:
             names = [names]
 
@@ -341,7 +379,7 @@
                 else:
                     os.unlink(n)
 
- # Create working dir root again, in case we've removed it.
+ # Create working dir root again in case we removed it.
         if not os.path.exists(self.workdir):
             os.mkdir(self.workdir)
         os.chdir(self.workdir)
@@ -362,45 +400,50 @@
     #
     def run_build_system(self, extra_args="", subdir="", stdout=None, stderr="",
         status=0, match=None, pass_toolset=None, use_test_config=None,
- ignore_toolset_requirements=None, **kw):
+ ignore_toolset_requirements=None, expected_duration=None, **kw):
 
- if os.path.isabs(subdir):
- if stderr:
- print "You must pass a relative directory to subdir <"+subdir+">."
- status = 1
- return
+ self.last_build_time_start = time.time()
 
- self.previous_tree = tree.build_tree(self.workdir)
+ try:
+ if os.path.isabs(subdir):
+ if stderr:
+ print "You must pass a relative directory to subdir <"+subdir+">."
+ status = 1
+ return
 
- if match is None:
- match = self.match
+ self.previous_tree = tree.build_tree(self.workdir)
 
- if pass_toolset is None:
- pass_toolset = self.pass_toolset
+ if match is None:
+ match = self.match
 
- if use_test_config is None:
- use_test_config = self.use_test_config
+ if pass_toolset is None:
+ pass_toolset = self.pass_toolset
 
- if ignore_toolset_requirements is None:
- ignore_toolset_requirements = self.ignore_toolset_requirements
+ if use_test_config is None:
+ use_test_config = self.use_test_config
 
- try:
- kw['program'] = []
- kw['program'] += self.program
- if extra_args:
- kw['program'] += extra_args.split(" ")
- if pass_toolset:
- kw['program'].append("toolset=" + self.toolset)
- if use_test_config:
- kw['program'].append('--test-config="%s"'
- % os.path.join(self.original_workdir, "test-config.jam"))
- if ignore_toolset_requirements:
- kw['program'].append("--ignore-toolset-requirements")
- kw['chdir'] = subdir
- apply(TestCmd.TestCmd.run, [self], kw)
- except:
- self.dump_stdio()
- raise
+ if ignore_toolset_requirements is None:
+ ignore_toolset_requirements = self.ignore_toolset_requirements
+
+ try:
+ kw['program'] = []
+ kw['program'] += self.program
+ if extra_args:
+ kw['program'] += extra_args.split(" ")
+ if pass_toolset:
+ kw['program'].append("toolset=" + self.toolset)
+ if use_test_config:
+ kw['program'].append('--test-config="%s"'
+ % os.path.join(self.original_workdir, "test-config.jam"))
+ if ignore_toolset_requirements:
+ kw['program'].append("--ignore-toolset-requirements")
+ kw['chdir'] = subdir
+ apply(TestCmd.TestCmd.run, [self], kw)
+ except:
+ self.dump_stdio()
+ raise
+ finally:
+ self.last_build_time_finish = time.time()
 
         if status != None and _failed(self, status):
             expect = ''
@@ -423,7 +466,7 @@
             self.maybe_do_diff(self.stdout(), stdout)
             self.fail_test(1, dump_stdio=False)
 
- # Intel tends to produce some message to stderr which makes tests fail.
+ # Intel tends to produce some messages to stderr which make tests fail.
         intel_workaround = re.compile("^xi(link|lib): executing.*\n", re.M)
         actual_stderr = re.sub(intel_workaround, "", self.stderr())
 
@@ -435,13 +478,19 @@
             self.maybe_do_diff(actual_stderr, stderr)
             self.fail_test(1, dump_stdio=False)
 
+ if not expected_duration is None:
+ actual_duration = self.last_build_time_finish - self.last_build_time_start
+ if ( actual_duration > expected_duration ):
+ print "Test run lasted %f seconds while it was expected to " \
+ "finish in under %f seconds." % (actual_duration,
+ expected_duration)
+ self.fail_test(1, dump_stdio=False)
+
         self.tree = tree.build_tree(self.workdir)
         self.difference = tree.trees_difference(self.previous_tree, self.tree)
         self.difference.ignore_directories()
         self.unexpected_difference = copy.deepcopy(self.difference)
 
- self.last_build_time = time.time()
-
     def glob_file(self, name):
         result = None
         if hasattr(self,'difference'):
@@ -665,8 +714,11 @@
         if exact:
             matched = fnmatch.fnmatch(actual,content)
         else:
- actual_ = map(lambda x: sorted(x.split()),actual.splitlines())
- content_ = map(lambda x: sorted(x.split()),content.splitlines())
+ def sorted_(x):
+ x.sort()
+ return x
+ actual_ = map(lambda x: sorted_(x.split()),actual.splitlines())
+ content_ = map(lambda x: sorted_(x.split()),content.splitlines())
             if len(actual_) == len(content_):
                 matched = map(
                     lambda x,y: map(lambda n,p: fnmatch.fnmatch(n,p),x,y),
@@ -777,14 +829,14 @@
         return os.path.normpath(apply(os.path.join, [self.workdir]+elements))
 
     # Wait while time is no longer equal to the time last "run_build_system"
- # call finished.
- def wait_for_time_change(self):
+ # call finished. Used to avoid subsequent builds treating existing files as
+ # 'current'.
+ def wait_for_time_change_since_last_build(self):
         while 1:
- f = time.time();
             # In fact, I'm not sure why "+ 2" as opposed to "+ 1" is needed but
             # empirically, "+ 1" sometimes causes 'touch' and other functions
             # not to bump the file time enough for a rebuild to happen.
- if math.floor(f) < math.floor(self.last_build_time) + 2:
+ if math.floor(time.time()) < math.floor(self.last_build_time_finish) + 2:
                 time.sleep(0.1)
             else:
                 break

Modified: branches/CMake/release/tools/build/v2/test/TestCmd.py
==============================================================================
--- branches/CMake/release/tools/build/v2/test/TestCmd.py (original)
+++ branches/CMake/release/tools/build/v2/test/TestCmd.py 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,28 +1,26 @@
 """
 TestCmd.py: a testing framework for commands and scripts.
 
-The TestCmd module provides a framework for portable automated testing
-of executable commands and scripts (in any language, not just Python),
-especially commands and scripts that require file system interaction.
+The TestCmd module provides a framework for portable automated testing of
+executable commands and scripts (in any language, not just Python), especially
+commands and scripts that require file system interaction.
 
 In addition to running tests and evaluating conditions, the TestCmd module
-manages and cleans up one or more temporary workspace directories, and
-provides methods for creating files and directories in those workspace
-directories from in-line data, here-documents), allowing tests to be
-completely self-contained.
+manages and cleans up one or more temporary workspace directories, and provides
+methods for creating files and directories in those workspace directories from
+in-line data, here-documents), allowing tests to be completely self-contained.
 
 A TestCmd environment object is created via the usual invocation:
 
     test = TestCmd()
 
-The TestCmd module provides pass_test(), fail_test(), and no_result()
-unbound methods that report test results for use with the Aegis change
-management system. These methods terminate the test immediately,
-reporting PASSED, FAILED, or NO RESULT respectively, and exiting with
-status 0 (success), 1 or 2 respectively. This allows for a distinction
-between an actual failed test and a test that could not be properly
-evaluated because of an external condition (such as a full file system
-or incorrect permissions).
+The TestCmd module provides pass_test(), fail_test(), and no_result() unbound
+methods that report test results for use with the Aegis change management
+system. These methods terminate the test immediately, reporting PASSED, FAILED
+or NO RESULT respectively and exiting with status 0 (success), 1 or 2
+respectively. This allows for a distinction between an actual failed test and a
+test that could not be properly evaluated because of an external condition (such
+as a full file system or incorrect permissions).
 """
 
 # Copyright 2000 Steven Knight
@@ -67,6 +65,7 @@
 import tempfile
 import traceback
 
+
 tempfile.template = 'testcmd.'
 
 _Cleanup = []
@@ -81,6 +80,7 @@
 
 sys.exitfunc = _clean
 
+
 def caller(tblist, skip):
     string = ""
     arr = []
@@ -98,12 +98,13 @@
         atfrom = "\tfrom"
     return string
 
-def fail_test(self = None, condition = 1, function = None, skip = 0):
+
+def fail_test(self=None, condition=True, function=None, skip=0):
     """Cause the test to fail.
 
- By default, the fail_test() method reports that the test FAILED
- and exits with a status of 1. If a condition argument is supplied,
- the test fails only if the condition is true.
+ By default, the fail_test() method reports that the test FAILED and exits
+ with a status of 1. If a condition argument is supplied, the test fails only
+ if the condition is true.
     """
     if not condition:
         return
@@ -124,15 +125,15 @@
 
     sys.stderr.write("FAILED test" + of + desc + sep + at + """
 in directory: """ + os.getcwd() )
-
     sys.exit(1)
 
-def no_result(self = None, condition = 1, function = None, skip = 0):
+
+def no_result(self=None, condition=True, function=None, skip=0):
     """Causes a test to exit with no valid result.
 
- By default, the no_result() method reports NO RESULT for the test
- and exits with a status of 2. If a condition argument is supplied,
- the test fails only if the condition is true.
+ By default, the no_result() method reports NO RESULT for the test and exits
+ with a status of 2. If a condition argument is supplied, the test fails only
+ if the condition is true.
     """
     if not condition:
         return
@@ -151,15 +152,15 @@
 
     at = caller(traceback.extract_stack(), skip)
     sys.stderr.write("NO RESULT for test" + of + desc + sep + at)
-
     sys.exit(2)
 
-def pass_test(self = None, condition = 1, function = None):
+
+def pass_test(self=None, condition=True, function=None):
     """Causes a test to pass.
 
- By default, the pass_test() method reports PASSED for the test
- and exits with a status of 0. If a condition argument is supplied,
- the test passes only if the condition is true.
+ By default, the pass_test() method reports PASSED for the test and exits
+ with a status of 0. If a condition argument is supplied, the test passes
+ only if the condition is true.
     """
     if not condition:
         return
@@ -168,8 +169,10 @@
     sys.stderr.write("PASSED\n")
     sys.exit(0)
 
-def match_exact(lines = None, matches = None):
- """
+
+def match_exact(lines=None, matches=None):
+ """Returns whether the given lists or strings containing lines separated
+ using newline characters contain exactly the same data.
     """
     if not type(lines) is ListType:
         lines = split(lines, "\n")
@@ -182,8 +185,11 @@
             return
     return 1
 
-def match_re(lines = None, res = None):
- """
+
+def match_re(lines=None, res=None):
+ """Given lists or strings contain lines separated using newline characters.
+ This function matches those lines one by one, interpreting the lines in the
+ res parameter as regular expressions.
     """
     if not type(lines) is ListType:
         lines = split(lines, "\n")
@@ -196,25 +202,20 @@
             return
     return 1
 
+
 class TestCmd:
- """Class TestCmd
+ """Class TestCmd.
     """
 
- def __init__(self, description = None,
- program = None,
- interpreter = None,
- workdir = None,
- subdir = None,
- verbose = 0,
- match = None,
- inpath = None):
+ def __init__(self, description=None, program=None, workdir=None,
+ subdir=None, verbose=False, match=None, inpath=None):
+
         self._cwd = os.getcwd()
         self.description_set(description)
         if inpath:
             self.program = program
         else:
             self.program_set(program)
- self.interpreter_set(interpreter)
         self.verbose_set(verbose)
         if not match is None:
             self.match_func = match
@@ -252,20 +253,20 @@
     def __repr__(self):
         return "%x" % id(self)
 
- def cleanup(self, condition = None):
- """Removes any temporary working directories for the specified
- TestCmd environment. If the environment variable PRESERVE was
- set when the TestCmd environment was created, temporary working
- directories are not removed. If any of the environment variables
- PRESERVE_PASS, PRESERVE_FAIL, or PRESERVE_NO_RESULT were set
- when the TestCmd environment was created, then temporary working
- directories are not removed if the test passed, failed, or had
- no result, respectively. Temporary working directories are also
- preserved for conditions specified via the preserve method.
-
- Typically, this method is not called directly, but is used when
- the script exits to clean up temporary working directories as
- appropriate for the exit status.
+ def cleanup(self, condition=None):
+ """Removes any temporary working directories for the specified TestCmd
+ environment. If the environment variable PRESERVE was set when the
+ TestCmd environment was created, temporary working directories are not
+ removed. If any of the environment variables PRESERVE_PASS,
+ PRESERVE_FAIL or PRESERVE_NO_RESULT were set when the TestCmd
+ environment was created, then temporary working directories are not
+ removed if the test passed, failed or had no result, respectively.
+ Temporary working directories are also preserved for conditions
+ specified via the preserve method.
+
+ Typically, this method is not called directly, but is used when the
+ script exits to clean up temporary working directories as appropriate
+ for the exit status.
         """
         if not self._dirlist:
             return
@@ -280,10 +281,10 @@
             for dir in list:
                 self.writable(dir, 1)
                 shutil.rmtree(dir, ignore_errors = 1)
-
+
         self._dirlist = []
         self.workdir = None
- os.chdir(self._cwd)
+ os.chdir(self._cwd)
         try:
             global _Cleanup
             _Cleanup.remove(self)
@@ -295,11 +296,7 @@
         """
         self.description = description
 
-# def diff(self):
-# """Diff two arrays.
-# """
-
- def fail_test(self, condition = 1, function = None, skip = 0):
+ def fail_test(self, condition=True, function=None, skip=0):
         """Cause the test to fail.
         """
         if not condition:
@@ -310,12 +307,6 @@
                   function = function,
                   skip = skip)
 
- def interpreter_set(self, interpreter):
- """Set the program to be used to interpret the program
- under test as a script.
- """
- self.interpreter = interpreter
-
     def match(self, lines, matches):
         """Compare actual and expected file contents.
         """
@@ -331,7 +322,7 @@
         """
         return match_re(lines, res)
 
- def no_result(self, condition = 1, function = None, skip = 0):
+ def no_result(self, condition=True, function=None, skip=0):
         """Report that the test could not be run.
         """
         if not condition:
@@ -342,7 +333,7 @@
                   function = function,
                   skip = skip)
 
- def pass_test(self, condition = 1, function = None):
+ def pass_test(self, condition=True, function=None):
         """Cause the test to pass.
         """
         if not condition:
@@ -351,11 +342,10 @@
         pass_test(self = self, condition = condition, function = function)
 
     def preserve(self, *conditions):
- """Arrange for the temporary working directories for the
- specified TestCmd environment to be preserved for one or more
- conditions. If no conditions are specified, arranges for
- the temporary working directories to be preserved for all
- conditions.
+ """Arrange for the temporary working directories for the specified
+ TestCmd environment to be preserved for one or more conditions. If no
+ conditions are specified, arranges for the temporary working directories
+ to be preserved for all conditions.
         """
         if conditions is ():
             conditions = ('pass_test', 'fail_test', 'no_result')
@@ -369,13 +359,12 @@
             program[0] = os.path.join(self._cwd, program[0])
         self.program = program
 
- def read(self, file, mode = 'rb'):
- """Reads and returns the contents of the specified file name.
- The file name may be a list, in which case the elements are
- concatenated with the os.path.join() method. The file is
- assumed to be under the temporary working directory unless it
- is an absolute path name. The I/O mode for the file may
- be specified; it must begin with an 'r'. The default is
+ def read(self, file, mode='rb'):
+ """Reads and returns the contents of the specified file name. The file
+ name may be a list, in which case the elements are concatenated with the
+ os.path.join() method. The file is assumed to be under the temporary
+ working directory unless it is an absolute path name. The I/O mode for
+ the file may be specified; it must begin with an 'r'. The default is
         'rb' (binary read).
         """
         if type(file) is ListType:
@@ -386,14 +375,10 @@
             raise ValueError, "mode must begin with 'r'"
         return open(file, mode).read()
 
- def run(self, program = None,
- interpreter = None,
- arguments = None,
- chdir = None,
- stdin = None):
- """Runs a test of the program or script for the test
- environment. Standard output and error output are saved for
- future retrieval via the stdout() and stderr() methods.
+ def run(self, program=None, arguments=None, chdir=None, stdin=None):
+ """Runs a test of the program or script for the test environment.
+ Standard output and error output are saved for future retrieval via the
+ stdout() and stderr() methods.
         """
         if chdir:
             oldcwd = os.getcwd()
@@ -407,12 +392,8 @@
             if program[0] != self.program[0] and not os.path.isabs(program[0]):
                 program[0] = os.path.join(self._cwd, program[0])
             cmd += program
- # if interpreter:
- # cmd = interpreter + " " + cmd
         else:
             cmd += self.program
- # if self.interpreter:
- # cmd = self.interpreter + " " + cmd
         if arguments:
             cmd += arguments.split(" ")
         if self.verbose:
@@ -420,7 +401,65 @@
         try:
             p = popen2.Popen3(cmd, 1)
         except AttributeError:
- (tochild, fromchild, childerr) = os.popen3(join(cmd, " "))
+ # We end up here in case the popen2.Popen3 class is not available
+ # (e.g. on Windows). We will be using the os.popen3() Python API
+ # which takes a string parameter and so needs its executable quoted
+ # in case its name contains spaces.
+ cmd[0] = '"' + cmd[0] + '"'
+ command_string = join(cmd, " ")
+ if ( os.name == 'nt' ):
+ # This is a workaround for a longstanding Python bug on Windows
+ # when using os.popen(), os.system() and similar functions to
+ # execute a command containing quote characters. The bug seems
+ # to be related to the quote stripping functionality used by the
+ # Windows cmd.exe interpreter when its /S is not specified.
+ #
+ # Cleaned up quote from the cmd.exe help screen as displayed on
+ # Windows XP SP2:
+ #
+ # 1. If all of the following conditions are met, then quote
+ # characters on the command line are preserved:
+ #
+ # - no /S switch
+ # - exactly two quote characters
+ # - no special characters between the two quote
+ # characters, where special is one of: &<>()@^|
+ # - there are one or more whitespace characters between
+ # the two quote characters
+ # - the string between the two quote characters is the
+ # name of an executable file.
+ #
+ # 2. Otherwise, old behavior is to see if the first character
+ # is a quote character and if so, strip the leading
+ # character and remove the last quote character on the
+ # command line, preserving any text after the last quote
+ # character.
+ #
+ # This causes some commands containing quotes not to be executed
+ # correctly. For example:
+ #
+ # "\Long folder name\aaa.exe" --name="Jurko" --no-surname
+ #
+ # would get its outermost quotes stripped and would be executed
+ # as:
+ #
+ # \Long folder name\aaa.exe" --name="Jurko --no-surname
+ #
+ # which would report an error about '\Long' not being a valid
+ # command.
+ #
+ # cmd.exe help seems to indicate it would be enough to add an
+ # extra space character in front of the command to avoid this
+ # but this does not work, most likely due to the shell first
+ # stripping all leading whitespace characters from the command.
+ #
+ # Solution implemented here is to quote the whole command in
+ # case it contains any quote characters. Note thought this will
+ # not work correctly should Python ever fix this bug.
+ # (01.05.2008.) (Jurko)
+ if command_string.find('"') != -1:
+ command_string = '"' + command_string + '"'
+ (tochild, fromchild, childerr) = os.popen3(command_string)
             if stdin:
                 if type(stdin) is ListType:
                     for line in stdin:
@@ -429,7 +468,7 @@
                     tochild.write(stdin)
             tochild.close()
             self._stdout.append(fromchild.read())
- self._stderr.append(childerr.read())
+ self._stderr.append(childerr.read())
             fromchild.close()
             self.status = childerr.close()
             if not self.status:
@@ -447,20 +486,19 @@
             self._stdout.append(p.fromchild.read())
             self._stderr.append(p.childerr.read())
             self.status = p.wait()
-
+
         if self.verbose:
             sys.stdout.write(self._stdout[-1])
             sys.stderr.write(self._stderr[-1])
-
+
         if chdir:
             os.chdir(oldcwd)
 
- def stderr(self, run = None):
- """Returns the error output from the specified run number.
- If there is no specified run number, then returns the error
- output of the last run. If the run number is less than zero,
- then returns the error output from that many runs back from the
- current run.
+ def stderr(self, run=None):
+ """Returns the error output from the specified run number. If there is
+ no specified run number, then returns the error output of the last run.
+ If the run number is less than zero, then returns the error output from
+ that many runs back from the current run.
         """
         if not run:
             run = len(self._stderr)
@@ -471,12 +509,11 @@
             return ''
         return self._stderr[run]
 
- def stdout(self, run = None):
- """Returns the standard output from the specified run number.
- If there is no specified run number, then returns the standard
- output of the last run. If the run number is less than zero,
- then returns the standard output from that many runs back from
- the current run.
+ def stdout(self, run=None):
+ """Returns the standard output from the specified run number. If there
+ is no specified run number, then returns the standard output of the last
+ run. If the run number is less than zero, then returns the standard
+ output from that many runs back from the current run.
         """
         if not run:
             run = len(self._stdout)
@@ -488,11 +525,11 @@
         return self._stdout[run]
 
     def subdir(self, *subdirs):
- """Create new subdirectories under the temporary working
- directory, one for each argument. An argument may be a list,
- in which case the list elements are concatenated using the
- os.path.join() method. Subdirectories multiple levels deep
- must be created using a separate argument for each level:
+ """Create new subdirectories under the temporary working directory, one
+ for each argument. An argument may be a list, in which case the list
+ elements are concatenated using the os.path.join() method.
+ Subdirectories multiple levels deep must be created using a separate
+ argument for each level:
 
                 test.subdir('sub', ['sub', 'dir'], ['sub', 'dir', 'ectory'])
 
@@ -514,11 +551,10 @@
         return count
 
     def unlink (self, file):
- """Unlinks the specified file name.
- The file name may be a list, in which case the elements are
- concatenated with the os.path.join() method. The file is
- assumed to be under the temporary working directory unless it
- is an absolute path name.
+ """Unlinks the specified file name. The file name may be a list, in
+ which case the elements are concatenated using the os.path.join()
+ method. The file is assumed to be under the temporary working directory
+ unless it is an absolute path name.
         """
         if type(file) is ListType:
             file = apply(os.path.join, tuple(file))
@@ -526,16 +562,14 @@
             file = os.path.join(self.workdir, file)
         os.unlink(file)
 
-
     def verbose_set(self, verbose):
         """Set the verbose level.
         """
         self.verbose = verbose
 
     def workdir_set(self, path):
- """Creates a temporary working directory with the specified
- path name. If the path is a null string (''), a unique
- directory name is created.
+ """Creates a temporary working directory with the specified path name.
+ If the path is a null string (''), a unique directory name is created.
         """
 
         if os.path.isabs(path):
@@ -554,9 +588,9 @@
                     _Cleanup.append(self)
                 # We'd like to set self.workdir like this:
                 # self.workdir = path
- # But symlinks in the path will report things
- # differently from os.getcwd(), so chdir there
- # and back to fetch the canonical path.
+ # But symlinks in the path will report things differently from
+ # os.getcwd(), so chdir there and back to fetch the canonical
+ # path.
                 cwd = os.getcwd()
                 os.chdir(path)
                 self.workdir = os.getcwd()
@@ -565,16 +599,16 @@
                 self.workdir = None
 
     def workpath(self, *args):
- """Returns the absolute path name to a subdirectory or file
- within the current temporary working directory. Concatenates
- the temporary working directory name with the specified
- arguments using the os.path.join() method.
+ """Returns the absolute path name to a subdirectory or file within the
+ current temporary working directory. Concatenates the temporary working
+ directory name with the specified arguments using the os.path.join()
+ method.
         """
         return apply(os.path.join, (self.workdir,) + tuple(args))
 
     def writable(self, top, write):
- """Make the specified directory tree writable (write == 1)
- or not (write == None).
+ """Make the specified directory tree writable (write == 1) or not
+ (write == None).
         """
 
         def _walk_chmod(arg, dirname, names):
@@ -598,16 +632,15 @@
         try:
             os.path.walk(top, _walk_chmod, f)
         except:
- pass # ignore any problems changing modes
+ pass # Ignore any problems changing modes.
 
- def write(self, file, content, mode = 'wb'):
- """Writes the specified content text (second argument) to the
- specified file name (first argument). The file name may be
- a list, in which case the elements are concatenated with the
- os.path.join() method. The file is created under the temporary
- working directory. Any subdirectories in the path must already
- exist. The I/O mode for the file may be specified; it must
- begin with a 'w'. The default is 'wb' (binary write).
+ def write(self, file, content, mode='wb'):
+ """Writes the specified content text (second argument) to the specified
+ file name (first argument). The file name may be a list, in which case
+ the elements are concatenated using the os.path.join() method. The file
+ is created under the temporary working directory. Any subdirectories in
+ the path must already exist. The I/O mode for the file may be specified;
+ it must begin with a 'w'. The default is 'wb' (binary write).
         """
         if type(file) is ListType:
             file = apply(os.path.join, tuple(file))

Modified: branches/CMake/release/tools/build/v2/test/build_file.py
==============================================================================
--- branches/CMake/release/tools/build/v2/test/build_file.py (original)
+++ branches/CMake/release/tools/build/v2/test/build_file.py 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,46 +1,170 @@
 #!/usr/bin/python
 
 # Copyright (C) Vladimir Prus 2006.
+# Copyright (C) Jurko Gospodnetic 2008.
 # Distributed under the Boost Software License, Version 1.0. (See
 # accompanying file LICENSE_1_0.txt or copy at
 # http://www.boost.org/LICENSE_1_0.txt)
 
-# Tests that we can build a file (not target), by it's name
-from BoostBuild import Tester, List
-from string import find
+# Tests that we explicitly request a file (not target) to be built by specifying
+# its name on the command line.
 
-# Create a temporary working directory
-t = Tester()
+import BoostBuild
 
-# Create the needed files
-t.write("Jamroot", """
+
+################################################################################
+#
+# test_building_file_from_specific_project()
+# ------------------------------------------
+#
+################################################################################
+
+def test_building_file_from_specific_project():
+ t = BoostBuild.Tester()
+
+ t.write("Jamroot.jam", """
 exe hello : hello.cpp ;
+exe hello2 : hello.cpp ;
 build-project sub ;
 """)
-t.write("hello.cpp", """
-int main()
-{
- return 0;
-}
-""")
-t.write("sub/Jamfile", """
+ t.write("hello.cpp", "int main() { return 0; }")
+ t.write("sub/Jamfile.jam", """
 exe hello : hello.cpp ;
+exe hello2 : hello.cpp ;
 exe sub : hello.cpp ;
 """)
-t.write("sub/hello.cpp", """
-int main()
-{
- return 0;
-}
-""")
+ t.write("sub/hello.cpp", "int main() { return 0; }")
 
+ t.run_build_system("sub " + t.adjust_suffix("hello.obj"))
+ t.expect_output_line("*depends on itself*", False)
+ t.expect_addition("sub/bin/$toolset/debug/hello.obj")
+ t.expect_nothing_more()
+
+ t.cleanup()
+
+
+################################################################################
+#
+# test_building_file_from_specific_target()
+# -----------------------------------------
+#
+################################################################################
+
+def test_building_file_from_specific_target():
+ t = BoostBuild.Tester()
+
+ t.write("Jamroot.jam", """
+exe hello1 : hello1.cpp ;
+exe hello2 : hello2.cpp ;
+exe hello3 : hello3.cpp ;
+""")
+ t.write("hello1.cpp", "int main() { return 0; }")
+ t.write("hello2.cpp", "int main() { return 0; }")
+ t.write("hello3.cpp", "int main() { return 0; }")
+
+ t.run_build_system("hello1 " + t.adjust_suffix("hello1.obj"))
+ t.expect_addition("bin/$toolset/debug/hello1.obj")
+ t.expect_nothing_more()
+
+ t.cleanup()
+
+
+################################################################################
+#
+# test_building_missing_file_from_specific_target()
+# -------------------------------------------------
+#
+################################################################################
+
+def test_building_missing_file_from_specific_target():
+ t = BoostBuild.Tester()
+
+ t.write("Jamroot.jam", """
+exe hello1 : hello1.cpp ;
+exe hello2 : hello2.cpp ;
+exe hello3 : hello3.cpp ;
+""")
+ t.write("hello1.cpp", "int main() { return 0; }")
+ t.write("hello2.cpp", "int main() { return 0; }")
+ t.write("hello3.cpp", "int main() { return 0; }")
+
+ t.run_build_system("hello1 " + t.adjust_suffix("hello2.obj"), status=1)
+ t.expect_output_line("don't know how to make*hello2.obj")
+ t.expect_nothing_more()
+
+ t.cleanup()
+
+
+################################################################################
+#
+# test_building_multiple_files_with_different_names()
+# ---------------------------------------------------
+#
+################################################################################
+
+def test_building_multiple_files_with_different_names():
+ t = BoostBuild.Tester()
+
+ t.write("Jamroot.jam", """
+exe hello1 : hello1.cpp ;
+exe hello2 : hello2.cpp ;
+exe hello3 : hello3.cpp ;
+""")
+ t.write("hello1.cpp", "int main() { return 0; }")
+ t.write("hello2.cpp", "int main() { return 0; }")
+ t.write("hello3.cpp", "int main() { return 0; }")
+
+ t.run_build_system(
+ t.adjust_suffix("hello1.obj") + " " +
+ t.adjust_suffix("hello2.obj"))
+ t.expect_addition("bin/$toolset/debug/hello1.obj")
+ t.expect_addition("bin/$toolset/debug/hello2.obj")
+ t.expect_nothing_more()
+
+ t.cleanup()
+
+
+################################################################################
+#
+# test_building_multiple_files_with_the_same_name()
+# -------------------------------------------------
+#
+################################################################################
 
-t.run_build_system(t.adjust_suffix("hello.obj"))
+def test_building_multiple_files_with_the_same_name():
+ t = BoostBuild.Tester()
 
-t.fail_test(find(t.stdout(), "depends on itself") != -1)
-t.expect_addition("bin/$toolset/debug/hello.obj")
-t.expect_addition("sub/bin/$toolset/debug/hello.obj")
-t.expect_nothing_more()
+ t.write("Jamroot.jam", """
+exe hello : hello.cpp ;
+exe hello2 : hello.cpp ;
+build-project sub ;
+""")
+ t.write("hello.cpp", "int main() { return 0; }")
+ t.write("sub/Jamfile.jam", """
+exe hello : hello.cpp ;
+exe hello2 : hello.cpp ;
+exe sub : hello.cpp ;
+""")
+ t.write("sub/hello.cpp", "int main() { return 0; }")
 
-# Remove temporary directories
-t.cleanup()
+ t.run_build_system(t.adjust_suffix("hello.obj"))
+ t.expect_output_line("*depends on itself*", False)
+ t.expect_addition("bin/$toolset/debug/hello.obj")
+ t.expect_addition("sub/bin/$toolset/debug/hello.obj")
+ t.expect_nothing_more()
+
+ t.cleanup()
+
+
+################################################################################
+#
+# main()
+# ------
+#
+################################################################################
+
+test_building_file_from_specific_project()
+test_building_file_from_specific_target()
+test_building_missing_file_from_specific_target()
+test_building_multiple_files_with_different_names()
+test_building_multiple_files_with_the_same_name()

Modified: branches/CMake/release/tools/build/v2/test/conditionals_multiple.py
==============================================================================
--- branches/CMake/release/tools/build/v2/test/conditionals_multiple.py (original)
+++ branches/CMake/release/tools/build/v2/test/conditionals_multiple.py 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -236,7 +236,7 @@
     t.expect_output_line("description: /a0-t1-b0/", False)
     t.expect_output_line("description: /a0-t1-b1/", False)
     t.expect_output_line("description: /a1-t0-b0/", False)
- t.expect_output_line("description: /a1-t0-b1/", False)
+ t.expect_output_line("description: /a1-t0-b1/" )
     t.expect_output_line("description: /b0-a1-t0/", False)
     t.expect_output_line("description: /b0-a0-t1/", False)
     t.expect_output_line("description: /b0-a1-t1/", False)

Modified: branches/CMake/release/tools/build/v2/test/example_qt4.py
==============================================================================
--- branches/CMake/release/tools/build/v2/test/example_qt4.py (original)
+++ branches/CMake/release/tools/build/v2/test/example_qt4.py 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,14 +13,14 @@
 
 t.set_tree("../example/qt/qt4/hello")
 t.run_build_system()
-t.expect_addition(["bin/$toolset/debug/threading-multi/user-interface-gui/arrow"])
+t.expect_addition(["bin/$toolset/debug/threading-multi/arrow"])
 
 t.set_tree("../example/qt/qt4/moccable-cpp")
 t.run_build_system()
-t.expect_addition(["bin/$toolset/debug/threading-multi/user-interface-gui/main"])
+t.expect_addition(["bin/$toolset/debug/threading-multi/main"])
 
 t.set_tree("../example/qt/qt4/uic")
 t.run_build_system()
-t.expect_addition(["bin/$toolset/debug/threading-multi/user-interface-gui/hello"])
+t.expect_addition(["bin/$toolset/debug/threading-multi/hello"])
 
 t.cleanup()

Modified: branches/CMake/release/tools/build/v2/test/rebuilds.py
==============================================================================
--- branches/CMake/release/tools/build/v2/test/rebuilds.py (original)
+++ branches/CMake/release/tools/build/v2/test/rebuilds.py 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -35,7 +35,7 @@
 t.expect_addition('bar')
 t.expect_nothing_more()
 
-t.wait_for_time_change()
+t.wait_for_time_change_since_last_build()
 t.run_build_system('-ffile.jam foo')
 t.expect_touch('bar')
 t.expect_addition('foo')

Modified: branches/CMake/release/tools/build/v2/test/test_all.py
==============================================================================
--- branches/CMake/release/tools/build/v2/test/test_all.py (original)
+++ branches/CMake/release/tools/build/v2/test/test_all.py 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,13 +16,13 @@
     'BOOST_ROOT','BOOST_BUILD_PATH','JAM_TOOLSET','BCCROOT',
     'MSVCDir','MSVC','MSVCNT','MINGW','watcom'
     ):
-
+
     try:
         del os.environ[s]
     except:
         pass
 
-BoostBuild.set_defer_annotations(1)
+BoostBuild.set_defer_annotations(1)
 
 def run_tests(critical_tests, other_tests):
     """Runs first critical tests and then other_tests.
@@ -59,7 +59,7 @@
         BoostBuild.flush_annotations();
         pass_count = pass_count + 1
         sys.stdout.flush() # makes testing under emacs more entertaining.
-
+
     # Erase the file on success
     if failures_count == 0:
         open('test_results.txt', 'w')
@@ -69,7 +69,7 @@
     PASS: %d
     FAIL: %d
     """ % (pass_count, failures_count)
-
+
 
 def last_failed_test():
     "Returns the name of last failed test or None"
@@ -87,7 +87,7 @@
     except ValueError:
         return tests
 
-
+
 critical_tests = ["unit_tests", "module_actions", "startup_v1", "startup_v2"]
 
 critical_tests += ["core_d12", "core_typecheck", "core_delete_module",
@@ -167,6 +167,8 @@
           "example_make",
           "remove_requirement",
           "free_features_request",
+ "file_name_handling",
+ "sort_rule"
           ]
 
 if os.name == 'posix':
@@ -187,13 +189,14 @@
 
 if "--extras" in sys.argv:
     tests.append("boostbook")
+ tests.append("qt4")
     tests.append("example_qt4")
     # Requires ./whatever.py to work, so is
     # not guaranted to work everywhere.
     tests.append("example_customization")
     # Requires gettext tools.
     tests.append("example_gettext")
-
+
 else:
     print 'Note: skipping extra tests'
 

Modified: branches/CMake/release/tools/build/v2/test/test_system.html
==============================================================================
--- branches/CMake/release/tools/build/v2/test/test_system.html (original)
+++ branches/CMake/release/tools/build/v2/test/test_system.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,14 +12,14 @@
 <style type="text/css">
         hr { color: black }
         p.revision { text-align: right; font-style: italic }
- pre.code { margin-left: 2em }
- pre.example { margin-left: 2em; border: solid black thin }
+ pre.code { margin-left: 2em }
+ pre.example { margin-left: 2em; border: solid black thin }
         pre.output { margin-left: 2em }
         img.banner { border: 0; float: left }
         h1 { text-align: right }
         br.clear { clear: left }
         div.attention { color: red }
-
+
 </style>
   </head>
 
@@ -34,6 +34,12 @@
     <dl class="page-index">
       <dt>Introduction for users</dt>
 
+ <dd>
+ <dl class="page-index">
+ <dt>Command line options</dt>
+ </dl>
+ </dd>
+
       <dt>Introduction for developers</dt>
 
       <dd>
@@ -41,8 +47,8 @@
           <dt><a href="#sec-intro-changing">Changing the working
           directory</a></dt>
 
- <dt><a href="#sec-intro-examining">Examining the working directory
- and changing it</a></dt>
+ <dt><a href="#sec-intro-examining">Examining the working directory and
+ changing it</a></dt>
 
           <dt>Test result</dt>
         </dl>
@@ -87,14 +93,13 @@
 
     <h2><a name="sec-intro">Introduction for users</a></h2>
 
- <p>The testing system for Boost.Build is a small set of Python modules
- and scripts for automatically testing user-obversable behaviour. It uses
- components from testing systems of <a href=
- "http://www.scons.org">Scons</a> and <a href=
- "http://subversion.tigris.org">Subversion</a>, together with some
- additional functionality.</p>
+ <p>The testing system for Boost.Build is a small set of Python modules and
+ scripts for automatically testing user-obversable behaviour. It uses
+ components from testing systems of Scons
+ and Subversion, together with
+ some additional functionality.</p>
 
- <p>To run the tests you'd need:</p>
+ <p>To run the tests you need to:</p>
 
     <ol>
       <li>Get the source tree of Boost.Build (located at <tt>tools/build</tt>
@@ -115,24 +120,46 @@
       for testing.</li>
     </ol>
 
- <p>When all is done, you can run the tests with</p>
+ <p>When all is set, you can run all the tests using the <tt>test_all.py</tt>
+ script or you can run a specific test by starting its Python script
+ directly.</p>
+
+ <p>Examples:</p>
+
 <pre class="code">
 python test_all.py
+python generators_test.py
 </pre>
 
- <p>which will use the default toolset, or you can specify toolset on the
- command line, for example:</p>
+ <p>If everything is OK, you will see a list of passed tests. Otherwise, a
+ failure will be reported.</p>
+
+ <h3><a name="sec-command-line-options">Command line options</a></h3>
+
+ <p>Test scripts will use the toolset you configured to be the default or
+ you can specify a specific one on the command line:</p>
+
 <pre class="code">
 python test_all.py borland
+python generators_test.py msvc-7.1
 </pre>
 
- <p>If everything's OK, you'll see a list of passed tests. Otherwise, a
- failure will be reported.</p>
+ <p>Other test script flags you can specify on the command line are:</p>
 
- <p>It is possible to run a specific test, for example:</p>
-<pre class="code">
-python generators_test.py
-</pre>
+ <ul>
+ <li><tt>--default-bjam</tt> -- By default the test system will use the
+ Boost Jam executable found built in its default development build
+ location. This option makes it use the default one available on your
+ system, i.e. the one found in the system path.</li>
+
+ <li><tt>--preserve</tt> -- In case of a failed test its working
+ directory will be copied to the "failed_test" directory under the
+ current directory.</li>
+
+ <li><tt>--verbose</tt> -- Makes the test system and the run build system
+ display additional output. Note though that this may cause tests that
+ check the build system output to fail.</li>
+ </ul>
 
     <h2><a name="sec-developers">Introduction for developers</a></h2>
 
@@ -144,28 +171,28 @@
       <li>For an interpreted language like Jam, without any static checks,
       testing is simply the only sefeguard we can have.</li>
 
- <li>Good tests allow to change internal design much more safely, and we
- didn't nailed everything down yet.</li>
+ <li>Good tests allow us to change internal design much more safely, and we
+ have not gotten everything nailed down yet.</li>
     </ul>
 
     <p>Adding a new test is simple:</p>
 
     <ol>
       <li>Go to <tt>$boost_build_root/test/test_all.py</tt> and add new test
- name to the list at the end of file. Suppose the test name is
- "hello".</li>
+ name to the list at the end of the file. Suppose the test name is "hello".
+ </li>
 
- <li>Add a new python module, in this example "hello.py", to do actual
+ <li>Add a new python module, in this example "hello.py", to do the actual
       testing.</li>
     </ol>
 
     <p>The module, in general will perform these basic actions:</p>
 
     <ol>
- <li>Setting the initial working directory state</li>
+ <li>Set up the initial working directory state</li>
 
       <li>
- Running the build system and checking:
+ Run the build system and check the results:
 
         <ol>
           <li>generated output,</li>
@@ -176,10 +203,10 @@
         </ol>
       </li>
 
- <li>Adding, removing or touching files, or changing their content and
- then repeating the previous step, until satisfied.</li>
+ <li>Add, remove or touch files or change their content and then repeat
+ the previous step until satisfied.</li>
 
- <li>Cleaning up</li>
+ <li>Clean up</li>
     </ol>
 
     <p>The "hello.py" module might contain:</p>
@@ -204,12 +231,12 @@
 
 t.run_build_system()
 
-# First, create a list of three pathnames
+# First, create a list of three pathnames.
 file_list = List("bin/$toolset/debug/") * List("hello.exe hello.obj")
 # Second, assert that those files were added as result of the last build system invocation.
 t.expect_addition(file_list)
 
-# Invoke the build system once again
+# Invoke the build system once again.
 t.run_build_system("clean")
 # Check if the files added previously were removed.
 t.expect_removal(file_list)
@@ -221,18 +248,18 @@
     <p>The <tt>test</tt> directory contains a file "template.py" which can be
     used as a start for your own tests.</p>
 
- <p>Overview of the most important methods of class
- <tt>TestBoostBuild</tt> follows.</p>
+ <p>Overview of the most important methods of class <tt>Tester</tt> follows.
+ </p>
 
     <h3><a name="sec-intro-changing">Changing the working directory</a></h3>
 
- <p>The class <tt>TestBoostBuild</tt> creates a temporary directory in its
+ <p>The class <tt>Tester</tt> creates a temporary directory in its
     constructor and changes to that directory. It can be modified by calling
     these methods:</p>
 
     <ul>
- <li><tt>set_tree</tt> -- sets the content of the working directory to
- be equal to the content of the specified directory. This method is
+ <li><tt>set_tree</tt> -- sets the content of the working directory to be
+ equal to the content of the specified directory. This method is
       preferrable when directory tree for testing is large.</li>
 
       <li><tt>write</tt> -- sets the content of file in a working directory.
@@ -245,28 +272,27 @@
     <h3><a name="sec-intro-examining">Examining the working directory and
     changing it</a></h3>
 
- <p>The method <tt>read</tt>, inherited from the <tt>TestCmd</tt> class,
- can be used to read any file in the working directory and check its
- content. <tt>TestBoostBuild</tt> adds another method for tracking
- changes. Whenever build system is run (via <tt>run_build_system</tt>),
- the state of working dir before and after running is recorded. In
- addition, difference between the two states -- i.e. lists of files that
- were added, removed, modified or touched -- is stored in two member
- variables, <tt>tree_difference</tt> and
- <tt>unexpected_difference</tt>.</p>
-
- <p>After than, the test author may specify that some change is expected,
- for example, by calling <tt>expect_addition("foo")</tt>. This call will
- check if the file was indeed added, and if so, will remove its name from
- the list of added files in <tt>unexpected_difference</tt>. Likewise, it's
- possible to specify that some changes are not interesting, for example a
- call <tt>ignore("*.obj")</tt> will just remove every files with ".obj"
+ <p>The method <tt>read</tt>, inherited from the <tt>TestCmd</tt> class, can
+ be used to read any file in the working directory and check its content.
+ <tt>Tester</tt> adds another method for tracking changes. Whenever the build
+ system is run (using <a href="#method-run_build_system"><tt>run_build_system
+ </tt></a>), the working dir state before and after running is recorded. In
+ addition, difference between the two states -- i.e. lists of files that were
+ added, removed, modified or touched -- are stored in two member variables -
+ <tt>tree_difference</tt> and <tt>unexpected_difference</tt>.</p>
+
+ <p>After than, the test author may specify that some change is expected, for
+ example, by calling <tt>expect_addition("foo")</tt>. This call will check if
+ the file was indeed added, and if so, will remove its name from the list of
+ added files in <tt>unexpected_difference</tt>. Likewise, it is possible to
+ specify that some changes are not interesting, for example a call to
+ <tt>ignore("*.obj")</tt> will just remove every file with the ".obj"
     extension from <tt>unexpected_difference</tt>.</p>
 
     <p>When test has finished with expectations and ignoring, the member
- <tt>unexpected_difference</tt> will contain the list of all changes not
- yet accounted for. It is possible to assure that this list is empty by
- calling <tt>expect_nothing_more</tt> member function.</p>
+ <tt>unexpected_difference</tt> will contain the list of all changes not yet
+ accounted for. It is possible to assure that this list is empty by calling
+ the <tt>expect_nothing_more</tt> member function.</p>
 
     <h3><a name="sec-intro-results">Test result</a></h3>
 
@@ -277,24 +303,74 @@
     <tt>pass_test</tt> and <tt>fail_test</tt> are used to explicitly give the
     test outcome.</p>
 
- <p>Typically, after test termination, the working directory is erased. To
- debug a failed test, you should add "--preserve" option when invoking
- test. On failure, the working directory will be copied to "failed_test"
- directory in the current dir.</p>
+ <p>Typically, after test termination, the working directory is erased. See
+ the "--preserve" command line option
+ for information on how to preserve the working directory content for failed
+ tests for debugging purposes.</p>
 
     <h2 id="sec-reference">Reference documentation</h2>
 
     <p>The test system is composed of class <tt>Tester</tt>, derived form
- <tt>TestCmd.TestCmd</tt>, and helper class <tt>List</tt>. The methods of
- <tt>Tester</tt>, and the class <tt>List</tt> are described below.</p>
+ <tt>TestCmd.TestCmd</tt>, and helper class <tt>List</tt>. <tt>Tester</tt>
+ and <tt>List</tt> methods are described below.</p>
 
- <p>The documentation frequently refer to filename. In all cases, files
- are specified in unix style: a sequence of components, separated by "/".
- This is true on all platforms. In some contexts, a list of files is
- allowed. In that case any object with sequence interface is allowed.</p>
+ <p>The documentation frequently refers to <tt>filename</tt>. In all cases,
+ files are specified in unix style: a sequence of components, separated by
+ "/". This is true on all platforms. In some contexts a list of files is
+ allowed. In those cases any object with a sequence interface is allowed.</p>
+
+ <h3><a name="method-__init__">Method <tt>__init__(self, arguments="",
+ executable="bjam", match=TestCmd.match_exact, boost_build_path=None,
+ translate_suffixes=True, pass_toolset=True, use_test_config=True,
+ ignore_toolset_requirements=True, workdir="", **keywords)</tt></a></h3>
 
- <h3><a name="method-__init__">Method <tt>__init__(self, workdir='',
- arguments='', executable='bjam')</tt></a></h3>
+ <p><b>Optional arguments:</b></p>
+
+ <ul>
+ <li><tt>arguments</tt>
+ -- Arguments passed to the run executable.</li>
+ <li><tt>executable</tt>
+ -- Name of the executable to invoke.</li>
+ <li><tt>match</tt>
+ -- Function to use for compating actual and expected file contents.
+ </li>
+ <li><tt>boost_build_path</tt>
+ -- Boost build path to be passed to the run executable.</li>
+ <li><tt>translate_suffixes</tt>
+ -- Whether to update suffixes on the the file names passed from the
+ test script so they match those actually created by the current
+ toolset. For example, static library files are specified by using
+ the .lib suffix but when the 'gcc' toolset is used it actually
+ creates them using the .a suffix.</li>
+ <li><tt>pass_toolset</tt>
+ -- Whether the test system should pass the specified toolset to the
+ run executable.</li>
+ <li><tt>use_test_config</tt>
+ -- Whether the test system should tell the run executable to read in
+ the test_config.jam configuration file.</li>
+ <li><tt>ignore_toolset_requirements</tt>
+ -- Whether the test system should tell the run executable to ignore
+ toolset requirements.</li>
+ <li><tt>workdir</tt>
+ -- Indicates an absolute directory where the test will be run from.
+ </li>
+ </ul>
+
+ <p><b>Optional arguments inherited from the base class:</b></p>
+
+ <ul>
+ <li><tt>description</tt>
+ -- Test description string displayed in case of a failed test.</li>
+ <li><tt>subdir</tt>
+ -- List of subdirectories to automatically create under the working
+ directory. Each subdirectory needs to be specified separately
+ parent coming before its child.</li>
+ <li><tt>verbose</tt>
+ -- Flag that may be used to enable more verbose test system output.
+ Note that it does not also enable more verbose build system output
+ like the <a href="#sec-command-line-options">"--verbose" command
+ line option</a> does.</li>
+ </ul>
 
     <p><b>Effects:</b></p>
 
@@ -302,20 +378,23 @@
       <li>Remembers the current working directory in member
       <tt>original_workdir</tt>.</li>
 
- <li>Determines the location of executable (<code>bjam</code> by
+ <li>Determines the location of the executable (<code>bjam</code> by
       default) and build system files, assuming that the current directory is
       <tt>tools/build/test</tt>. Formulates jam invocation command, which
- will include explicit setting for <tt>BOOST_BUILD_PATH</tt> variable
+ will include explicit setting for the <tt>BOOST_BUILD_PATH</tt> variable
       and arguments passed to this methods, if any. This command will be used
- by subsequent invocation of <a href=
- "#method-run_build_system"><tt>run_build_system</tt></a>. Finally,
- initializes the base class.</li>
+ by subsequent invocation of <a href="#method-run_build_system"><tt>
+ run_build_system</tt></a>. Finally, initializes the base class.</li>
 
- <li>Changes current working dir to the temporary working directory
- created by the base constructor.</li>
+ <li>Changes the current working directory to the temporary working
+ directory created by the base constructor.</li>
 
- <li>If you want to run a test in a existing directory, pass it to
+ <li>If you want to run a test in an existing directory, pass it as
       <tt>workdir</tt>.</li>
+
+ <li> Most parameters passed to this constructor function may be overruled
+ for each specific test system run using <a href=
+ "#method-run_build_system"><tt>run_build_system</tt></a> parameters.
     </ol>
 
     <h3><a name="method-set_tree">Method <tt>set_tree(self,
@@ -348,13 +427,14 @@
 
     <p><b>Effects:</b></p>
 
- <p>Sets the access and modification times for all files in <tt>names</tt>
- to the current time. All the elements in <tt>names</tt> should be
- relative paths.</p>
+ <p>Sets the access and modification times for all files in <tt>names</tt> to
+ the current time. All the elements in <tt>names</tt> should be relative
+ paths.</p>
 
     <h3><a name="method-run_build_system">Method <tt>run_build_system(self,
- subdir='', extra_args='', stdout=None, stderr='', status=0,
- **kw)</tt></a></h3>
+ extra_args="", subdir="", stdout=None, stderr="", status=0, match=None,
+ pass_toolset=None, use_test_config=None, ignore_toolset_requirements=None,
+ expected_duration=None, **kw)</tt></a></h3>
 
     <p><b>Effects:</b></p>
 
@@ -375,18 +455,18 @@
       invocation with values to appropriate parameters, if they are not
       <tt>None</tt>. If any difference is found, the test fails.</li>
 
- <li>
- <p>Stores the new state of the working directory in
- <tt>self.tree</tt>. Computes the difference between previous and
- current trees and store them in variables
- <tt>self.tree_difference</tt> and
- <tt>self.unexpected_difference</tt>.</p>
-
- <p>Both variables are instances of class
- <tt>tree.Trees_different</tt>, which have four attributes:
- <tt>added_files</tt>, <tt>removed_files</tt>, <tt>modified_files</tt>
- and <tt>touched_files</tt>. Each is a list of strings.</p>
- </li>
+ <li>If the <tt>expected_duration</tt> parameter is specified then it
+ represents the maximal allowed time in seconds for the test to run. The
+ test will be marked as failed if its duration is greater than the given
+ <tt>expected_duration</tt> parameter value.</li>
+
+ <li>Stores the new state of the working directory in <tt>self.tree</tt>.
+ Computes the difference between previous and current trees and stores them
+ in variables <tt>self.tree_difference</tt> and
+ <tt>self.unexpected_difference</tt>. Both variables are instances of class
+ <tt>tree.Trees_different</tt>, which have four attributes:
+ <tt>added_files</tt>, <tt>removed_files</tt>, <tt>modified_files</tt> and
+ <tt>touched_files</tt>. Each is a list of strings.</p></li>
     </ol>
 
     <h3><a name="method-read">Method <tt>read(self, name)</tt></a></h3>
@@ -396,104 +476,95 @@
     <p>Read the specified file and returns it content. Raises an exception is
     the file is absent.</p>
 
- <h3><a name="method-read_and_strip">Method <tt>read_and_strip(self,
- name)</tt></a></h3>
+ <h3><a name="method-read_and_strip">Method <tt>read_and_strip(self, name)
+ </tt></a></h3>
 
     <p><b>Effects:</b></p>
 
- <p>Read the specified file and returns it content, after removing
- trailing whitespace from every line. Raises an exception is the file is
- absent.</p>
+ <p>Read the specified file and returns it content, after removing trailing
+ whitespace from every line. Raises an exception is the file is absent.</p>
 
     <p><b>Rationale:</b></p>
 
- <p>Althought this method is questionable, there are a lot of cases when
- jam or shells it uses insert spaces. It seems that introducing this
- method is much simpler than dealing with all those cases.</p>
-
- <h3><a name="methods-expectations">Methods for declaring
- expectations</a></h3>
-
- <p>Accordingly to the number of changes kinds that are detected, there
- are four methods that specify that test author expects a specific change
- to occur. They check <tt>self.unexpected_difference</tt>, and if the
- change is present there, it is removed. Otherwise, test fails.</p>
+ <p>Althought this method is questionable, there are a lot of cases when jam
+ or shells it uses insert spaces. It seems that introducing this method is
+ much simpler than dealing with all those cases.</p>
+
+ <h3><a name="methods-expectations">Methods for declaring expectations</a>
+ </h3>
+
+ <p>Accordingly to the number of changes kinds that are detected, there are
+ four methods that specify that test author expects a specific change to
+ occur. They check <tt>self.unexpected_difference</tt>, and if the change is
+ present there, it is removed. Otherwise, test fails.</p>
 
     <p>Each method accepts a list of names. Those names use <tt>/</tt> path
- separator on all systems. Additionaly, the test system translates
- suffixes appropriately. For the test to be portable, suffixes should use
- Windows convention: <tt>exe</tt> for executables, <tt>dll</tt> for
- dynamic libraries and <tt>lib</tt> for static libraries. Lastly, the
- string "$toolset" in file names is replaced by the name of tested
- toolset.</p>
+ separator on all systems. Additionaly, the test system translates suffixes
+ appropriately. For the test to be portable, suffixes should use Windows
+ convention: <tt>exe</tt> for executables, <tt>dll</tt> for dynamic libraries
+ and <tt>lib</tt> for static libraries. Lastly, the string "$toolset" in file
+ names is replaced by the name of tested toolset.</p>
 
     <p><b>Note:</b> The <tt>List</tt> helper class might be useful to create
     lists of names.</p>
 
- <p><b>Note:</b> The file content can be examined using
+ <p><b>Note:</b> The file content can be examined using the
     <tt>TestCmd.read</tt> function.</p>
 
     <p>The members are:</p>
 
     <ul>
       <li>expect_addition</li>
-
       <li>expect_removal</li>
-
       <li>expect_modification</li>
-
       <li>expect_nothing</li>
     </ul>
 
     <p>Note that <tt>expect_modification</tt> is used to check that a either
- file content or timestamp has changed. The rationale is that some
- compilers change content even if sources does not change, and it's easier
- to have a method which checks for both content and time changes.</p>
+ file content or timestamp has changed. The rationale is that some compilers
+ change content even if sources does not change, and it's easier to have a
+ method which checks for both content and time changes.</p>
 
- <p>There's also a member <tt>expect_nothing_more</tt>, which checks that
- all the changes are either expected or ignored, in other words that
+ <p>There's also a member <tt>expect_nothing_more</tt>, which checks that all
+ the changes are either expected or ignored, in other words that
     <tt>unexpected_difference</tt> is empty by now.</p>
 
- <p>Lastly, there's a method to compare file content with expected
- content:</p>
- <tt>expect_content(self, name, content, exact=0)</tt>
+ <p>Lastly, there's a method to compare file content with expected content:
+ </p>
+ <tt>expect_content(self, name, content, exact=0)</tt>
 
- <p>The method fails the test if the content of file identified by 'name'
- is different from 'content'. If 'exact' is true, the file content is used
+ <p>The method fails the test if the content of file identified by 'name' is
+ different from 'content'. If 'exact' is true, the file content is used
     as-is, otherwise, two transformations are applied:</p>
 
     <ul>
       <li>The <tt>read_and_strip</tt> method is used to read the file, which
       removes trailing whitespace</li>
 
- <li>Each backslash in the file content is converted to forward
- slash.</li>
+ <li>Each backslash in the file content is converted to forward slash.</li>
     </ul>
 
     <h3><a name="methods-ignoring">Methods for ignoring changes</a></h3>
 
     <p>There are five methods which ignore changes made to the working tree.
- They silently remove elements from <tt>self.unexpected_difference</tt>,
- and don't generate error if element is not found. They accept shell style
+ They silently remove elements from <tt>self.unexpected_difference</tt>, and
+ don't generate error if element is not found. They accept shell style
     wildcard.</p>
 
     <p>The following methods correspond to four kinds of changes:</p>
 
     <ul>
       <li>ignore_addition(self, wildcard)</li>
-
       <li>ignore_removal(self, wildcard)</li>
-
       <li>ignore_modification(self, wildcard)</li>
-
       <li>ignore_touch(self, wilcard)</li>
     </ul>
 
- <p>The method <tt>ignore(self, wildcard)</tt> ignores all the changes
- made to files that match a wildcard.</p>
+ <p>The method <tt>ignore(self, wildcard)</tt> ignores all the changes made
+ to files that match a wildcard.</p>
 
- <h3><a name="methods-result">Methods for explicitly specifying
- results</a></h3>
+ <h3><a name="methods-result">Methods for explicitly specifying results</a>
+ </h3>
 
     <h4>Method <tt>pass_test(self, condition=1)</tt></h4>
 
@@ -503,51 +574,46 @@
 
     <h4>Method <tt>fail_test(self, condition=1)</tt></h4>
 
- <p><b>Effects:</b> Cause the test to fail if <tt>condition</tt> is
- true.</p>
+ <p><b>Effects:</b> Cause the test to fail if <tt>condition</tt> is true.</p>
 
     <h3><a name="class-list">Helper class <tt>List</tt></a></h3>
- The class has sequence interface and two additional methods.
+ The class has sequence interface and two additional methods.
 
     <h4>Method <tt>__init__(self, string)</tt></h4>
 
- <p><b>Effects:</b> Splits the string on unescaped spaces and tabs. The
- split components can further be retrieved using standard sequence
- access.</p>
+ <p><b>Effects:</b> Splits the string on unescaped spaces and tabs. The split
+ components can further be retrieved using standard sequence access.</p>
 
     <h4>Method <tt>__mul__(self, other)</tt></h4>
 
- <p><b>Effects:</b> Returns an <tt>List</tt> instance, which elements are
- all possible concatenations of two string, first of which is from
- <tt>self</tt>, and second of which is from <tt>other</tt>.</p>
+ <p><b>Effects:</b> Returns an <tt>List</tt> instance, which elements are all
+ possible concatenations of two string, first of which is from <tt>self</tt>,
+ and second of which is from <tt>other</tt>.</p>
 
     <p>The class also defines <tt>__str__</tt> and <tt>__repr__</tt> methods.
- Finally, there's <tt>__coerce__</tt> method which allows to convert
- strings to instances of <tt>List</tt>.</p>
+ Finally, there's <tt>__coerce__</tt> method which allows to convert strings
+ to instances of <tt>List</tt>.</p>
 
     <p><b>Example:</b></p>
 <pre>
     l = "a b" * List("c d")
     for e in l:
- print e
-
+ print e
 </pre>
 
- <p>will output</p>
+ <p>will output:</p>
 <pre>
     ac
     ad
     bc
     bd
-
+
 </pre>
     <hr>
-
- <p class="revision">Last modified: Mar 11, 2005</p>
-
- <p>&copy; Copyright Vladimir Prus 2002, 2003, 2004, 2005.
+ <p class="revision">Last modified: May 02, 2008</p>
+ <p>&copy; Copyright Vladimir Prus 2002, 2003, 2004, 2005.<br>
+ &copy; Copyright Jurko Gospodnetic 2008.<br>
     Distributed under the Boost Software License, Version 1.0.
     (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)</p>
   </body>
 </html>
-

Modified: branches/CMake/release/tools/build/v2/test/unit_test.py
==============================================================================
--- branches/CMake/release/tools/build/v2/test/unit_test.py (original)
+++ branches/CMake/release/tools/build/v2/test/unit_test.py 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,18 +5,17 @@
 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
 # Test the unit_test rule
-from BoostBuild import Tester, List
+import BoostBuild
 
-t = Tester()
+t = BoostBuild.Tester()
 
-# Create the needed files
-t.write("project-root.jam", """
+# Create the needed files.
+t.write("Jamroot.jam", """
 using testing ;
-""")
-t.write("Jamfile", """
 lib helper : helper.cpp ;
 unit-test test : test.cpp : <library>helper ;
 """)
+
 t.write("test.cpp", """
 void helper();
 int main()
@@ -37,7 +36,4 @@
 t.run_build_system("link=static")
 t.expect_addition("bin/$toolset/debug/link-static/test.passed")
 
-
-
-
 t.cleanup()

Modified: branches/CMake/release/tools/build/v2/tools/acc.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/acc.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/acc.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -86,9 +86,10 @@
     $(CONFIG_COMMAND) -AA $(LINKFLAGS) -o "$(<[1])" -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS)
 }
 
+SPACE = " " ;
 actions acc.link.dll bind NEEDLIBS
 {
- $(CONFIG_COMMAND) -AA -b $(LINKFLAGS) -o "$(<[1])" -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS)
+ $(CONFIG_COMMAND) -AA -b $(LINKFLAGS) -o "$(<[1])" -Wl,+h$(SPACE)-Wl,$(<[-1]:D=) -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS)
 }
 
 actions acc.compile.c

Modified: branches/CMake/release/tools/build/v2/tools/builtin.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/builtin.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/builtin.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -29,7 +29,7 @@
 import types/register ;
 
 
-.os-names = amiga aix bsd cygwin darwin dos emx freebsd hpux linux netbsd
+.os-names = amiga aix bsd cygwin darwin dos emx freebsd hpux iphone linux netbsd
     openbsd osf qnx qnxnto sgi solaris sun sunos svr4 sysv ultrix unix unixware
     vms windows ;
 
@@ -42,6 +42,7 @@
 
 # Translates from bjam current OS to the os tags used in host-os and target-os,
 # i.e. returns the running host-os.
+#
 local rule default-host-os ( )
 {
     local host-os ;
@@ -206,6 +207,9 @@
 
     # HP/PA-RISC
     parisc
+
+ # Advanced RISC Machines
+ arm
 
     # Combined architectures for platforms/toolsets that support building for
     # multiple architectures at once. "combined" would be the default multi-arch
@@ -243,6 +247,9 @@
 
     # HP/PA-RISC
     700 7100 7100lc 7200 7300 8000
+
+ # Advanced RISC Machines
+ armv2 armv2a armv3 armv3m armv4 armv4t armv5 armv5t armv5te armv6 armv6j iwmmxt ep9312
 
     : propagated optional ;
 
@@ -272,6 +279,7 @@
 #
 # Lastly, makes appropriate value of 'variant' property expand to the full
 # property set.
+#
 rule variant ( name # Name of the variant
     : parents-or-properties * # Specifies parent variants, if
                                # 'explicit-properties' are given, and
@@ -437,15 +445,14 @@
 
 scanner.register c-scanner : include ;
 
-# It most cases where a CPP file or a H file is a source of some action,
-# we should rebuild the result if any of files included by CPP/H
-# are changed. One case when this is not needed is installation,
-# which is handled specifically.
+# It most cases where a CPP file or a H file is a source of some action, we
+# should rebuild the result if any of files included by CPP/H are changed. One
+# case when this is not needed is installation, which is handled specifically.
 type.set-scanner CPP : c-scanner ;
 type.set-scanner C : c-scanner ;
-# One case where scanning of H/HPP files is necessary is PCH generation --
-# if any header included by HPP being precompiled changes, we need to
-# recompile the header.
+# One case where scanning of H/HPP files is necessary is PCH generation -- if
+# any header included by HPP being precompiled changes, we need to recompile the
+# header.
 type.set-scanner H : c-scanner ;
 type.set-scanner HPP : c-scanner ;
 
@@ -453,6 +460,7 @@
 # The generator class for libraries (target type LIB). Depending on properties
 # it will request building of the appropriate specific library type --
 # -- SHARED_LIB, STATIC_LIB or SHARED_LIB.
+#
 class lib-generator : generator
 {
     rule __init__ ( * : * )
@@ -509,6 +517,7 @@
 
 # The implementation of the 'lib' rule. Beyond standard syntax that rule allows
 # simplified: "lib a b c ;".
+#
 rule lib ( names + : sources * : requirements * : default-build *
     : usage-requirements * )
 {
@@ -634,6 +643,7 @@
 
     # For all virtual targets for the same dependency graph as self, i.e. which
     # belong to the same main target, add their directories to the include path.
+ #
     rule adjust-properties ( property-set )
     {
         local s = [ $(self.targets[1]).creating-subvariant ] ;
@@ -647,6 +657,7 @@
 # type used to represent 'action' in the constructed dependency graph to
 # 'compile-action'. That class in turn adds additional include paths to handle
 # cases when a source file includes headers which are generated themselves.
+#
 class C-compiling-generator : generator
 {
     rule __init__ ( id : source-types + : target-types + : requirements *
@@ -673,10 +684,12 @@
 # FIXME: this is ugly, should find a better way (we'd like client code to
 # register all generators as "generators.some-rule" instead of
 # "some-module.some-rule".)
+#
 IMPORT $(__name__) : register-c-compiler : : generators.register-c-compiler ;
 
 
 # The generator class for handling EXE and SHARED_LIB creation.
+#
 class linking-generator : generator
 {
     import path ;
@@ -848,6 +861,7 @@
 
 
 # The generator class for handling STATIC_LIB creation.
+#
 class archive-generator : generator
 {
     import property-set ;
@@ -912,6 +926,7 @@
 
 # Generator that accepts everything and produces nothing. Useful as a general
 # fallback for toolset-specific actions like PCH generation.
+#
 class dummy-generator : generator
 {
     import property-set ;

Modified: branches/CMake/release/tools/build/v2/tools/common.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/common.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/common.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,8 +5,8 @@
 # Distributed under the Boost Software License, Version 1.0.
 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
-# Provides actions common to all toolsets, for as making directoies and
-# removing files.
+# Provides actions common to all toolsets, such as creating directories and
+# removing files.
 
 import os ;
 import modules ;
@@ -63,6 +63,7 @@
     #
     # Returns 'true' if the configuration has been added and an empty value if
     # it already exists. Reports an error if the configuration is 'used'.
+ #
     rule register ( id )
     {
         if $(id) in $(self.used)
@@ -88,6 +89,7 @@
     # Returns 'true' if the state of the configuration has been changed to
     # 'used' and an empty value if it the state wasn't changed. Reports an error
     # if the configuration isn't known.
+ #
     rule use ( id )
     {
         if ! $(id) in $(self.all)
@@ -109,24 +111,28 @@
     }
 
     # Return all registered configurations.
+ #
     rule all ( )
     {
         return $(self.all) ;
     }
 
     # Return all used configurations.
+ #
     rule used ( )
     {
         return $(self.used) ;
     }
 
     # Returns the value of a configuration parameter.
+ #
     rule get ( id : param )
     {
         return $(self.$(param).$(id)) ;
     }
 
     # Sets the value of a configuration parameter.
+ #
     rule set ( id : param : value * )
     {
         self.$(param).$(id) = $(value) ;
@@ -140,15 +146,17 @@
 # will check that the combination of all parameter values is unique in all
 # invocations.
 #
-# Each parameter name corresponds to a subfeature. This rule will declare
-# a subfeature the first time a non-empty parameter value is passed and will
+# Each parameter name corresponds to a subfeature. This rule will declare a
+# subfeature the first time a non-empty parameter value is passed and will
 # extend it with all the values.
 #
 # The return value from this rule is a condition to be used for flags settings.
-rule check-init-parameters ( toolset : * )
+#
+rule check-init-parameters ( toolset requirement * : * )
 {
     local sig = $(toolset) ;
     local condition = <toolset>$(toolset) ;
+ local subcondition ;
     for local index in 2 3 4 5 6 7 8 9
     {
         local name = $($(index)[1]) ;
@@ -185,6 +193,7 @@
                 .had-value.$(toolset).$(name) = true ;
             }
             feature.extend-subfeature toolset $(t) : $(name) : $(value) ;
+ subcondition += <toolset-$(t):$(name)>$(value) ;
         }
         else
         {
@@ -219,11 +228,25 @@
     .all-signatures += $(sig) ;
     .init-loc.$(sig) = [ errors.nearest-user-location ] ;
 
+ # If we have a requirement, this version should only be applied under that
+ # condition. To accomplish this we add a toolset requirement that imposes
+ # the toolset subcondition, which encodes the version.
+ if $(requirement)
+ {
+ local r = <toolset>$(toolset) $(requirement) ;
+ r = $(r:J=,) ;
+ toolset.add-requirements $(r):$(subcondition) ;
+ }
+
+ # We add the requirements, if any, to the condition to scope the toolset
+ # variables and options to this specific version.
+ condition += $(requirement) ;
+
     if $(.show-configuration)
     {
         ECHO notice: $(condition) ;
     }
- return $(condition) ;
+ return $(condition:J=/) ;
 }
 
 
@@ -235,6 +258,7 @@
 # This rule returns the command to be used when invoking the tool. If we can't
 # find the tool, a warning is issued. If 'path-last' is specified, PATH is
 # checked after 'additional-paths' when searching for 'tool'.
+#
 rule get-invocation-command-nodefault (
     toolset : tool : user-provided-command * : additional-paths * : path-last ? )
 {
@@ -265,6 +289,7 @@
 
 # Same as get-invocation-command-nodefault, except that if no tool is found,
 # returns either the user-provided-command, if present, or the 'tool' parameter.
+#
 rule get-invocation-command (
     toolset : tool : user-provided-command * : additional-paths * : path-last ? )
 {
@@ -288,6 +313,7 @@
 
 # Given an invocation command return the absolute path to the command. This
 # works even if command has no path element and was found on the PATH.
+#
 rule get-absolute-tool-path ( command )
 {
     if $(command:D)
@@ -304,9 +330,10 @@
 
 # Attempts to find tool (binary) named 'name' in PATH and in 'additional-paths'.
 # If found in PATH, returns 'name' and if found in additional paths, returns
-# absolute name. If the tool is found in several directories, returns all paths.
-# Otherwise, returns an empty string. If 'path-last' is specified, PATH is
-# searched after 'additional-paths'.
+# absolute name. If the tool is found in several directories, returns the
+# first path found. Otherwise, returns an empty string. If 'path-last' is
+# specified, PATH is searched after 'additional-paths'.
+#
 rule find-tool ( name : additional-paths * : path-last ? )
 {
     local path = [ path.programs-path ] ;
@@ -342,15 +369,16 @@
 
 # Checks if 'command' can be found either in path or is a full name to an
 # existing file.
+#
 rule check-tool-aux ( command )
 {
     if $(command:D)
     {
         if [ path.exists $(command) ]
             # Both NT and Cygwin will run .exe files by their unqualified names.
- || [ os.on-windows ] && [ path.exists $(command).exe ]
+ || ( [ os.on-windows ] && [ path.exists $(command).exe ] )
             # Only NT will run .bat files by their unqualified names.
- || [ os.name ] = NT && [ path.exists $(command).bat ]
+ || ( ( [ os.name ] = NT ) && [ path.exists $(command).bat ] )
         {
             return $(command) ;
         }
@@ -368,6 +396,7 @@
 # Checks that a tool can be invoked by 'command'. If command is not an absolute
 # path, checks if it can be found in 'path'. If comand is an absolute path,
 # check that it exists. Returns 'command' if ok or empty string otherwise.
+#
 rule check-tool ( xcommand + )
 {
     if [ check-tool-aux $(xcommand[1]) ] ||
@@ -380,11 +409,13 @@
 
 # Handle common options for toolset, specifically sets the following flag
 # variables:
-# - CONFIG_COMMAND to 'command'
-# - OPTIONS for compile.c to the value of <cflags> in options
-# - OPTIONS for compile.c++ to the value of <cxxflags> in options
-# - OPTIOns for compile to the value of <compileflags> in options
-# - OPTIONs for link to the value of <linkflags> in options
+# - CONFIG_COMMAND to $(command)
+# - OPTIONS for compile to the value of <compileflags> in $(options)
+# - OPTIONS for compile.c to the value of <cflags> in $(options)
+# - OPTIONS for compile.c++ to the value of <cxxflags> in $(options)
+# - OPTIONS for compile.fortran to the value of <fflags> in $(options)
+# - OPTIONS for link to the value of <linkflags> in $(options)
+#
 rule handle-options ( toolset : condition * : command * : options * )
 {
     if $(.debug-configuration)
@@ -392,22 +423,30 @@
         ECHO "notice: will use '$(command)' for $(toolset), condition $(condition:E=(empty))" ;
     }
 
- # The last parameter ('true') says it's OK to set flags for another module.
- toolset.flags $(toolset) CONFIG_COMMAND $(condition) : $(command) : unchecked ;
- toolset.flags $(toolset).compile OPTIONS $(condition) :
- [ feature.get-values <compileflags> : $(options) ] : unchecked ;
- toolset.flags $(toolset).compile.c OPTIONS $(condition) :
- [ feature.get-values <cflags> : $(options) ] : unchecked ;
- toolset.flags $(toolset).compile.c++ OPTIONS $(condition) :
- [ feature.get-values <cxxflags> : $(options) ] : unchecked ;
+ # The last parameter ('unchecked') says it is OK to set flags for another
+ # module.
+ toolset.flags $(toolset) CONFIG_COMMAND $(condition) : $(command)
+ : unchecked ;
+
+ toolset.flags $(toolset).compile OPTIONS $(condition) :
+ [ feature.get-values <compileflags> : $(options) ] : unchecked ;
+
+ toolset.flags $(toolset).compile.c OPTIONS $(condition) :
+ [ feature.get-values <cflags> : $(options) ] : unchecked ;
+
+ toolset.flags $(toolset).compile.c++ OPTIONS $(condition) :
+ [ feature.get-values <cxxflags> : $(options) ] : unchecked ;
+
     toolset.flags $(toolset).compile.fortran OPTIONS $(condition) :
- [ feature.get-values <fflags> : $(options) ] : unchecked ;
- toolset.flags $(toolset).link OPTIONS $(condition) :
- [ feature.get-values <linkflags> : $(options) ] : unchecked ;
+ [ feature.get-values <fflags> : $(options) ] : unchecked ;
+
+ toolset.flags $(toolset).link OPTIONS $(condition) :
+ [ feature.get-values <linkflags> : $(options) ] : unchecked ;
 }
 
 
-# Returns the location of the "program files" directory on a windows platform.
+# Returns the location of the "program files" directory on a Windows platform.
+#
 rule get-program-files-dir ( )
 {
     local ProgramFiles = [ modules.peek : ProgramFiles ] ;
@@ -455,6 +494,7 @@
 # visible in the environment seen by subsequently executed commands. In other
 # words, on Unix systems, the variable is exported, which is consistent with the
 # only possible behavior on Windows systems.
+#
 rule variable-setting-command ( variable : value )
 {
     local nl = "
@@ -466,6 +506,34 @@
     }
     else
     {
+ # (todo)
+ # The following does not work on CYGWIN and needs to be fixed. On
+ # CYGWIN the $(nl) variable holds a Windows new-line \r\n sequence that
+ # messes up the executed export command which then reports that the
+ # passed variable name is incorrect. This is most likely due to the
+ # extra \r character getting interpreted as a part of the variable name.
+ #
+ # Several ideas pop to mind on how to fix this:
+ # * One way would be to separate the commands using the ; shell
+ # command separator. This seems like the quickest possible
+ # solution but I do not know whether this would break code on any
+ # platforms I I have no access to.
+ # * Another would be to not use the terminating $(nl) but that would
+ # require updating all the using code so it does not simply
+ # prepend this variable to its own commands.
+ # * I guess the cleanest solution would be to update Boost Jam to
+ # allow explicitly specifying \n & \r characters in its scripts
+ # instead of always relying only on the 'current OS native newline
+ # sequence'.
+ #
+ # Some code found to depend on this behaviour:
+ # * This Boost Build module.
+ # * __test__ rule.
+ # * path-variable-setting-command rule.
+ # * python.jam toolset.
+ # * xsltproc.jam toolset.
+ # * fop.jam toolset.
+ # (todo) (07.07.2008.) (Jurko)
         return "$(variable)=$(value)$(nl)export $(variable)$(nl)" ;
     }
 }
@@ -473,6 +541,7 @@
 
 # Returns a command to sets a named shell path variable to the given NATIVE
 # paths on the current platform.
+#
 rule path-variable-setting-command ( variable : paths * )
 {
     local sep = [ os.path-separator ] ;
@@ -482,6 +551,7 @@
 
 # Returns a command that prepends the given paths to the named path variable on
 # the current platform.
+#
 rule prepend-path-variable-command ( variable : paths * )
 {
     return [ path-variable-setting-command $(variable)
@@ -492,9 +562,10 @@
 # Return a command which can create a file. If 'r' is result of invocation, then
 # 'r foobar' will create foobar with unspecified content. What happens if file
 # already exists is unspecified.
+#
 rule file-creation-command ( )
 {
- if [ modules.peek : NT ]
+ if [ os.name ] = NT
     {
         return "echo. > " ;
     }
@@ -508,9 +579,10 @@
 # Returns a command that may be used for 'touching' files. It is not a real
 # 'touch' command on NT because it adds an empty line at the end of file but it
 # works with source files.
+#
 rule file-touch-command ( )
 {
- if [ os.name ] in NT
+ if [ os.name ] = NT
     {
         return "echo. >> " ;
     }
@@ -523,25 +595,33 @@
 
 rule MkDir
 {
- # If dir exists, don't update it. Do this even for $(DOT).
+ # If dir exists, do not update it. Do this even for $(DOT).
     NOUPDATE $(<) ;
 
     if $(<) != $(DOT) && ! $($(<)-mkdir)
     {
         # Cheesy gate to prevent multiple invocations on same dir.
- # MkDir1 has the actions.
- # Arrange for jam dirs.
-
         $(<)-mkdir = true ;
- MkDir1 $(<) ;
- Depends dirs : $(<) ;
 
- # Recursively make parent directories.
- # $(<:P) = $(<)'s parent, & we recurse until root
+ # Schedule the mkdir build action.
+ if [ os.name ] = NT
+ {
+ MkDir1-quick-fix-for-windows $(<) ;
+ }
+ else
+ {
+ MkDir1-quick-fix-for-unix $(<) ;
+ }
 
- local s = $(<:P) ;
+ # Prepare a Jam 'dirs' target that can be used to make the build only
+ # construct all the target directories.
+ DEPENDS dirs : $(<) ;
+
+ # Recursively create parent directories. $(<:P) = $(<)'s parent & we
+ # recurse until root.
 
- if $(NT)
+ local s = $(<:P) ;
+ if [ os.name ] = NT
         {
             switch $(s)
             {
@@ -550,14 +630,17 @@
             }
         }
 
- if $(s) && $(s) != $(<)
+ if $(s)
         {
- Depends $(<) : $(s) ;
- MkDir $(s) ;
- }
- else if $(s)
- {
- NOTFILE $(s) ;
+ if $(s) != $(<)
+ {
+ DEPENDS $(<) : $(s) ;
+ MkDir $(s) ;
+ }
+ else
+ {
+ NOTFILE $(s) ;
+ }
         }
     }
 }
@@ -569,6 +652,21 @@
 }
 
 
+# (todo)
+# The following quick-fix actions should be replaced using the original MkDir1
+# action once Boost Jam gets updated to correctly detect different paths leading
+# up to the same filesystem target and triggers their build action only once.
+# (todo) (04.07.2008.) (Jurko)
+actions MkDir1-quick-fix-for-unix
+{
+ mkdir -p "$(<)"
+}
+actions MkDir1-quick-fix-for-windows
+{
+ if not exist "$(<)\\" mkdir "$(<)"
+}
+
+
 actions piecemeal together existing Clean
 {
     $(RM) "$(>)"
@@ -628,7 +726,8 @@
 # value as the version number.
 # <property:/property-name/>[joiner]
 # :: Direct lookup of the given property-name value in the
-# build properties.
+# build properties. /property-name/ is a regular expression.
+# e.g. <property:toolset-.*:flavor> will match every toolset.
 # /otherwise/
 # :: The literal value of the format argument.
 #
@@ -678,10 +777,13 @@
 
                 case <property:*> :
                 local key = [ MATCH <property:(.*)> : $(f:G) ] ;
- local p = [ $(property-set).get [ MATCH <property:(.*)> : $(f:G) ] ] ;
- if $(p)
- {
- result += [ join-tag $(f:G=) : $(p) ] ;
+ local p0 = [ MATCH <($(key))> : [ $(property-set).raw ] ] ;
+ if $(p0) {
+ local p = [ $(property-set).get <$(p0)> ] ;
+ if $(p)
+ {
+ result += [ join-tag $(f:G=) : $(p) ] ;
+ }
                 }
 
                 case * :
@@ -697,7 +799,7 @@
 
 local rule join-tag ( joiner ? : tag ? )
 {
- if ! $(joinder) { joiner = - ; }
+ if ! $(joiner) { joiner = - ; }
     return $(joiner)$(tag) ;
 }
 
@@ -712,7 +814,7 @@
         case borland* : tag += bcb ;
         case como* : tag += como ;
         case cw : tag += cw ;
- case darwin* : tag += ;
+ case darwin* : tag += xgcc ;
         case edg* : tag += edg ;
         case gcc* :
         {
@@ -756,8 +858,8 @@
             version = 7 ;
         }
     }
- # On intel, version is not added, because it does not matter and it's the
- # version of vc used as backend that matters. Ideally, we'd encode the
+ # On intel, version is not added, because it does not matter and it is the
+ # version of vc used as backend that matters. Ideally, we should encode the
     # backend version but that would break compatibility with V1.
     if $(tag) = iw
     {
@@ -798,7 +900,7 @@
     # toolset, the tag rules won't even see <runtime-debugging>. Similar
     # functionality in V2 is not implemented yet, so we just check for toolsets
     # which are known to care about runtime debug.
- if <toolset>msvc in $(properties)
+ if <toolset>msvc in $(properties)
       || <stdlib>stlport in $(properties)
       || <toolset-intel:platform>win in $(properties)
     {
@@ -821,7 +923,7 @@
     local nl = "
 " ;
 
- local save-os = [ modules.peek os : name ] ;
+ local save-os = [ modules.peek os : .name ] ;
 
     modules.poke os : .name : LINUX ;
 

Modified: branches/CMake/release/tools/build/v2/tools/como-linux.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/como-linux.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/como-linux.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,9 +1,10 @@
-# Copyright 2004, 2005, 2006 Vladimir Prus
-# Distributed under the Boost Software License, Version 1.0.
-# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+# Copyright 2004, 2005, 2006 Vladimir Prus
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
 # The following #// line will be used by the regression test table generation
-# program as the column heading for HTML tables. Must not include version number.
+# program as the column heading for HTML tables. Must not include a version
+# number.
 #//Comeau
C++

 
 import toolset ;
@@ -12,34 +13,36 @@
 import common ;
 import generators ;
 
-import unix ;
+import unix ;
 import como ;
 
 feature.extend-subfeature toolset como : platform : linux ;
 
-toolset.inherit-generators como-linux
+toolset.inherit-generators como-linux
      <toolset>como <toolset-como:platform>linux : unix ;
-generators.override como-linux.prebuilt : builtin.lib-generator ;
+generators.override como-linux.prebuilt : builtin.lib-generator ;
 generators.override como-linux.searched-lib-generator : searched-lib-generator ;
 toolset.inherit-flags como-linux : unix ;
 toolset.inherit-rules como-linux : gcc ;
 
-generators.register-c-compiler como-linux.compile.c++ : CPP : OBJ
- : <toolset>como <toolset-como:platform>linux ;
+generators.register-c-compiler como-linux.compile.c++ : CPP : OBJ
+ : <toolset>como <toolset-como:platform>linux ;
 generators.register-c-compiler como-linux.compile.c : C : OBJ
- : <toolset>como <toolset-como:platform>linux ;
+ : <toolset>como <toolset-como:platform>linux ;
+
 
 rule init ( version ? : command * : options * )
 {
     local condition = [ common.check-init-parameters como-linux
         : version $(version) ] ;
-
- command = [ common.get-invocation-command como-linux : como
+
+ command = [ common.get-invocation-command como-linux : como
         : $(command) ] ;
-
+
     common.handle-options como-linux : $(condition) : $(command) : $(options) ;
 }
 
+
 flags como-linux C++FLAGS <exception-handling>off : --no_exceptions ;
 flags como-linux C++FLAGS <exception-handling>on : --exceptions ;
 
@@ -98,4 +101,3 @@
 {
     ar rcu $(<) $(>)
 }
-

Modified: branches/CMake/release/tools/build/v2/tools/como-win.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/como-win.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/como-win.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,7 +6,8 @@
 # http://www.boost.org/LICENSE_1_0.txt)
 
 # The following #// line will be used by the regression test table generation
-# program as the column heading for HTML tables. Must not include version number.
+# program as the column heading for HTML tables. Must not include a version
+# number.
 #//Comeau
C++

 
 import common ;
@@ -17,38 +18,42 @@
 
 feature.extend-subfeature toolset como : platform : win ;
 
-# Initializes the Comeau toolset for windows.
-# The command is the command which invokes the compiler.
-# You should either set environment variable COMO_XXX_INCLUDE where
-# XXX is the used backed (as described in documentation), or pass
-# that as part of command, e.g:
-#
+
+# Initializes the Comeau toolset for windows. The command is the command which
+# invokes the compiler. You should either set environment variable
+# COMO_XXX_INCLUDE where XXX is the used backend (as described in the
+# documentation), or pass that as part of command, e.g:
+#
 # using como-win : 4.3 : "set COMO_BCC_INCLUDE=C:/include &&" como.exe ;
+#
 rule init ( version ? : command * : options * )
 {
     local condition = [ common.check-init-parameters como-win
         : version $(version) ] ;
-
+
     command = [ common.get-invocation-command como-win : como.exe :
- $(command) ] ;
-
+ $(command) ] ;
+
     common.handle-options como-win : $(condition) : $(command) : $(options) ;
 }
 
-generators.register-c-compiler como-win.compile.c++ : CPP : OBJ
- : <toolset>como <toolset-como:platform>win ;
+generators.register-c-compiler como-win.compile.c++ : CPP : OBJ
+ : <toolset>como <toolset-como:platform>win ;
 generators.register-c-compiler como-win.compile.c : C : OBJ
- : <toolset>como <toolset-como:platform>win ;
+ : <toolset>como <toolset-como:platform>win ;
+
+
+generators.register-linker como-win.link
+ : OBJ SEARCHED_LIB STATIC_LIB IMPORT_LIB
+ : EXE
+ : <toolset>como <toolset-como:platform>win ;
+
+# Note that status of shared libraries support is not clear, so we do not define
+# the link.dll generator.
+generators.register-archiver como-win.archive
+ : OBJ : STATIC_LIB
+ : <toolset>como <toolset-como:platform>win ;
 
-generators.register-linker como-win.link
- : OBJ SEARCHED_LIB STATIC_LIB IMPORT_LIB
- : EXE
- : <toolset>como <toolset-como:platform>win ;
-# Note that status of shared libraries support is not clear, so we don't
-# define the link.dll generator.
-generators.register-archiver como-win.archive
- : OBJ : STATIC_LIB
- : <toolset>como <toolset-como:platform>win ;
 
 flags como-win C++FLAGS <exception-handling>off : --no_exceptions ;
 flags como-win C++FLAGS <exception-handling>on : --exceptions ;
@@ -56,16 +61,17 @@
 flags como-win CFLAGS <inlining>off : --no_inlining ;
 flags como-win CFLAGS <inlining>on <inlining>full : --inlining ;
 
-# The following seems to be VC-specific options. At least,
-# when I uncomment then, Comeau with bcc as backend reports
-# that bcc32 invocation.
+
+# The following seems to be VC-specific options. At least, when I uncomment
+# then, Comeau with bcc as backend reports that bcc32 invocation failed.
 #
 #flags como-win CFLAGS <debug-symbols>on : /Zi ;
 #flags como-win CFLAGS <optimization>off : /Od ;
 
+
 flags como-win CFLAGS <cflags> ;
-flags como-win CFLAGS : -D_WIN32 ; # make sure that we get the Boost Win32 platform config header.
-flags como-win CFLAGS <threading>multi : -D_MT ; # make sure that our config knows that threading is on.
+flags como-win CFLAGS : -D_WIN32 ; # Make sure that we get the Boost Win32 platform config header.
+flags como-win CFLAGS <threading>multi : -D_MT ; # Make sure that our config knows that threading is on.
 flags como-win C++FLAGS <cxxflags> ;
 flags como-win DEFINES <define> ;
 flags como-win UNDEFS <undef> ;
@@ -83,12 +89,12 @@
 flags como-win FINDLIBS <find-shared-library> ;
 flags como-win FINDLIBS <find-static-library> ;
 
-RM = [ common.rm-command ] ;
 nl = "
 " ;
 
 
-# for como, we repeat all libraries so that dependencies are always resolved
+# For como, we repeat all libraries so that dependencies are always resolved.
+#
 actions link bind LIBRARIES
 {
     $(CONFIG_COMMAND) --no_version --no_prelink_verbose $(LINKFLAGS) -o "$(<[1]:S=)" @"@($(<[1]:W).rsp:E=$(nl)"$(>)")" "$(LIBRARIES)" "$(FINDLIBS:S=.lib)"
@@ -109,4 +115,3 @@
     $(CONFIG_COMMAND) --no_version --no_prelink_verbose --prelink_object "$(>)"
     lib $(ARFLAGS) /nologo /out:"$(<:S=.lib)" "$(>)"
 }
-

Modified: branches/CMake/release/tools/build/v2/tools/como.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/como.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/como.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,9 +3,8 @@
 # (See accompanying file LICENSE_1_0.txt
 # or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-# This is a generic 'intel' toolset. Depending on the current
-# system, it forwards either to 'intel-linux' or 'intel-win'
-# modules.
+# This is a generic 'como' toolset. Depending on the current system, it
+# forwards either to 'como-linux' or 'como-win' modules.
 
 import feature ;
 import os ;

Modified: branches/CMake/release/tools/build/v2/tools/darwin.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/darwin.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/darwin.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,7 +3,7 @@
 # Copyright 2003, 2004, 2005, 2006 Vladimir Prus
 # Copyright 2005-2007 Mat Marcus
 # Copyright 2005-2007 Adobe Systems Incorporated
-# Copyright 2007 Rene Rivera
+# Copyright 2007-2008 Rene Rivera
 # Distributed under the Boost Software License, Version 1.0.
 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
@@ -17,6 +17,32 @@
 import generators ;
 import path : basename ;
 
+## Use a framework.
+feature framework : : free ;
+
+## The MacOSX versions we can target.
+.macosx-versions =
+ 10.5 10.4 10.3 10.2 10.1
+ iphone-2.0 iphone-1.x iphonesim-2.0
+ ;
+
+## The MacOSX version to compile for, which maps to the SDK to use (sysroot).
+feature macosx-version
+ : $(.macosx-versions)
+ : propagated link-incompatible symmetric optional ;
+
+## The minimal MacOSX version to target.
+feature macosx-version-min
+ : $(.macosx-versions)
+ : propagated optional ;
+
+#############################################################################
+
+if [ MATCH (--debug-configuration) : [ modules.peek : ARGV ] ]
+{
+ .debug-configuration = true ;
+}
+
 feature.extend toolset : darwin ;
 import gcc ;
 toolset.inherit-generators darwin : gcc ;
@@ -31,6 +57,9 @@
 toolset.inherit-rules darwin : gcc ;
 toolset.inherit-flags darwin : gcc
   : <runtime-link>static
+ <architecture>arm/<address-model>32
+ <architecture>arm/<address-model>64
+ <architecture>arm/<instruction-set>
      <architecture>x86/<address-model>32
      <architecture>x86/<address-model>64
      <architecture>x86/<instruction-set>
@@ -38,34 +67,191 @@
      <architecture>power/<address-model>64
      <architecture>power/<instruction-set> ;
 
-# No additional initialization should be necessary
-rule init ( version ? : command * : options * )
+# Options:
+#
+# <root>PATH
+# Platform root path. The common autodetection will set this to
+# "/Developer". And when a command is given it will be set to
+# the corresponding "*.platform/Developer" directory.
+#
+rule init ( version ? : command * : options * : requirement * )
 {
- local condition = [ common.check-init-parameters darwin : version $(version) ] ;
+ # - The root directory of the tool install.
+ local root = [ feature.get-values <root> : $(options) ] ;
+
+ # - The bin directory where to find the commands to execute.
+ local bin ;
+
+ # - The configured compile driver command.
     local command = [ common.get-invocation-command darwin : g++ : $(command) ] ;
     
+ # - Autodetect the root and bin dir if not given.
+ if $(command)
+ {
+ bin ?= [ common.get-absolute-tool-path $(command[1]) ] ;
+ if $(bin) = "/usr/bin"
+ {
+ root ?= /Developer ;
+ }
+ else
+ {
+ local r = $(bin:D) ;
+ r = $(r:D) ;
+ root ?= $(r) ;
+ }
+ }
+
+ # - Autodetect the version if not given.
+ if $(command)
+ {
+ # - The 'command' variable can have multiple elements. When calling
+ # the SHELL builtin we need a single string.
+ local command-string = $(command:J=" ") ;
+ version ?= [ MATCH "^([0-9.]+)"
+ : [ SHELL "$(command-string) -dumpversion" ] ] ;
+ }
+
+ # - Define the condition for this toolset instance.
+ local condition =
+ [ common.check-init-parameters darwin $(requirement) : version $(version) ] ;
+
+ # - Set the toolset generic common options.
     common.handle-options darwin : $(condition) : $(command) : $(options) ;
     
- # GCC 4.0 and higher in Darwin does not have -fcoalesce-templates.
- local gccversion = [ SHELL "$(command) -dumpversion" ] ;
- if $(gccversion) < "4.0.0"
+ # - GCC 4.0 and higher in Darwin does not have -fcoalesce-templates.
+ if $(version) < "4.0.0"
     {
         flags darwin.compile.c++ OPTIONS $(condition) : -fcoalesce-templates ;
     }
+ # - GCC 4.2 and higher in Darwin does not have -Wno-long-double.
+ if $(version) < "4.2.0"
+ {
+ flags darwin.compile OPTIONS $(condition) : -Wno-long-double ;
+ }
 
+ # - Set the link flags common with the GCC toolset.
     gcc.init-link-flags darwin darwin $(condition) ;
+
+ # - The symbol strip program.
+ local strip ;
+ if <striper> in $(options)
+ {
+ # We can turn off strip by specifying it as empty. In which
+ # case we switch to using the linker to do the strip.
+ flags darwin.link.dll OPTIONS
+ $(condition)/<main-target-type>LIB/<link>shared/<address-model>32/<debug-symbols>off : -Wl,-x ;
+ flags darwin.link.dll OPTIONS
+ $(condition)/<main-target-type>LIB/<link>shared/<address-model>/<debug-symbols>off : -Wl,-x ;
+ flags darwin.link OPTIONS
+ $(condition)/<main-target-type>EXE/<address-model>32/<debug-symbols>off : -s ;
+ flags darwin.link OPTIONS
+ $(condition)/<main-target-type>EXE/<address-model>/<debug-symbols>off : -s ;
+ }
+ else
+ {
+ # Otherwise we need to find a strip program to use. And hence
+ # also tell the link action that we need to use a strip
+ # post-process.
+ flags darwin.link NEED_STRIP $(condition)/<debug-symbols>off : "" ;
+ strip =
+ [ common.get-invocation-command darwin
+ : strip : [ feature.get-values <striper> : $(options) ] : $(bin) : search-path ] ;
+ flags darwin.link .STRIP $(condition) : $(strip[1]) ;
+ if $(.debug-configuration)
+ {
+ ECHO notice: using strip :: $(condition) :: $(strip[1]) ;
+ }
+ }
+
+ # - The archive builder (libtool is the default as creating
+ # archives in darwin is complicated.
+ local archiver =
+ [ common.get-invocation-command darwin
+ : libtool : [ feature.get-values <archiver> : $(options) ] : $(bin) : search-path ] ;
+ flags darwin.archive .LIBTOOL $(condition) : $(archiver[1]) ;
+ if $(.debug-configuration)
+ {
+ ECHO notice: using archiver :: $(condition) :: $(archiver[1]) ;
+ }
+
+ # - Initialize the SDKs available in the root for this tool.
+ local sdks = [ init-available-sdk-versions $(condition) : $(root) ] ;
     
- flags darwin.link NEED_STRIP $(condition)/<debug-symbols>off : "" ;
+ #~ ECHO --- ;
+ #~ ECHO --- bin :: $(bin) ;
+ #~ ECHO --- root :: $(root) ;
+ #~ ECHO --- version :: $(version) ;
+ #~ ECHO --- condition :: $(condition) ;
+ #~ ECHO --- strip :: $(strip) ;
+ #~ ECHO --- archiver :: $(archiver) ;
+ #~ ECHO --- sdks :: $(sdks) ;
+ #~ ECHO --- ;
+ #~ EXIT ;
 }
 
-feature framework : : free ;
+# Determine the MacOSX SDK versions installed and their locations.
+local rule init-available-sdk-versions ( condition * : root ? )
+{
+ root ?= /Developer ;
+ local sdks-root = $(root)/SDKs ;
+ local sdks = [ GLOB $(sdks-root) : MacOSX*.sdk iPhoneOS*.sdk iPhoneSimulator*.sdk ] ;
+ local result ;
+ for local sdk in $(sdks)
+ {
+ local sdk-match = [ MATCH ([^0-9]+)([0-9]+)[.]([0-9x]+)[.]?([0-9x]+)? : $(sdk:D=) ] ;
+ local sdk-platform = $(sdk-match[1]:L) ;
+ local sdk-version = $(sdk-match[2]).$(sdk-match[3]) ;
+ if $(sdk-version)
+ {
+ switch $(sdk-platform)
+ {
+ case macosx :
+ {
+ sdk-version = $(sdk-version) ;
+ }
+ case iphoneos :
+ {
+ sdk-version = iphone-$(sdk-version) ;
+ }
+ case iphonesimulator :
+ {
+ sdk-version = iphonesim-$(sdk-version) ;
+ }
+ case * :
+ {
+ sdk-version = $(sdk-version:J=-) ;
+ }
+ }
+ result += $(sdk-version) ;
+ flags darwin.compile OPTIONS $(condition)/<macosx-version>$(sdk-version)
+ : -isysroot $(sdk) ;
+ flags darwin.link OPTIONS $(condition)/<macosx-version>$(sdk-version)
+ : -isysroot $(sdk) ;
+ if $(.debug-configuration)
+ {
+ ECHO notice: available sdk :: $(condition)/<macosx-version>$(sdk-version) :: $(sdk) ;
+ }
+ }
+ }
+ return $(result) ;
+}
+
+# Generic options.
+flags darwin.compile OPTIONS <flags> ;
+
+# Minimal OSX target option. Note that the default is for the min-version
+# option to not be included to let the compiler default take hold.
+for local macosx-version in $(.macosx-versions)
+{
+ flags darwin.compile OPTIONS <macosx-version-min>$(macosx-version)
+ : -mmacosx-version-min=$(macosx-version) ;
+ flags darwin.link OPTIONS <macosx-version-min>$(macosx-version)
+ : -mmacosx-version-min=$(macosx-version) ;
+}
 
 # The following adds objective-c support to darwin.
 # Thanks to http://thread.gmane.org/gmane.comp.lib.boost.build/13759
 
-type.register OBJECTIVE_C : m ;
-type.register OBJECTIVE_CPP : mm ;
-
 generators.register-c-compiler darwin.compile.m : OBJECTIVE_C : OBJ : <toolset>darwin ;
 generators.register-c-compiler darwin.compile.mm : OBJECTIVE_CPP : OBJ : <toolset>darwin ;
 
@@ -89,46 +275,6 @@
     "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -c -o "$(<)" "$(>)"
 }
 
-# Determine the MacOSX SDK versions installed and their locations.
-local rule available-macosx-versions ( )
-{
- local sdks = [ GLOB /Developer/SDKs : MacOSX* ] ;
- for local sdk in $(sdks)
- {
- local sdk-version = [ MATCH ([0-9]+)[.]([0-9]+)[.]?([0-9]+)? : $(sdk:D=) ] ;
- sdk-version = $(sdk-version:J=.) ;
- if $(sdk-version)
- {
- .macosx-sdk = $(sdk-version) $(.macosx-sdk) ;
- .macosx-sdk.$(sdk-version) = $(sdk) ;
- }
- }
- return $(.macosx-sdk) ;
-}
-
-# Add the found SDK version only to the allowed set. The "latests" SDKs
-# wil be first in the list, and hence the default.
-feature macosx-version
- : [ available-macosx-versions ]
- : propagated link-incompatible symmetric ;
-if 10.4 in [ feature.values macosx-version ]
-{
- feature.set-default macosx-version : 10.4 ;
-}
-
-# Add the options for all the found SDKs.
-for local sdk in $(.macosx-sdk)
-{
- flags darwin.compile OPTIONS <macosx-version>$(sdk) :
- -isysroot $(.macosx-sdk.$(sdk))
- -mmacosx-version-min=$(sdk)
- ;
- flags darwin.link OPTIONS <macosx-version>$(sdk) :
- -isysroot $(.macosx-sdk.$(sdk))
- -mmacosx-version-min=$(sdk)
- ;
-}
-
 # Add option selection for combined and specific architecture combinations.
 
 local rule arch-addr-flags ( toolset variable
@@ -155,20 +301,31 @@
 arch-addr-flags darwin OPTIONS : power : 32 : -arch ppc : default ;
 arch-addr-flags darwin OPTIONS : power : 64 : -arch ppc64 ;
 
+arch-addr-flags darwin OPTIONS : arm : 32 : -arch arm : default ;
 
+# Set the max header padding to allow renaming of libs for installation.
+flags darwin.link.dll OPTIONS : -headerpad_max_install_names ;
+
+# To link the static runtime we need to link to all the core runtime libraries.
 flags darwin.link OPTIONS <runtime-link>static
     : -nodefaultlibs -shared-libgcc -lstdc++-static -lgcc_eh -lgcc -lSystem ;
 
-flags darwin.link OPTIONS <variant>release : -Wl,-dead_strip -no_dead_strip_inits_and_terms ;
+# Strip as much as possible when optimizing.
+flags darwin.link OPTIONS <optimization>speed : -Wl,-dead_strip -no_dead_strip_inits_and_terms ;
+flags darwin.link OPTIONS <optimization>space : -Wl,-dead_strip -no_dead_strip_inits_and_terms ;
 
+# Dynamic/shared linking.
 flags darwin.compile OPTIONS <link>shared : -dynamic ;
-flags darwin.compile OPTIONS : -Wno-long-double -no-cpp-precomp -gdwarf-2 ;
 
+# Misc options.
+flags darwin.compile OPTIONS : -no-cpp-precomp -gdwarf-2 ;
+
+# Add the framework names to use.
 flags darwin.link FRAMEWORK <framework> ;
 
 # This is flag is useful for debugging the link step
 # uncomment to see what libtool is doing under the hood
-# flags darwin.link.dll OPTIONS : -Wl,-v ;
+#~ flags darwin.link.dll OPTIONS : -Wl,-v ;
 
 _ = " " ;
 
@@ -195,8 +352,8 @@
 
 actions link bind LIBRARIES
 {
- $(CONFIG_COMMAND) -L"$(LINKPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) $(FRAMEWORK_PATH) -framework$(_)$(FRAMEWORK:D=:S=) $(OPTIONS) $(USER_OPTIONS)
- $(NEED_STRIP)strip $(NEED_STRIP)"$(<)"
+ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) $(FRAMEWORK_PATH) -framework$(_)$(FRAMEWORK:D=:S=) $(OPTIONS) $(USER_OPTIONS)
+ $(NEED_STRIP)"$(.STRIP)" $(NEED_STRIP)"$(<)"
 }
 
 rule link.dll
@@ -206,12 +363,12 @@
 
 actions link.dll bind LIBRARIES
 {
- $(CONFIG_COMMAND) -dynamiclib -install_name "$(<:B)$(<:S)" -L"$(LINKPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) $(FRAMEWORK_PATH) -framework$(_)$(FRAMEWORK:D=:S=) $(OPTIONS) $(USER_OPTIONS)
+ "$(CONFIG_COMMAND)" -dynamiclib -Wl,-single_module -install_name "$(<:B)$(<:S)" -L"$(LINKPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) $(FRAMEWORK_PATH) -framework$(_)$(FRAMEWORK:D=:S=) $(OPTIONS) $(USER_OPTIONS)
 }
 
 # We use libtool instead of ar to support universal binary linking
 # TODO: Find a way to use the underlying tools, i.e. lipo, to do this.
 actions piecemeal archive
 {
- libtool -static -o "$(<:T)" $(ARFLAGS) "$(>:T)"
+ "$(.LIBTOOL)" -static -o "$(<:T)" $(ARFLAGS) "$(>:T)"
 }

Modified: branches/CMake/release/tools/build/v2/tools/doxygen.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/doxygen.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/doxygen.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,19 +4,18 @@
 # Distributed under the Boost Software License, Version 1.0.
 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
-# This module defines rules to handle generation of various outputs
-# from source files documented with doxygen comments. The supported
-# transformations are:
+# This module defines rules to handle generation of various outputs from source
+# files documented with doxygen comments. The supported transformations are:
 #
 # * Source -> Doxygen XML -> BoostBook XML
 # * Source -> Doxygen HTML
 #
-# The type of transformation is selected based on the target requested.
-# For BoostBook XML, the default, specifying a target with an ".xml" suffix,
-# or an empty suffix, will produce a <target>.xml and <target>.boostbook.
-# For Doxygen HTML specifying a target with an ".html" suffix will produce
-# a directory <target> with the Doxygen html files, and a <target>.html file
-# redirecting to that directory.
+# The type of transformation is selected based on the target requested. For
+# BoostBook XML, the default, specifying a target with an ".xml" suffix, or an
+# empty suffix, will produce a <target>.xml and <target>.boostbook. For Doxygen
+# HTML specifying a target with an ".html" suffix will produce a directory
+# <target> with the Doxygen html files, and a <target>.html file redirecting to
+# that directory.
 
 import "class" : new ;
 import targets ;
@@ -38,6 +37,7 @@
 import common ;
 import modules ;
 
+
 # Use to specify extra configuration paramters. These get translated
 # into a doxyfile which configures the building of the docs.
 feature.feature doxygen:param : : free ;
@@ -75,9 +75,11 @@
 # Redirection HTML file to HTML multifile directory.
 type.register DOXYGEN_HTML : : HTML ;
 
+
 # Initialize the Doxygen module. Parameters are:
 # name: the name of the 'doxygen' executable. If not specified, the name
 # 'doxygen' will be used
+#
 rule init ( name ? )
 {
     if ! $(.initialized)
@@ -86,6 +88,8 @@
 
         if ! $(name)
         {
+ local doxygen-path ;
+
             if [ os.name ] = NT
             {
                 local ProgramFiles = [ modules.peek : ProgramFiles ] ;
@@ -97,51 +101,40 @@
                 {
                     ProgramFiles = "C:\\Program Files" ;
                 }
-
- local doxygen-path =
+
+ doxygen-path =
                     [ GLOB
                         [ modules.peek : PATH ]
                         "$(ProgramFiles)\\doxygen\\bin"
                         : doxygen\.exe ] ;
- doxygen-path = $(doxygen-path[1]) ;
-
- if $(doxygen-path)
- {
- if --debug-configuration in [ modules.peek : ARGV ]
- {
- ECHO "notice:" using doxygen ":" $(doxygen-path) ;
- }
- .doxygen = $(doxygen-path) ;
- }
             }
             else
             {
- local doxygen-path =
+ doxygen-path =
                     [ GLOB
                         [ modules.peek : PATH ]
                         : doxygen ] ;
- doxygen-path = $(doxygen-path[1]) ;
-
- if $(doxygen-path)
- {
- if --debug-configuration in [ modules.peek : ARGV ]
- {
- ECHO "notice:" using doxygen ":" $(doxygen-path) ;
- }
- .doxygen = $(doxygen-path) ;
- }
             }
+
+ doxygen-path = $(doxygen-path[1]) ;
+
+ if $(doxygen-path)
+ {
+ .doxygen = $(doxygen-path) ;
+ }
+
+ .doxygen ?= doxygen ;
         }
         else
         {
- if --debug-configuration in [ modules.peek : ARGV ]
- {
- ECHO "notice:" using doxygen ":" $(name) ;
- }
             .doxygen = $(name) ;
         }
- .doxygen ?= doxygen ;
-
+
+ if --debug-configuration in [ modules.peek : ARGV ]
+ {
+ ECHO "notice:" using doxygen ":" $(.doxygen) ;
+ }
+
         .doxproc = [ modules.binding $(__name__) ] ;
         .doxproc = $(.doxproc:D)/doxproc.py ;
 
@@ -164,35 +157,41 @@
     }
 }
 
+
 rule name ( )
 {
     return $(.doxygen) ;
 }
 
-# Runs Doxygen on the given Doxygen configuration file (the source) to
-# generate the Doxygen files. The output is dumped according to the settings
-# in the Doxygen configuration file, not according to the target! Because
-# of this, we essentially "touch" the target file, in effect making it look
-# like we've really written something useful to it. Anyone that uses this
-# action must deal with this behavior.
+
+# Runs Doxygen on the given Doxygen configuration file (the source) to generate
+# the Doxygen files. The output is dumped according to the settings in the
+# Doxygen configuration file, not according to the target! Because of this, we
+# essentially "touch" the target file, in effect making it look like we have
+# really written something useful to it. Anyone that uses this action must deal
+# with this behavior.
+#
 actions doxygen-action
 {
- $(RM) "$(*.XML)" & "$(NAME:E=doxygen)" $(>) && echo "Stamped" > "$(<)"
+ $(RM) "$(*.XML)" & "$(NAME:E=doxygen)" "$(>)" && echo "Stamped" > "$(<)"
 }
 
+
 # Runs the Python doxproc XML processor.
+#
 actions doxproc
 {
     python "$(DOXPROC)" "--xmldir=$(>)" "--output=$(<)" "$(OPTIONS)" "--id=$(ID)" "--title=$(TITLE)"
 }
 
-# Generates a doxygen configuration file (doxyfile) given a set of C++
-# sources and a property list that may contain <doxygen:param>
-# features.
+
+# Generates a doxygen configuration file (doxyfile) given a set of C++ sources
+# and a property list that may contain <doxygen:param> features.
+#
 rule headers-to-doxyfile ( target : sources * : properties * )
 {
     local text "# Generated by Boost.Build version 2" ;
-
+
     local output-dir ;
 
     # Translate <doxygen:param> into command line flags.
@@ -205,30 +204,27 @@
             output-dir = "$(namevalue[2])" ;
         }
     }
-
+
     if ! $(output-dir)
     {
         output-dir = [ on $(target) return $(LOCATE) ] ;
- text += "OUTPUT_DIRECTORY = $(output-dir)" ;
+ text += "OUTPUT_DIRECTORY = \"$(output-dir)\"" ;
     }
 
- local headers = "" ;
- for local source in $(sources:G=)
- {
- headers = "$(headers) $(source)" ;
- }
+ local headers = \"$(sources:G=)\" ;
 
- # Doxygen generates LaTex by default. So disable it unconditionally,
- # or at least until someone needs, and hence writes support for, LaTex
- # output.
+ # Doxygen generates LaTex by default. So disable it unconditionally, or at
+ # least until someone needs, and hence writes support for, LaTex output.
     text += "GENERATE_LATEX = NO" ;
- text += "INPUT = $(headers) " ;
+ text += "INPUT = $(headers:J= )" ;
     print.output $(target) plain ;
     print.text $(text) : true ;
 }
 
-# Run Doxygen. See doxygen-action for a description of the strange
-# properties of this rule
+
+# Run Doxygen. See doxygen-action for a description of the strange properties of
+# this rule.
+#
 rule run ( target : source : properties * )
 {
     doxygen-action $(target) : $(source) ;
@@ -239,14 +235,13 @@
             [ path.join
                 [ path.make [ on $(target) return $(LOCATE) ] ]
                 $(target:B:S=)
- *.xml ]
- ]
- ;
+ *.xml ] ] ;
 }
 
-# The rules below require Boost.Book stylesheets, so we need
-# some code to check that the boostbook module is actaully
-# initialized.
+
+# The rules below require Boost.Book stylesheets, so we need some code to check
+# that the boostbook module has actualy been initialized.
+#
 rule check-boostbook ( )
 {
     if ! [ modules.peek boostbook : .initialized ]
@@ -259,37 +254,39 @@
     }
 }
 
-# Collect the set of Doxygen XML files into a single XML source file
-# that can be handled by an XSLT processor. The source is completely
-# ignored (see doxygen-action), because this action picks up the
-# Doxygen XML index file xml/index.xml. This is because we can't teach
-# Doxygen to act like a NORMAL program and take a "-o output.xml"
-# argument (grrrr). The target of the collection will be a single
-# Doxygen XML file.
+
+# Collect the set of Doxygen XML files into a single XML source file that can be
+# handled by an XSLT processor. The source is completely ignored (see
+# doxygen-action), because this action picks up the Doxygen XML index file
+# xml/index.xml. This is because we can not teach Doxygen to act like a NORMAL
+# program and take a "-o output.xml" argument (grrrr). The target of the
+# collection will be a single Doxygen XML file.
+#
 rule collect ( target : source : properties * )
 {
     check-boostbook ;
- local collect-xsl-dir = [ path.native
- [ path.join [ boostbook.xsl-dir ] doxygen collect ]
- ] ;
+ local collect-xsl-dir
+ = [ path.native [ path.join [ boostbook.xsl-dir ] doxygen collect ] ] ;
     local source-path
         = [ path.make [ on $(source) return $(LOCATE) ] ] ;
     local collect-path
- = [ path.join [ path.pwd ] $(source-path) $(source:B) ] ;
+ = [ path.root [ path.join $(source-path) $(source:B) ] [ path.pwd ] ] ;
+ local native-path
+ = [ path.native $(collect-path) ] ;
     local real-source
- = [ path.native [ path.join [ path.native $(collect-path) ] index.xml ] ] ;
+ = [ path.native [ path.join $(collect-path) index.xml ] ] ;
     xsltproc.xslt $(target) : $(real-source) $(collect-xsl-dir:S=.xsl)
- : <xsl:param>doxygen.xml.path=$(collect-path)
- ;
+ : <xsl:param>doxygen.xml.path=$(native-path) ;
 }
 
-# Translate Doxygen XML into BoostBook
+
+# Translate Doxygen XML into BoostBook.
+#
 rule xml-to-boostbook ( target : source : properties * )
 {
     check-boostbook ;
     local xsl-dir = [ boostbook.xsl-dir ] ;
- local d2b-xsl = [ path.native
- [ path.join [ boostbook.xsl-dir ] doxygen
+ local d2b-xsl = [ path.native [ path.join [ boostbook.xsl-dir ] doxygen
         doxygen2boostbook.xsl ] ] ;
 
     local xslt-properties = $(properties) ;
@@ -305,20 +302,24 @@
     xsltproc.xslt $(target) : $(source) $(d2b-xsl) : $(xslt-properties) ;
 }
 
+
 flags doxygen.xml-dir-to-boostbook OPTIONS <doxygen.doxproc.index>yes : --enable-index ;
 flags doxygen.xml-dir-to-boostbook ID <doxygen.doxproc.id> ;
 flags doxygen.xml-dir-to-boostbook TITLE <doxygen.doxproc.title> ;
 
+
 rule xml-dir-to-boostbook ( target : source : properties * )
 {
     DOXPROC on $(target) = $(.doxproc) ;
-
+
     LOCATE on $(source:S=) = [ on $(source) return $(LOCATE) ] ;
-
+
     doxygen.doxproc $(target) : $(source:S=) ;
 }
 
+
 # Generate the HTML redirect to HTML dir index.html file.
+#
 rule html-redirect ( target : source : properties * )
 {
     local uri = "$(target:B)/index.html" ;
@@ -342,7 +343,9 @@
         : true ;
 }
 
+
 # User-level rule to generate BoostBook XML from a set of headers via Doxygen.
+#
 rule doxygen ( target : sources * : requirements * : default-build * : usage-requirements * )
 {
     local project = [ project.current ] ;
@@ -353,11 +356,10 @@
         local html-location = [ feature.get-values <location> : $(requirements) ] ;
         local output-dir = [ path.root
             [ path.join [ $(project).get build-dir ] $(html-location:E=html) ]
- [ path.pwd ]
- ] ;
+ [ path.pwd ] ] ;
         local output-dir-native = [ path.native $(output-dir) ] ;
         requirements = [ property.change $(requirements) : <location> ] ;
-
+
         ## The doxygen configuration file.
         targets.main-target-alternative
             [ new typed-target $(target:S=.tag) : $(project) : DOXYFILE
@@ -365,13 +367,13 @@
                 : [ targets.main-target-requirements $(requirements)
                     <doxygen:param>GENERATE_HTML=YES
                     <doxygen:param>GENERATE_XML=NO
- <doxygen:param>"OUTPUT_DIRECTORY=$(output-dir-native)"
+ <doxygen:param>"OUTPUT_DIRECTORY=\"$(output-dir-native)\""
                     <doxygen:param>HTML_OUTPUT=$(target:B)
                     : $(project) ]
                 : [ targets.main-target-default-build $(default-build) : $(project) ]
             ] ;
         $(project).mark-target-as-explicit $(target:S=.tag) ;
-
+
         ## The html directory to generate by running doxygen.
         targets.main-target-alternative
             [ new typed-target $(target:S=.dir) : $(project) : DOXYGEN_HTML_MULTIFILE
@@ -381,7 +383,7 @@
                 : [ targets.main-target-default-build $(default-build) : $(project) ]
                 ] ;
         $(project).mark-target-as-explicit $(target:S=.dir) ;
-
+
         ## The redirect html file into the generated html.
         targets.main-target-alternative
             [ new typed-target $(target) : $(project) : DOXYGEN_HTML
@@ -398,7 +400,7 @@
         local location-xml = [ feature.get-values <location> : $(requirements) ] ;
         requirements = [ property.change $(requirements) : <location> ] ;
         local target-xml = $(target:B=$(target:B)-xml) ;
-
+
         ## The doxygen configuration file.
         targets.main-target-alternative
             [ new typed-target $(target-xml:S=.tag) : $(project) : DOXYFILE
@@ -411,7 +413,7 @@
                 : [ targets.main-target-default-build $(default-build) : $(project) ]
             ] ;
         $(project).mark-target-as-explicit $(target-xml:S=.tag) ;
-
+
         ## The Doxygen XML directory of the processed source files.
         targets.main-target-alternative
             [ new typed-target $(target-xml:S=.dir) : $(project) : DOXYGEN_XML_MULTIFILE
@@ -421,7 +423,7 @@
                 : [ targets.main-target-default-build $(default-build) : $(project) ]
             ] ;
         $(project).mark-target-as-explicit $(target-xml:S=.dir) ;
-
+
         ## The resulting BoostBook file is generated by the processor tool. The
         ## tool can be either the xsltproc plus accompanying XSL scripts. Or it
         ## can be the python doxproc.py script.
@@ -444,10 +446,10 @@
                 : [ targets.main-target-default-build $(default-build) : $(project) ]
             ] ;
         $(project).mark-target-as-explicit $(target:S=.xml) ;
-
+
         targets.main-target-alternative
             [ new alias-target-class $(target) : $(project)
- :
+ :
                 : [ targets.main-target-requirements $(requirements)
                     : $(project) ]
                 : [ targets.main-target-default-build $(default-build) : $(project) ]

Modified: branches/CMake/release/tools/build/v2/tools/gcc.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/gcc.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/gcc.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -141,6 +141,10 @@
         {
             linker = hpux ;
         }
+ else if [ os.name ] = AIX
+ {
+ linker = aix ;
+ }
         else
         {
             linker = gnu ;
@@ -327,7 +331,7 @@
     # implement and will increase target path length even more.
     flags gcc.compile OPTIONS <link>shared : -fPIC ;
 }
-if [ os.name ] != NT && [ os.name ] != OSF && [ os.name ] != HPUX
+if [ os.name ] != NT && [ os.name ] != OSF && [ os.name ] != HPUX && [ os.name ] != AIX
 {
     # OSF does have an option called -soname but it doesn't seem to work as
     # expected, therefore it has been disabled.
@@ -611,6 +615,33 @@
             flags $(toolset).link OPTIONS $(condition)/<link>shared
                 : -fPIC : unchecked ;
         }
+
+ case aix :
+ {
+ #
+ # On AIX we *have* to use the native linker.
+ #
+ # Using -brtl, the AIX linker will look for libraries with both the .a and .so
+ # extensions, such as libfoo.a and libfoo.so. Without -brtl, the AIX linker
+ # looks only for libfoo.a. Note that libfoo.a is an archived file that may
+ # contain shared objects and is different from static libs as on Linux.
+ #
+ # The -bnoipath strips the prepending (relative) path of libraries from
+ # the loader section in the target library or executable. Hence, during load-
+ # time LIBPATH (identical to LD_LIBRARY_PATH) or a hard-coded -blibpath
+ # (*similar* to -lrpath/-lrpath-link) is searched. Without this option,
+ # the prepending (relative) path + library name is hard-coded in the loader
+ # section, causing *only* this path to be searched during load-time.
+ # Note that the AIX linker does not have an -soname equivalent, this
+ # is as close as it gets.
+ #
+ # The above options are definately for AIX 5.x, and most likely also for
+ # AIX 4.x and AIX 6.x. For details about AIX linker:
+ # http://download.boulder.ibm.com/ibmdl/pub/software/dw/aix/es-aix_ll.pdf
+ #
+
+ flags $(toolset).link OPTIONS : -Wl,-brtl -Wl,-bnoipath : unchecked ;
+ }
 
     case * :
         {
@@ -712,7 +743,7 @@
     case SunOS* :
         {
         flags gcc OPTIONS <threading>multi : -pthreads ;
- flags gcc FINDLIBS-SA <threading>multi : rt ;
+ flags gcc FINDLIBS-SA : rt ;
         }
     case BeOS :
         {
@@ -740,7 +771,7 @@
     case * :
         {
         flags gcc OPTIONS <threading>multi : -pthread ;
- flags gcc FINDLIBS-SA <threading>multi : rt ;
+ flags gcc FINDLIBS-SA : rt ;
         }
     }
 }
@@ -817,7 +848,6 @@
 # RS/6000 & PowerPC
 flags gcc OPTIONS <architecture>power/<address-model>32 : -m32 ;
 flags gcc OPTIONS <architecture>power/<address-model>64 : -m64 ;
-flags gcc OPTIONS <architecture>power/<address-model>/<instruction-set> : -mcpu=common ;
 cpu-flags gcc OPTIONS : power : 403 : -mcpu=403 ;
 cpu-flags gcc OPTIONS : power : 505 : -mcpu=505 ;
 cpu-flags gcc OPTIONS : power : 601 : -mcpu=601 ;

Modified: branches/CMake/release/tools/build/v2/tools/intel-darwin.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/intel-darwin.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/intel-darwin.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -105,6 +105,13 @@
       flags intel-darwin.link OPTIONS $(condition)/<runtime-link>static : -static -static-intel -lstdc++ -lpthread ;
       flags intel-darwin.link OPTIONS $(condition)/<runtime-link>shared : -shared-intel -lstdc++ -lpthread ;
     }
+
+ local minor = [ MATCH ".*\\.(.).*" : $(version) ] ;
+
+ # wchar_t char_traits workaround for compilers older than 10.2
+ if $(major) = "9" || ( $(major) = "10" && ( $(minor) = "0" || $(minor) = "1" ) ) {
+ flags intel-darwin.compile DEFINES $(condition) : __WINT_TYPE__=int : unchecked ;
+ }
 }
 
 SPACE = " " ;
@@ -117,8 +124,8 @@
 
 #
 cpu-type-em64t = prescott nocona ;
-# flags intel-darwin.compile OPTIONS <instruction-set>$(cpu-type-em64t)/<address-model>32 : -mcmodel=small ;
-flags intel-darwin.compile OPTIONS <instruction-set>$(cpu-type-em64t)/<address-model>64 : -mcmodel=large ;
+flags intel-darwin.compile OPTIONS <instruction-set>$(cpu-type-em64t)/<address-model>32 : -m32 ; # -mcmodel=small ;
+flags intel-darwin.compile OPTIONS <instruction-set>$(cpu-type-em64t)/<address-model>64 : -m64 ; # -mcmodel=large ;
 
 flags intel-darwin.compile.c OPTIONS <warnings>off : -w0 ;
 flags intel-darwin.compile.c OPTIONS <warnings>on : -w1 ;

Modified: branches/CMake/release/tools/build/v2/tools/intel-win.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/intel-win.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/intel-win.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -73,6 +73,9 @@
     local major = $(m[1]) ;
 
     local C++FLAGS ;
+
+ C++FLAGS += /nologo ;
+
     # Reduce the number of spurious error messages
     C++FLAGS += /Qwn5 /Qwd985 ;
 

Modified: branches/CMake/release/tools/build/v2/tools/make.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/make.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/make.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,9 +1,9 @@
-# Copyright 2003 Dave Abrahams
-# Copyright 2003 Douglas Gregor
-# Copyright 2006 Rene Rivera
-# Copyright 2002, 2003, 2004, 2005, 2006 Vladimir Prus
-# Distributed under the Boost Software License, Version 1.0.
-# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+# Copyright 2003 Dave Abrahams
+# Copyright 2003 Douglas Gregor
+# Copyright 2006 Rene Rivera
+# Copyright 2002, 2003, 2004, 2005, 2006 Vladimir Prus
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
 # This module defines the 'make' main target rule.
 
@@ -16,58 +16,56 @@
 import property-set ;
 import project ;
 
+
 class make-target-class : basic-target
 {
- import type regex virtual-target ;
+ import type regex virtual-target ;
     import "class" : new ;
-
+
     rule __init__ ( name : project : sources * : requirements *
         : default-build * : usage-requirements * )
- {
- basic-target.__init__ $(name) : $(project) : $(sources)
+ {
+ basic-target.__init__ $(name) : $(project) : $(sources)
           : $(requirements) : $(default-build) : $(usage-requirements) ;
     }
-
+
     rule construct ( name : source-targets * : property-set )
     {
- local action-name = [ $(property-set).get <action> ] ;
- # 'm' will always be set -- we add '@' outselfs in 'make'
- # rule below.
+ local action-name = [ $(property-set).get <action> ] ;
+ # 'm' will always be set -- we add '@' ourselves in 'make' rule below.
         local m = [ MATCH ^@(.*) : $(action-name) ] ;
-
- local a = [ new action $(source-targets) : $(m[1])
- : $(property-set) ] ;
- local t = [ new file-target $(self.name) exact
- : [ type.type $(self.name) ] : $(self.project) : $(a) ] ;
+
+ local a = [ new action $(source-targets) : $(m[1]) : $(property-set) ] ;
+ local t = [ new file-target $(self.name) exact
+ : [ type.type $(self.name) ] : $(self.project) : $(a) ] ;
         return [ property-set.empty ] [ virtual-target.register $(t) ] ;
- }
+ }
 }
 
+
 # Declares the 'make' main target.
+#
 rule make ( target-name : sources * : generating-rule + : requirements *
     : usage-requirements * )
 {
     local project = [ project.current ] ;
-
- # The '@' sign causes the feature.jam module to qualify rule name
- # with the module name of current project, if needed.
+
+ # The '@' sign causes the feature.jam module to qualify rule name with the
+ # module name of current project, if needed.
     local m = [ MATCH ^(@).* : $(generating-rule) ] ;
     if ! $(m)
     {
         generating-rule = @$(generating-rule) ;
- }
+ }
     requirements += <action>$(generating-rule) ;
-
+
     targets.main-target-alternative
- [ new make-target-class $(target-name) : $(project)
- : [ targets.main-target-sources $(sources) : $(target-name) ]
- : [ targets.main-target-requirements $(requirements) : $(project) ]
- : [ targets.main-target-default-build : $(project) ]
- : [ targets.main-target-usage-requirements $(usage-requirements) : $(project) ]
+ [ new make-target-class $(target-name) : $(project)
+ : [ targets.main-target-sources $(sources) : $(target-name) ]
+ : [ targets.main-target-requirements $(requirements) : $(project) ]
+ : [ targets.main-target-default-build : $(project) ]
+ : [ targets.main-target-usage-requirements $(usage-requirements) : $(project) ]
      ] ;
-
 }
 
 IMPORT $(__name__) : make : : make ;
-
-

Modified: branches/CMake/release/tools/build/v2/tools/msvc.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/msvc.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/msvc.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -86,25 +86,55 @@
 # "x.y" - refers to a detected version;
 # "a.b" - refers to an undetected version.
 #
-# Note: for free VC7.1 tools, we don't correctly find vcvars32.bar when user
+# Note: for free VC7.1 tools, we do not correctly find vcvars32.bar when user
 # explicitly provides a path.
+#
 rule init (
- version ? # the msvc version which is being configured. When omitted
- # the tools invoked when no explicit version is given will be configured.
+ # The msvc version being configured. When omitted the tools invoked when no
+ # explicit version is given will be configured.
+ version ?
+
+ # The command used to invoke the compiler. If not specified:
+ # - if version is given, default location for that version will be
+ # searched
+ #
+ # - if version is not given, default locations for MSVC 9.0, 8.0, 7.1, 7.0
+ # and 6.* will be searched
+ #
+ # - if compiler is not found in the default locations, PATH will be
+ # searched.
     : command *
- # the command to invoke the compiler. If not specified:
- # - if version is given, default location for that version will be searched
+
+ # Options may include:
     #
- # - if version is not given, default locations for 7.1, 7.0 and 6.* will
- # be searched
+ # All options shared by multiple toolset types as handled by the
+ # common.handle-options() rule, e.g. <cflags>, <compileflags>, <cxxflags>,
+ # <fflags> & <linkflags>.
     #
- # - if compiler is not found in default locations, PATH will be searched.
- : options *
- # options can include <setup>, <compiler>, <assembler>, <linker> and <resource-compiler>
+ # <assembler>
+ # <compiler>
+ # <idl-compiler>
+ # <linker>
+ # <mc-compiler>
+ # <resource-compiler>
+ # Exact tool names to be used by this msvc toolset configuration.
     #
     # <compiler-filter>
- # Command to pipe the output of running the compiler. For example
- # to pass the output to STLfilt.
+ # Command through which to pipe the output of running the compiler.
+ # For example to pass the output to STLfilt.
+ #
+ # <setup>
+ # Global setup command to invoke before running any of the msvc tools.
+ # It will be passed additional option parameters depending on the actual
+ # target platform.
+ #
+ # <setup-amd64>
+ # <setup-i386>
+ # <setup-ia64>
+ # Platform specific setup command to invoke before running any of the
+ # msvc tools used when builing a target for a specific platform, e.g.
+ # when building a 32 or 64 bit executable.
+ : options *
 )
 {
     if $(command)
@@ -118,6 +148,7 @@
 
 # 'configure' is a newer version of 'init'. The parameter 'command' is passed as
 # a part of the 'options' list.
+#
 rule configure ( version ? : options * )
 {
     switch $(version)
@@ -143,25 +174,39 @@
 }
 
 
-# Supported CPU architectures
-cpu-arch-i386 =
+# Supported CPU architectures.
+.cpu-arch-i386 =
     <architecture>/<address-model>
     <architecture>/<address-model>32
     <architecture>x86/<address-model>
     <architecture>x86/<address-model>32 ;
 
-cpu-arch-amd64 =
+.cpu-arch-amd64 =
     <architecture>/<address-model>64
     <architecture>x86/<address-model>64 ;
 
-cpu-arch-ia64 =
+.cpu-arch-ia64 =
     <architecture>ia64/<address-model>
     <architecture>ia64/<address-model>64 ;
 
 
+# Locates the requested setup script under the given folder and returns its full
+# path or nothing in case the script can not be found. In case multiple scripts
+# are found only the first one is returned.
+#
+local rule locate-default-setup ( command : parent : setup-name )
+{
+ local result = [ GLOB $(command) $(parent) : $(setup-name) ] ;
+ if $(result[1])
+ {
+ return $(result[1]) ;
+ }
+}
+
+
 local rule configure-really ( version ? : options * )
 {
- # If no version supplied use the default configuration. Note that condition
+ # Note that if no version supplied uses the default configuration condition
     # remains versionless.
     local v = $(version) ;
     if ! $(v)
@@ -185,37 +230,37 @@
     # Check whether selected configuration is used already
     if $(version) in [ $(.versions).used ]
     {
- # Allow multiple 'toolset.usage' calls for the same configuration
- # if the identical sets of options are used
+ # Allow multiple 'toolset.using' calls for the same configuration if the
+ # identical sets of options are used.
         if $(options) && ( $(options) != [ $(.versions).get $(version) : options ] )
         {
- errors.error "msvc: the toolset version '$(version)' is configured already" ;
+ errors.error "msvc: the toolset version '$(version)' already configured." ;
         }
     }
     else
     {
- # Register a new configuration
+ # Register a new configuration.
         $(.versions).register $(version) ;
 
- # Add user-supplied to auto-detected options
+ # Add user-supplied to auto-detected options.
         options = [ $(.versions).get $(version) : options ] $(options) ;
 
         # Mark the configuration as 'used'.
         $(.versions).use $(version) ;
 
- # Generate condition and save it
- local condition = [ common.check-init-parameters msvc : version $(v) ] ;
+ # Generate conditions and save them.
+ local conditions = [ common.check-init-parameters msvc : version $(v) ] ;
 
- $(.versions).set $(version) : condition : $(condition) ;
+ $(.versions).set $(version) : conditions : $(conditions) ;
 
         local command = [ feature.get-values <command> : $(options) ] ;
 
         # If version is specified, we try to search first in default paths, and
         # only then in PATH.
- command = [ common.get-invocation-command msvc : cl.exe : $(command)
- : [ default-paths $(version) ] : $(version) ] ;
+ command = [ common.get-invocation-command msvc : cl.exe : $(command) :
+ [ default-paths $(version) ] : $(version) ] ;
 
- common.handle-options msvc : $(condition) : $(command) : $(options) ;
+ common.handle-options msvc : $(conditions) : $(command) : $(options) ;
 
         if ! $(version)
         {
@@ -251,81 +296,135 @@
 
         local below-8.0 = [ MATCH ^([67]\\.) : $(version) ] ;
 
- local cpu = i386 ;
+ local cpu = i386 amd64 ia64 ;
+ if $(below-8.0)
+ {
+ cpu = i386 ;
+ }
 
- local setup ;
- local setup-option ;
+ local setup-amd64 ;
+ local setup-i386 ;
+ local setup-ia64 ;
 
         if $(command)
         {
+ # TODO: Note that if we specify a non-existant toolset version then
+ # this rule may find and use a corresponding compiler executable
+ # belonging to an incorrect toolset version. For example, if you
+ # have only MSVC 7.1 installed and specify you want Boost Build to
+ # use MSVC 9.0, then you want Boost Build to report an error but
+ # this may cause it to silently use the MSVC 7.1 compiler even
+ # though it thinks its using the msvc 9.0 toolset.
             command = [ common.get-absolute-tool-path $(command[-1]) ] ;
 
             local parent = [ path.make $(command) ] ;
             parent = [ path.parent $(parent) ] ;
             parent = [ path.native $(parent) ] ;
 
- # Setup will be used if the script name has been specified. If setup
- # is not specified, a default script will be used instead.
- setup = [ feature.get-values <setup> : $(options) ] ;
+ # Setup will be used if the command name has been specified. If
+ # setup is not specified explicitly then a default setup script will
+ # be used instead. Setup scripts may be global or arhitecture/
+ # /platform/cpu specific. Setup options are used only in case of
+ # global setup scripts.
+
+ # Default setup scripts provided with different VC distributions:
+ #
+ # VC 7.1 had only the vcvars32.bat script specific to 32 bit i386
+ # builds. It was located in the bin folder for the regular version
+ # and in the root folder for the free VC 7.1 tools.
+ #
+ # Later 8.0 & 9.0 versions introduce separate platform specific
+ # vcvars*.bat scripts (e.g. 32 bit, 64 bit AMD or 64 bit Itanium)
+ # located in or under the bin folder. Most also include a global
+ # vcvarsall.bat helper script located in the root folder which runs
+ # one of the aforementioned vcvars*.bat scripts based on the options
+ # passed to it. So far only the version coming with some PlatformSDK
+ # distributions does not include this top level script but to
+ # support those we need to fall back to using the worker scripts
+ # directly in case the top level script can not be found.
+
+ local global-setup = [ feature.get-values <setup> : $(options) ] ;
+ global-setup = $(global-setup[1]) ;
+ if ! $(below-8.0)
+ {
+ global-setup ?= [ locate-default-setup $(command) : $(parent) : vcvarsall.bat ] ;
+ }
 
- if ! $(setup)
+ local default-setup-amd64 = vcvarsx86_amd64.bat ;
+ local default-setup-i386 = vcvars32.bat ;
+ local default-setup-ia64 = vcvarsx86_ia64.bat ;
+
+ # http://msdn2.microsoft.com/en-us/library/x4d2c09s(VS.80).aspx and
+ # http://msdn2.microsoft.com/en-us/library/x4d2c09s(vs.90).aspx
+ # mention an x86_IPF option, that seems to be a documentation bug
+ # and x86_ia64 is the correct option.
+ local default-global-setup-options-amd64 = x86_amd64 ;
+ local default-global-setup-options-i386 = x86 ;
+ local default-global-setup-options-ia64 = x86_ia64 ;
+
+ # When using 64-bit Windows, and targeting 64-bit, it is possible to
+ # use a native 64-bit compiler, selected by the "amd64" & "ia64"
+ # parameters to vcvarsall.bat. There are two variables we can use --
+ # PROCESSOR_ARCHITECTURE and PROCESSOR_IDENTIFIER. The first is
+ # 'x86' when running 32-bit Windows, no matter which processor is
+ # used, and 'AMD64' on 64-bit windows on x86 (either AMD64 or EM64T)
+ # Windows.
+ #
+ if [ MATCH ^(AMD64) : [ os.environ PROCESSOR_ARCHITECTURE ] ]
             {
- if $(below-8.0)
- {
- setup ?= vcvars32.bat ;
- }
- else
- {
- setup ?= vcvarsall.bat ;
- }
+ default-global-setup-options-amd64 = amd64 ;
+ }
+ # TODO: The same 'native compiler usage' should be implemented for
+ # the Itanium platform by using the "ia64" parameter. For this
+ # though we need someone with access to this platform who can find
+ # out how to correctly detect this case.
+ else if $(somehow-detect-the-itanium-platform)
+ {
+ default-global-setup-options-ia64 = ia64 ;
+ }
 
- # The vccars32.bat is actually in "bin" directory except for
- # free VC7.1 tools.
- setup = [ GLOB $(command) $(parent) : $(setup) ] ;
+ local setup-prefix = "call " ;
+ local setup-suffix = " >nul"$(nl) ;
+ if ! [ os.name ] in NT
+ {
+ setup-prefix = "cmd.exe /S /C call " ;
+ setup-suffix = " \">nul\" \"&&\" " ;
             }
 
- if $(setup)
+ for local c in $(cpu)
             {
- # Note Cygwin to Windows translation.
- setup = "\""$(setup[1]:W)"\"" ;
+ local setup-options ;
+
+ setup-$(c) = [ feature.get-values <setup-$(c)> : $(options) ] ;
 
- if ! $(below-8.0)
+ if ! $(setup-$(c))-is-not-empty
                 {
- cpu = i386 amd64 ia64 ;
- # Whereas http://msdn2.microsoft.com/en-us/library/x4d2c09s(VS.80).aspx or
- # http://msdn2.microsoft.com/en-us/library/x4d2c09s(vs.90).aspx
- # say about x86_IPF, that seem to be doc bug,
- # and x86_ia64 is right one.
- setup-option = x86 x86_amd64 x86_ia64 ;
-
- # When using 64-bit Windows, and targeting 64-bit, it's
- # possible to use native 64-bit compiler, which is selected
- # by the "amd64" parameter to vcvarsall.bat. There are two
- # variables we can use -- PROCESSOR_ARCHITECTURE and
- # PROCESSOR_IDENTIFIER. The first is 'x86' when running
- # 32-bit windows, no matter what processor is, and 'AMD64'
- # on 64-bit windows on x86 (either AMD64 or EM64T) windows.
- if [ MATCH ^(AMD64) : [ os.environ PROCESSOR_ARCHITECTURE ] ]
+ if $(global-setup)-is-not-empty
+ {
+ setup-$(c) = $(global-setup) ;
+
+ # If needed we can easily add using configuration flags
+ # here for overriding which options get passed to the
+ # global setup command for which target platform:
+ # setup-options = [ feature.get-values <setup-options-$(c)> : $(options) ] ;
+
+ setup-options ?= $(default-global-setup-options-$(c)) ;
+ }
+ else
                     {
- setup-option = x86 amd64 x86_ia64 ;
+ setup-$(c) = [ locate-default-setup $(command) : $(parent) : $(default-setup-$(c)) ] ;
                     }
                 }
- }
- }
-
- local prefix = "call " ;
- local suffix = " >nul
-" ;
- if ! [ os.name ] in NT
- {
- prefix = "cmd.exe /S /C call " ;
- suffix = " >nul \"&&\" " ;
- }
 
- command = $(prefix)$(setup)" "$(setup-option:E="")$(suffix) ;
+ # Cygwin to Windows path translation.
+ setup-$(c) = "\""$(setup-$(c):W)"\"" ;
 
- # Setup script is not required in some configurations.
- command ?= "" ;
+ # Append setup options to the setup name and add the final setup
+ # prefix & suffix.
+ setup-options ?= "" ;
+ setup-$(c) = $(setup-prefix)$(setup-$(c):J=" ")" "$(setup-options:J=" ")$(setup-suffix) ;
+ }
+ }
 
         # Get tool names (if any) and finish setup.
 
@@ -351,45 +450,45 @@
 
         local cc-filter = [ feature.get-values <compiler-filter> : $(options) ] ;
 
- for local i in 1 2 3
+ for local c in $(cpu)
         {
- local c = $(cpu[$(i)]) ;
+ # Setup script is not required in some configurations.
+ setup-$(c) ?= "" ;
 
- if $(c)
- {
- local cond = $(condition)/$(cpu-arch-$(c)) ;
+ local cpu-conditions = $(conditions)/$(.cpu-arch-$(c)) ;
 
- if $(.debug-configuration)
+ if $(.debug-configuration)
+ {
+ for local cpu-condition in $(cpu-conditions)
                 {
- ECHO "msvc: condition: '$(cond)', "
- "command: '$(command[$(i)])'" ;
+ ECHO "msvc: condition: '$(cpu-condition)', setup: '$(setup-$(c))'" ;
                 }
+ }
 
- toolset.flags msvc.compile .CC $(cond) : $(command[$(i)])$(compiler) /Zm800 -nologo ;
- toolset.flags msvc.compile .RC $(cond) : $(command[$(i)])$(resource-compiler) ;
- toolset.flags msvc.compile .ASM $(cond) : $(command[$(i)])$(assembler) ;
- toolset.flags msvc.link .LD $(cond) : $(command[$(i)])$(linker) /NOLOGO /INCREMENTAL:NO ;
- toolset.flags msvc.archive .LD $(cond) : $(command[$(i)])$(linker) /lib /NOLOGO ;
- toolset.flags msvc.compile .IDL $(cond) : $(command[$(i)])$(idl-compiler) ;
- toolset.flags msvc.compile .MC $(cond) : $(command[$(i)])$(mc-compiler) ;
+ toolset.flags msvc.compile .CC $(cpu-conditions) : $(setup-$(c))$(compiler) /Zm800 -nologo ;
+ toolset.flags msvc.compile .RC $(cpu-conditions) : $(setup-$(c))$(resource-compiler) ;
+ toolset.flags msvc.compile .ASM $(cpu-conditions) : $(setup-$(c))$(assembler) ;
+ toolset.flags msvc.link .LD $(cpu-conditions) : $(setup-$(c))$(linker) /NOLOGO /INCREMENTAL:NO ;
+ toolset.flags msvc.archive .LD $(cpu-conditions) : $(setup-$(c))$(linker) /lib /NOLOGO ;
+ toolset.flags msvc.compile .IDL $(cpu-conditions) : $(setup-$(c))$(idl-compiler) ;
+ toolset.flags msvc.compile .MC $(cpu-conditions) : $(setup-$(c))$(mc-compiler) ;
 
- if ! [ os.name ] in NT
- {
- toolset.flags msvc.link .MT $(cond) : $(command[$(i)])$(manifest-tool) -nologo ;
- }
- else
- {
- toolset.flags msvc.link .MT $(cond) : $(manifest-tool) -nologo ;
- }
+ if ! [ os.name ] in NT
+ {
+ toolset.flags msvc.link .MT $(cpu-conditions) : $(setup-$(c))$(manifest-tool) -nologo ;
+ }
+ else
+ {
+ toolset.flags msvc.link .MT $(cpu-conditions) : $(manifest-tool) -nologo ;
+ }
 
- if $(cc-filter)
- {
- toolset.flags msvc .CC.FILTER $(cond) : "|" $(cc-filter) ;
- }
+ if $(cc-filter)
+ {
+ toolset.flags msvc .CC.FILTER $(cpu-conditions) : "|" $(cc-filter) ;
             }
         }
         # Set version-specific flags.
- configure-version-specific msvc : $(version) : $(condition) ;
+ configure-version-specific msvc : $(version) : $(conditions) ;
     }
 }
 
@@ -416,10 +515,11 @@
 
 # Sets up flag definitions dependent on the compiler version used.
 # - 'version' is the version of compiler in N.M format.
-# - 'condition' is the property set to be used as condition for flag.
+# - 'conditions' is the property set to be used as flag conditions.
 # - 'toolset' is the toolset for which flag settings are to be defined.
 # This makes the rule reusable for other msvc-option-compatible compilers.
-rule configure-version-specific ( toolset : version : condition )
+#
+rule configure-version-specific ( toolset : version : conditions )
 {
     toolset.push-checking-for-flags-module unchecked ;
     # Starting with versions 7.0, the msvc compiler have the /Zc:forScope and
@@ -429,14 +529,20 @@
     # 7.* explicitly, or if the installation path contain 7.* (checked above).
     if ! [ MATCH ^(6\\.) : $(version) ]
     {
- toolset.flags $(toolset).compile CFLAGS $(condition) : /Zc:forScope /Zc:wchar_t ;
- toolset.flags $(toolset).compile.c++ C++FLAGS $(condition) : /wd4675 ;
- # disable the function is deprecated warning
- # Some version of msvc have a bug, that cause deprecation
- # warning to be emitted even with /W0
- toolset.flags $(toolset).compile CFLAGS $(condition)/<warnings>off : /wd4996 ;
- # 64-bit compatibility warning
- toolset.flags $(toolset).compile CFLAGS $(condition)/<warnings>all : /Wp64 ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions) : /Zc:forScope /Zc:wchar_t ;
+ toolset.flags $(toolset).compile.c++ C++FLAGS $(conditions) : /wd4675 ;
+
+ # Explicitly disable the 'function is deprecated' warning. Some msvc
+ # versions have a bug, causing them to emit the deprecation warning even
+ # with /W0.
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/<warnings>off : /wd4996 ;
+
+ if [ MATCH ^([78]\\.) : $(version) ]
+ {
+ # 64-bit compatibility warning deprecated since 9.0, see
+ # http://msdn.microsoft.com/en-us/library/yt4xw8fh.aspx
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/<warnings>all : /Wp64 ;
+ }
     }
 
     #
@@ -446,41 +552,42 @@
     if [ MATCH ^([67]) : $(version) ]
     {
         # 8.0 deprecates some of the options.
- toolset.flags $(toolset).compile CFLAGS $(condition)/<optimization>speed $(condition)/<optimization>space : /Ogiy /Gs ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/<optimization>speed : /Ot ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/<optimization>space : /Os ;
-
- toolset.flags $(toolset).compile CFLAGS $(condition)/$(cpu-arch-i386)/<instruction-set> : /GB ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/$(cpu-arch-i386)/<instruction-set>i386 : /G3 ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/$(cpu-arch-i386)/<instruction-set>i486 : /G4 ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/$(cpu-arch-i386)/<instruction-set>$(cpu-type-g5) : /G5 ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/$(cpu-arch-i386)/<instruction-set>$(cpu-type-g6) : /G6 ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/$(cpu-arch-i386)/<instruction-set>$(cpu-type-g7) : /G7 ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/<optimization>speed $(conditions)/<optimization>space : /Ogiy /Gs ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/<optimization>speed : /Ot ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/<optimization>space : /Os ;
+
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/$(.cpu-arch-i386)/<instruction-set> : /GB ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/$(.cpu-arch-i386)/<instruction-set>i386 : /G3 ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/$(.cpu-arch-i386)/<instruction-set>i486 : /G4 ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/$(.cpu-arch-i386)/<instruction-set>$(cpu-type-g5) : /G5 ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/$(.cpu-arch-i386)/<instruction-set>$(cpu-type-g6) : /G6 ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/$(.cpu-arch-i386)/<instruction-set>$(cpu-type-g7) : /G7 ;
 
         # Improve floating-point accuracy. Otherwise, some of C++ Boost's "math"
         # tests will fail.
- toolset.flags $(toolset).compile CFLAGS $(condition) : /Op ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions) : /Op ;
 
         # 7.1 and below have single-threaded static RTL.
- toolset.flags $(toolset).compile CFLAGS $(condition)/<runtime-debugging>off/<runtime-link>static/<threading>single : /ML ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/<runtime-debugging>on/<runtime-link>static/<threading>single : /MLd ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/<runtime-debugging>off/<runtime-link>static/<threading>single : /ML ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/<runtime-debugging>on/<runtime-link>static/<threading>single : /MLd ;
     }
     else
     {
         # 8.0 and above adds some more options.
- toolset.flags $(toolset).compile CFLAGS $(condition)/$(cpu-arch-amd64)/<instruction-set> : /favor:blend ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/$(cpu-arch-amd64)/<instruction-set>$(cpu-type-em64t) : /favor:EM64T ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/$(cpu-arch-amd64)/<instruction-set>$(cpu-type-amd64) : /favor:AMD64 ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/$(.cpu-arch-amd64)/<instruction-set> : /favor:blend ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/$(.cpu-arch-amd64)/<instruction-set>$(cpu-type-em64t) : /favor:EM64T ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/$(.cpu-arch-amd64)/<instruction-set>$(cpu-type-amd64) : /favor:AMD64 ;
 
         # 8.0 and above only has multi-threaded static RTL.
- toolset.flags $(toolset).compile CFLAGS $(condition)/<runtime-debugging>off/<runtime-link>static/<threading>single : /MT ;
- toolset.flags $(toolset).compile CFLAGS $(condition)/<runtime-debugging>on/<runtime-link>static/<threading>single : /MTd ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/<runtime-debugging>off/<runtime-link>static/<threading>single : /MT ;
+ toolset.flags $(toolset).compile CFLAGS $(conditions)/<runtime-debugging>on/<runtime-link>static/<threading>single : /MTd ;
     }
     toolset.pop-checking-for-flags-module ;
 }
 
 
 # Returns the default installation path for the given version.
+#
 local rule default-path ( version )
 {
     # Use auto-detected path if possible
@@ -520,6 +627,7 @@
 
 # Returns either the default installation path (if 'version' is not empty) or
 # list of all known default paths (if no version is given)
+#
 rule default-paths ( version ? )
 {
     local possible-paths ;
@@ -542,8 +650,8 @@
 
 # Declare generators.
 
-# Is it possible to combine these? Make the generators non-composing so that
-# they don't convert each source into a separate rsp file.
+# TODO: Is it possible to combine these? Make the generators non-composing so
+# that they do not convert each source into a separate .rsp file.
 generators.register-linker msvc.link : OBJ SEARCHED_LIB STATIC_LIB IMPORT_LIB : EXE : <toolset>msvc ;
 generators.register-linker msvc.link.dll : OBJ SEARCHED_LIB STATIC_LIB IMPORT_LIB : SHARED_LIB IMPORT_LIB : <toolset>msvc ;
 
@@ -572,7 +680,7 @@
 
     rule run-pch ( project name ? : property-set : sources * )
     {
- # searching header and source file in the sources
+ # Searching header and source file in the sources.
         local pch-header ;
         local pch-source ;
         for local s in $(sources)
@@ -643,8 +751,8 @@
 flags msvc.compile CFLAGS <optimization>speed : /O2 ;
 flags msvc.compile CFLAGS <optimization>space : /O1 ;
 
-flags msvc.compile CFLAGS $(cpu-arch-ia64)/<instruction-set>$(cpu-type-itanium) : /G1 ;
-flags msvc.compile CFLAGS $(cpu-arch-ia64)/<instruction-set>$(cpu-type-itanium2) : /G2 ;
+flags msvc.compile CFLAGS $(.cpu-arch-ia64)/<instruction-set>$(cpu-type-itanium) : /G1 ;
+flags msvc.compile CFLAGS $(.cpu-arch-ia64)/<instruction-set>$(cpu-type-itanium2) : /G2 ;
 
 flags msvc.compile CFLAGS <debug-symbols>on/<debug-store>object : /Z7 ;
 flags msvc.compile CFLAGS <debug-symbols>on/<debug-store>database : /Zi ;
@@ -686,7 +794,7 @@
 
 rule get-rspline ( target : lang-opt )
 {
- CC_RSPLINE on $(target) = [ on $(target) return $(lang-opt) -U$(UNDEFS) $(CFLAGS) $(C++FLAGS) $(OPTIONS) -c $(nl)-D$(DEFINES) $(nl)\"-I$(INCLUDES)\" ] ;
+ CC_RSPLINE on $(target) = [ on $(target) return $(lang-opt) -U$(UNDEFS) $(CFLAGS) $(C++FLAGS) $(OPTIONS) -c $(nl)-D$(DEFINES) $(nl)\"-I$(INCLUDES:W)\" ] ;
 }
 
 
@@ -771,7 +879,7 @@
 
 actions compile.rc
 {
- $(.RC) -l 0x409 -U$(UNDEFS) -D$(DEFINES) -I"$(INCLUDES)" -fo "$(<:W)" "$(>:W)"
+ $(.RC) -l 0x409 -U$(UNDEFS) -D$(DEFINES) -I"$(INCLUDES:W)" -fo "$(<:W)" "$(>:W)"
 }
 
 
@@ -781,7 +889,7 @@
 
 actions compile.idl
 {
- $(.IDL) /nologo @"@($(<[1]:W).rsp:E=$(nl)"$(>:W)" $(nl)-D$(DEFINES) $(nl)"-I$(INCLUDES)" $(nl)-U$(UNDEFS) $(nl)$(MIDLFLAGS) $(nl)/tlb "$(<[1]:W)" $(nl)/h "$(<[2]:W)" $(nl)/iid "$(<[3]:W)" $(nl)/proxy "$(<[4]:W)" $(nl)/dlldata "$(<[5]:W)")"
+ $(.IDL) /nologo @"@($(<[1]:W).rsp:E=$(nl)"$(>:W)" $(nl)-D$(DEFINES) $(nl)"-I$(INCLUDES:W)" $(nl)-U$(UNDEFS) $(nl)$(MIDLFLAGS) $(nl)/tlb "$(<[1]:W)" $(nl)/h "$(<[2]:W)" $(nl)/iid "$(<[3]:W)" $(nl)/proxy "$(<[4]:W)" $(nl)/dlldata "$(<[5]:W)")"
     $(TOUCH_FILE) "$(<[4]:W)"
     $(TOUCH_FILE) "$(<[5]:W)"
 }
@@ -835,6 +943,7 @@
     DEPENDS $(<) : [ on $(<) return $(DEF_FILE) ] ;
 }
 
+
 # Declare action for creating static libraries. If library exists, remove it
 # before adding files. See
 # http://article.gmane.org/gmane.comp.lib.boost.build/4241 for rationale.
@@ -859,9 +968,9 @@
 
 
 # Incremental linking a DLL causes no end of problems: if the actual exports
-# don't change, the import .lib file is never updated. Therefore, the .lib is
+# do not change, the import .lib file is never updated. Therefore, the .lib is
 # always out-of-date and gets rebuilt every time. I'm not sure that incremental
-# linking is such a great idea in general, but in this case I'm sure we don't
+# linking is such a great idea in general, but in this case I am sure we do not
 # want it.
 
 # Windows manifest is a new way to specify dependencies on managed DotNet
@@ -954,6 +1063,7 @@
 
 # Validates given path, registers found configuration and prints debug
 # information about it.
+#
 local rule register-configuration ( version : path ? )
 {
     if $(path)

Modified: branches/CMake/release/tools/build/v2/tools/pathscale.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/pathscale.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/pathscale.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -41,6 +41,9 @@
 
   toolset.flags pathscale CONFIG_F_COMMAND $(condition) : $(command_f) ;
   toolset.flags pathscale CONFIG_F90_COMMAND $(condition) : $(command_f90) ;
+
+ # always link lib rt to resolve clock_gettime()
+ flags pathscale.link FINDLIBS-SA : rt : unchecked ;
 }
 
 # Declare generators
@@ -112,7 +115,6 @@
 flags pathscale.link FINDLIBS-ST <find-static-library> ;
 flags pathscale.link FINDLIBS-SA <find-shared-library> ;
 flags pathscale.link FINDLIBS-SA <threading>multi : pthread ;
-flags pathscale.link FINDLIBS-SA <threading>multi : rt ;
 flags pathscale.link LIBRARIES <library-file> ;
 flags pathscale.link LINK-RUNTIME <runtime-link>static : static ;
 flags pathscale.link LINK-RUNTIME <runtime-link>shared : dynamic ;

Modified: branches/CMake/release/tools/build/v2/tools/pgi.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/pgi.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/pgi.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -36,11 +36,15 @@
   flags pgi.compile DEFINES $(condition) :
     [ feature.get-values <define> : $(options) ] : unchecked ;
 
+ # IOV_MAX support
+ flags pgi.compile DEFINES $(condition) : __need_IOV_MAX : unchecked ;
+
   # set link flags
   flags pgi.link FINDLIBS-ST : [
     feature.get-values <find-static-library> : $(options) ] : unchecked ;
 
- flags pgi.link FINDLIBS-SA : [
+ # always link lib rt to resolve clock_gettime()
+ flags pgi.link FINDLIBS-SA : rt [
     feature.get-values <find-shared-library> : $(options) ] : unchecked ;
 
   gcc.init-link-flags pgi gnu $(condition) ;

Modified: branches/CMake/release/tools/build/v2/tools/python.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/python.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/python.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -7,11 +7,11 @@
 #
 # This module defines
 #
-# - a project 'python' with a target 'python' in it, that corresponds
-# to the python library
+# - a project 'python' with a target 'python' in it, that corresponds to the
+# python library
 #
-# - a main target rule 'python-extension' which can be used
-# to build a python extension.
+# - a main target rule 'python-extension' which can be used to build a python
+# extension.
 #
 # Extensions that use Boost.Python must explicitly link to it.
 
@@ -24,7 +24,7 @@
 import "class" : new ;
 import os ;
 import common ;
-import toolset : flags ;
+import toolset ;
 import regex ;
 import numbers ;
 import string ;
@@ -34,21 +34,21 @@
 import feature ;
 import set ;
 import builtin ;
+import version ;
 
-# Make this module a project
+
+# Make this module a project.
 project.initialize $(__name__) ;
 project python ;
 
-# Save the project so that if 'init' is called several
-# times we define new targets in the python project,
-# not in whatever project we were called by.
+# Save the project so that if 'init' is called several times we define new
+# targets in the python project, not in whatever project we were called by.
 .project = [ project.current ] ;
 
-# Dynamic linker lib. Necessary to specify it explicitly
-# on some platforms.
+# Dynamic linker lib. Necessary to specify it explicitly on some platforms.
 lib dl ;
-# This contains 'openpty' function need by python. Again, on
-# some system need to pass this to linker explicitly.
+# This contains 'openpty' function need by python. Again, on some system need to
+# pass this to linker explicitly.
 lib util ;
 # Python uses pthread symbols.
 lib pthread ;
@@ -56,44 +56,38 @@
 lib rt ;
 
 # The pythonpath feature specifies additional elements for the PYTHONPATH
-# environment variable, set by run-pyd. For example, pythonpath can be used
-# to access Python modules that are part of the product being built, but
-# are not installed in the development system's default paths.
+# environment variable, set by run-pyd. For example, pythonpath can be used to
+# access Python modules that are part of the product being built, but are not
+# installed in the development system's default paths.
 feature.feature pythonpath : : free optional path ;
 
-# Initializes the Python toolset. Note that all parameters are
-# optional.
+# Initializes the Python toolset. Note that all parameters are optional.
+#
+# - version -- the version of Python to use. Should be in Major.Minor format,
+# for example 2.3. Do not include the subminor version.
+#
+# - cmd-or-prefix: Preferably, a command that invokes a Python interpreter.
+# Alternatively, the installation prefix for Python libraries and includes. If
+# empty, will be guessed from the version, the platform's installation
+# patterns, and the python executables that can be found in PATH.
+#
+# - includes: the include path to Python headers. If empty, will be guessed.
+#
+# - libraries: the path to Python library binaries. If empty, will be guessed.
+# On MacOS/Darwin, you can also pass the path of the Python framework.
 #
-# - version -- the version of Python to use. Should be in Major.Minor
-# format, for example 2.3. Do not include the subminor version.
+# - condition: if specified, should be a set of properties that are matched
+# against the build configuration when Boost.Build selects a Python
+# configuration to use.
 #
-# - cmd-or-prefix: Preferably, a command that invokes a Python
-# interpreter. Alternatively, the installation prefix for Python
-# libraries and includes. If empty, will be guessed from the
-# version, the platform's installation patterns, and the python
-# executables that can be found in PATH.
-#
-# - includes: the include path to Python headers. If empty, will be
-# guessed.
-#
-# - libraries: the path to Python library binaries. If empty, will be
-# guessed. On MacOS/Darwin, you can also pass the path of the
-# Python framework.
-#
-# - condition: if specified, should be a set of properties that are
-# matched against the build configuration when Boost.Build selects a
-# Python configuration to use.
-#
-# - extension-suffix: A string to append to the name of extension
-# modules before the true filename extension. Ordinarily we would
-# just compute this based on the value of the <python-debugging>
-# feature. However ubuntu's python-dbg package uses the windows
-# convention of appending _d to debug-build extension modules. We
-# have no way of detecting ubuntu, or of probing python for the "_d"
-# requirement, and if you configure and build python using
-# --with-pydebug, you'll be using the standard *nix convention.
-# Defaults to "" (or "_d" when targeting windows and
-# <python-debugging> is set).
+# - extension-suffix: A string to append to the name of extension modules before
+# the true filename extension. Ordinarily we would just compute this based on
+# the value of the <python-debugging> feature. However ubuntu's python-dbg
+# package uses the windows convention of appending _d to debug-build extension
+# modules. We have no way of detecting ubuntu, or of probing python for the
+# "_d" requirement, and if you configure and build python using
+# --with-pydebug, you'll be using the standard *nix convention. Defaults to ""
+# (or "_d" when targeting windows and <python-debugging> is set).
 #
 # Example usage:
 #
@@ -119,8 +113,9 @@
     project.pop-current ;
 }
 
-# A simpler version of SHELL that grabs stderr as well as stdout, but
-# returns nothing if there's an error.
+# A simpler version of SHELL that grabs stderr as well as stdout, but returns
+# nothing if there was an error.
+#
 local rule shell-cmd ( cmd )
 {
     debug-message running command '$(cmd)" 2>&1"' ;
@@ -135,34 +130,34 @@
     }
 }
 
-# Try to identify Cygwin symlinks. Invoking such a file directly as
-# an NT executable from a native Windows build of bjam would be fatal
-# to the bjam process. One /can/ invoke them through sh.exe or
-# bash.exe, if you can prove that those aren't also symlinks ;-)
+
+# Try to identify Cygwin symlinks. Invoking such a file directly as an NT
+# executable from a native Windows build of bjam would be fatal to the bjam
+# process. One /can/ invoke them through sh.exe or bash.exe, if you can prove
+# that those are not also symlinks. ;-)
 #
-# If a symlink is found returns non-empty; we try to extract the
-# target of the symlink from the file and return that.
+# If a symlink is found returns non-empty; we try to extract the target of the
+# symlink from the file and return that.
 #
 # Note: 1. only works on NT 2. path is a native path.
 local rule is-cygwin-symlink ( path )
 {
     local is-symlink = ;
 
- # Look for a file with the given path having the S attribute set,
- # as cygwin symlinks do. /-C means "do not use thousands
- # separators in file sizes."
- local dir-listing = [ shell-cmd "DIR /-C /A:S "$(path) ] ;
+ # Look for a file with the given path having the S attribute set, as cygwin
+ # symlinks do. /-C means "do not use thousands separators in file sizes."
+ local dir-listing = [ shell-cmd "DIR /-C /A:S \""$(path)"\"" ] ;
 
     if $(dir-listing)
     {
- # escape any special regex characters in the base part of the path
+ # Escape any special regex characters in the base part of the path.
         local base-pat = [ regex.escape $(path:D=) : ].[()*+?|\\$^ : \\ ] ;
 
- # extract the file's size from the directory listing
+ # Extract the file's size from the directory listing.
         local size-of-system-file = [ MATCH "([0-9]+) "$(base-pat) : $(dir-listing) : 1 ] ;
 
- # if the file has a reasonably small size, look for the
- # special symlink identification text
+ # If the file has a reasonably small size, look for the special symlink
+ # identification text.
         if $(size-of-system-file) && [ numbers.less $(size-of-system-file) 1000 ]
         {
             local link = [ SHELL "FIND /OFF \"!<symlink>\" \""$(path)"\" 2>&1" ] ;
@@ -184,7 +179,9 @@
     return $(is-symlink) ;
 }
 
-# Append ext to each member of names that does not contain '.'
+
+# Append ext to each member of names that does not contain '.'.
+#
 local rule default-extension ( names * : ext * )
 {
     local result ;
@@ -199,10 +196,12 @@
     return $(result) ;
 }
 
-# Tries to determine whether invoking "cmd" would actually attempt to
-# launch a cygwin symlink.
+
+# Tries to determine whether invoking "cmd" would actually attempt to launch a
+# cygwin symlink.
+#
+# Note: only works on NT.
 #
-# Note: only works on NT
 local rule invokes-cygwin-symlink ( cmd )
 {
     local dirs = $(cmd:D) ;
@@ -210,16 +209,17 @@
     {
         dirs = . [ os.executable-path ] ;
     }
- local base = [ default-extension $(cmd:D=) : .exe .bat ] ;
+ local base = [ default-extension $(cmd:D=) : .exe .cmd .bat ] ;
     local paths = [ GLOB $(dirs) : $(base) ] ;
     if $(paths)
     {
- # Make sure we didn't find a Cygwin symlink. Invoking such a
- # file as an NT executable will be fatal to the bjam process.
+ # Make sure we have not run into a Cygwin symlink. Invoking such a file
+ # as an NT executable would be fatal for the bjam process.
         return [ is-cygwin-symlink $(paths[1]) ] ;
     }
 }
 
+
 local rule debug-message ( message * )
 {
     if --debug-configuration in [ modules.peek : ARGV ]
@@ -228,11 +228,12 @@
     }
 }
 
+
 # Like W32_GETREG, except prepend HKEY_CURRENT_USER\SOFTWARE and
-# HKEY_LOCAL_MACHINE\SOFTWARE to the first argument, returning the
-# first result found. Also accounts for the fact that on 64-bit
-# machines, 32-bit software has its own area, under
-# SOFTWARE\Wow6432node.
+# HKEY_LOCAL_MACHINE\SOFTWARE to the first argument, returning the first result
+# found. Also accounts for the fact that on 64-bit machines, 32-bit software has
+# its own area, under SOFTWARE\Wow6432node.
+#
 local rule software-registry-value ( path : data ? )
 {
     local result ;
@@ -250,6 +251,7 @@
     return $(result) ;
 }
 
+
 .windows-drive-letter-re = ^([A-Za-z]):[\\/](.*) ;
 .cygwin-drive-letter-re = ^/cygdrive/([a-z])/(.*) ;
 
@@ -257,21 +259,23 @@
 .working-drive-letter = [ SUBST $(.working-directory) $(.windows-drive-letter-re) $1 ] ;
 .working-drive-letter ?= [ SUBST $(.working-directory) $(.cygwin-drive-letter-re) $1 ] ;
 
+
 local rule windows-to-cygwin-path ( path )
 {
- # if path is rooted with a drive letter, rewrite it using the
- # /cygdrive mountpoint
+ # If path is rooted with a drive letter, rewrite it using the /cygdrive
+ # mountpoint.
     local p = [ SUBST $(path:T) $(.windows-drive-letter-re) /cygdrive/$1/$2 ] ;
 
- # else if path is rooted without a drive letter, use the working directory
- p ?= [ SUBST $(path:T) ^/(.*) /cygdrive/$(.working-drive-letter:L)/$2 ] ;
+ # Else if path is rooted without a drive letter, use the working directory.
+ p ?= [ SUBST $(path:T) ^/(.*) /cygdrive/$(.working-drive-letter:L)/$2 ] ;
 
- # else return the path unchanged
+ # Else return the path unchanged.
     return $(p:E=$(path:T)) ;
 }
 
-# :W only works in Cygwin builds of bjam. This one works on NT builds
-# as well.
+
+# :W only works in Cygwin builds of bjam. This one works on NT builds as well.
+#
 local rule cygwin-to-windows-path ( path )
 {
     path = $(path:R="") ; # strip any trailing slash
@@ -289,10 +293,8 @@
 
         while $(head)
         {
- local root = [
- software-registry-value "Cygnus Solutions\\Cygwin\\mounts v2\\"$(head)
- : native
- ] ;
+ local root = [ software-registry-value
+ "Cygnus Solutions\\Cygwin\\mounts v2\\"$(head) : native ] ;
 
             if $(root)
             {
@@ -314,7 +316,9 @@
     return [ regex.replace $(path:R="") / \\ ] ;
 }
 
-# Convert a *nix path to native
+
+# Convert a *nix path to native.
+#
 local rule *nix-path-to-native ( path )
 {
     if [ os.name ] = NT
@@ -324,7 +328,9 @@
     return $(path) ;
 }
 
-# Convert an NT path to native
+
+# Convert an NT path to native.
+#
 local rule windows-path-to-native ( path )
 {
     if [ os.name ] = NT
@@ -337,13 +343,16 @@
     }
 }
 
-# Return nonempty if path looks like a windows path, i.e. it starts
-# with a drive letter or contains backslashes.
+
+# Return nonempty if path looks like a windows path, i.e. it starts with a drive
+# letter or contains backslashes.
+#
 local rule guess-windows-path ( path )
 {
     return [ SUBST $(path) ($(.windows-drive-letter-re)|.*([\\]).*) $1 ] ;
 }
 
+
 local rule path-to-native ( paths * )
 {
     local result ;
@@ -362,8 +371,9 @@
     return $(result) ;
 }
 
-# Validate the version string and extract the major/minor part we care
-# about
+
+# Validate the version string and extract the major/minor part we care about.
+#
 local rule split-version ( version )
 {
     local major-minor = [ MATCH ^([0-9]+)\.([0-9]+)(.*)$ : $(version) : 1 2 3 ] ;
@@ -378,16 +388,18 @@
     return $(major-minor[1]) $(major-minor[2]) ;
 }
 
-# Build a list of versions from 3.0 down to 1.5. Because bjam
-# can't enumerate registry sub-keys, we have no way of finding
-# a version with a 2-digit minor version, e.g. 2.10 -- let's
-# hope that never happens.
+
+# Build a list of versions from 3.0 down to 1.5. Because bjam can not enumerate
+# registry sub-keys, we have no way of finding a version with a 2-digit minor
+# version, e.g. 2.10 -- let us hope that never happens.
+#
 .version-countdown = ;
 for local v in [ numbers.range 15 30 ]
 {
     .version-countdown = [ SUBST $(v) (.)(.*) $1.$2 ] $(.version-countdown) ;
 }
 
+
 local rule windows-installed-pythons ( version ? )
 {
     version ?= $(.version-countdown) ;
@@ -409,6 +421,7 @@
     return $(interpreters) ;
 }
 
+
 local rule darwin-installed-pythons ( version ? )
 {
     version ?= $(.version-countdown) ;
@@ -420,12 +433,14 @@
     return $(prefix)/Versions/$(version)/bin/python ;
 }
 
-# Assume "python-cmd" invokes a python interpreter and invoke it to
-# extract all the information we care about from its "sys" module.
-# Returns void if unsuccessful.
+
+# Assume "python-cmd" invokes a python interpreter and invoke it to extract all
+# the information we care about from its "sys" module. Returns void if
+# unsuccessful.
+#
 local rule probe ( python-cmd )
 {
- # Avoid invoking a Cygwin symlink on NT
+ # Avoid invoking a Cygwin symlink on NT.
     local skip-symlink ;
     if [ os.name ] = NT
     {
@@ -441,19 +456,17 @@
         debug-message If you intend to target a Cygwin build of Python, please ;
         debug-message replace the path to the link with the path to a real executable ;
         debug-message (guessing: \"$(skip-symlink)\") "in" your 'using python' line ;
- debug-message "in" user-config.jam or site-config.jam. Don't forget to escape ;
+ debug-message "in" user-config.jam or site-config.jam. Do not forget to escape ;
         debug-message backslashes ;
         debug-message -------------------------------------------------------------------- ;
     }
     else
     {
- # Prepare a List of Python format strings and expressions that
- # can be used to print the constants we want from the sys
- # module.
-
- # We don't really want sys.version since that's a complicated
- # string, so get the information from sys.version_info
- # instead.
+ # Prepare a List of Python format strings and expressions that can be
+ # used to print the constants we want from the sys module.
+
+ # We do not really want sys.version since that is a complicated string,
+ # so get the information from sys.version_info instead.
         local format = "version=%d.%d" ;
         local exprs = "version_info[0]" "version_info[1]" ;
 
@@ -463,22 +476,29 @@
             exprs += $(s) ;
         }
 
- # Invoke Python and ask it for all those values
+ # Invoke Python and ask it for all those values.
+ if [ version.check-jam-version 3 1 17 ] || ( [ os.name ] != NT )
+ {
+ # Prior to version 3.1.17 Boost Jam's SHELL command did not support
+ # quoted commands correctly on Windows. This means that on that
+ # platform we do not support using a Python command interpreter
+ # executable whose path contains a space character.
+ python-cmd = \"$(python-cmd)\" ;
+ }
         local full-cmd =
- $(python-cmd)" -c \"from sys import *; print '"$(format:J=\\n)"' % ("$(exprs:J=,)")\"" ;
+ $(python-cmd)" -c \"from sys import *; print '"$(format:J=\\n)"' % ("$(exprs:J=,)")\"" ;
 
         local output = [ shell-cmd $(full-cmd) ] ;
         if $(output)
         {
- # Parse the output to get all the results
+ # Parse the output to get all the results.
             local nl = "
 
 " ;
             for s in $(sys-elements)
             {
- # These variables are expected to be declared local in
- # the caller, so Jam's dynamic scoping will set their
- # values there.
+ # These variables are expected to be declared local in the
+ # caller, so Jam's dynamic scoping will set their values there.
                 sys.$(s) = [ SUBST $(output) \\<$(s)=([^$(nl)]+) $1 ] ;
             }
         }
@@ -486,30 +506,29 @@
     }
 }
 
-# Make sure the "libraries" and "includes" variables (in an enclosing
-# scope) have a value based on the information given.
-local rule compute-default-paths (
- target-os : version ? : prefix ? : exec-prefix ? )
+
+# Make sure the "libraries" and "includes" variables (in an enclosing scope)
+# have a value based on the information given.
+#
+local rule compute-default-paths ( target-os : version ? : prefix ? :
+ exec-prefix ? )
 {
     exec-prefix ?= $(prefix) ;
 
     if $(target-os) = windows
     {
- # The exec_prefix is where you're supposed to look for
- # machine-specific libraries.
+ # The exec_prefix is where you're supposed to look for machine-specific
+ # libraries.
         local default-library-path = $(exec-prefix)\\libs ;
         local default-include-path = $(:E=Include:R=$(prefix)) ;
 
- # If the interpreter was found in a directory
- # called "PCBuild" or "PCBuild8," assume we're
- # looking at a Python built from the source
- # distro, and go up one additional level to the
- # default root. Otherwise, the default root is
- # the directory where the interpreter was found.
-
- # We ask Python itself what the executable path is
- # in case of intermediate symlinks or shell
- # scripts.
+ # If the interpreter was found in a directory called "PCBuild" or
+ # "PCBuild8," assume we're looking at a Python built from the source
+ # distro, and go up one additional level to the default root. Otherwise,
+ # the default root is the directory where the interpreter was found.
+
+ # We ask Python itself what the executable path is in case of
+ # intermediate symlinks or shell scripts.
         local executable-dir = $(sys.executable:D) ;
 
         if [ MATCH ^(PCBuild) : $(executable-dir:D=) ]
@@ -517,8 +536,7 @@
             debug-message "This Python appears to reside in a source distribution;" ;
             debug-message "prepending \""$(executable-dir)"\" to default library search path" ;
 
- default-library-path = $(executable-dir)
- $(default-library-path) ;
+ default-library-path = $(executable-dir) $(default-library-path) ;
 
             default-include-path = $(:E=PC:R=$(executable-dir:D)) $(default-include-path) ;
 
@@ -537,11 +555,11 @@
     }
 }
 
-# The version of the python interpreter to use
+# The version of the python interpreter to use.
 feature.feature python : : propagated ;
 feature.feature python.interpreter : : free ;
 
-flags python.capture-output PYTHON : <python.interpreter> ;
+toolset.flags python.capture-output PYTHON : <python.interpreter> ;
 
 #
 # Support for Python configured --with-pydebug
@@ -549,79 +567,78 @@
 feature.feature python-debugging : off on : propagated ;
 builtin.variant debug-python : debug : <python-debugging>on ;
 
+
 # Return a list of candidate commands to try when looking for a Python
-# interpreter. prefix is expected to be a native path.
+# interpreter. prefix is expected to be a native path.
+#
 local rule candidate-interpreters ( version ? : prefix ? : target-os )
 {
     local bin-path = bin ;
     if $(target-os) = windows
     {
- # on Windows, look in the root directory itself and, to work
- # with the result of a build-from-source, the PCBuild directory
- bin-path = PCBuild8 PCBuild "" ;
+ # On Windows, look in the root directory itself and, to work with the
+ # result of a build-from-source, the PCBuild directory.
+ bin-path = PCBuild8 PCBuild "" ;
     }
 
     bin-path = $(bin-path:R=$(prefix)) ;
 
     if $(target-os) in windows darwin
     {
- return # Search:
- $(:E=python:R=$(bin-path)) # Relative to the prefix, if any
- python # In the PATH
- [ $(target-os)-installed-pythons $(version) ] # Standard install locations
+ return # Search:
+ $(:E=python:R=$(bin-path)) # Relative to the prefix, if any
+ python # In the PATH
+ [ $(target-os)-installed-pythons $(version) ] # Standard install locations
         ;
     }
     else
     {
- # Search relative to the prefix, or if none supplied, in PATH
+ # Search relative to the prefix, or if none supplied, in PATH.
         local unversioned = $(:E=python:R=$(bin-path:E=)) ;
 
- # if a version was specified, look for a python with that
- # specific version appended before looking for one called,
- # simply, "python"
+ # If a version was specified, look for a python with that specific
+ # version appended before looking for one called, simply, "python"
         return $(unversioned)$(version) $(unversioned) ;
     }
 }
 
-# Compute system library dependencies for targets linking with
-# static Python libraries.
+
+# Compute system library dependencies for targets linking with static Python
+# libraries.
 #
-# On many systems, Python uses libraries such as pthreads or
-# libdl. Since static libraries carry no library dependency
-# information of their own that the linker can extract, these
-# extra dependencies have to be given explicitly on the link line
-# of the client. The information about these dependencies is
-# packaged into the "python" target below.
-
-# Even where Python itself uses pthreads, it never allows
-# extension modules to be entered concurrently (unless they
-# explicitly give up the interpreter lock). Therefore, extension
-# modules don't need the efficiency overhead of threadsafe code as
-# produced by <threading>multi, and we handle libpthread along
-# with other libraries here. Note: this optimization is based on
-# an assumption that the compiler generates link-compatible code
-# in both the single- and multi-threaded cases, and that system
-# libraries don't change their ABIs either.
+# On many systems, Python uses libraries such as pthreads or libdl. Since static
+# libraries carry no library dependency information of their own that the linker
+# can extract, these extra dependencies have to be given explicitly on the link
+# line of the client. The information about these dependencies is packaged into
+# the "python" target below.
+#
+# Even where Python itself uses pthreads, it never allows extension modules to
+# be entered concurrently (unless they explicitly give up the interpreter lock).
+# Therefore, extension modules do not need the efficiency overhead of threadsafe
+# code as produced by <threading>multi, and we handle libpthread along with
+# other libraries here. Note: this optimization is based on an assumption that
+# the compiler generates link-compatible code in both the single- and
+# multi-threaded cases, and that system libraries do not change their ABIs
+# either.
+#
+# Returns a list of usage-requirements that link to the necessary system
+# libraries.
 #
-# Returns a list of usage-requirements that link to the necessary
-# system libraries.
 local rule system-library-dependencies ( target-os )
 {
     switch $(target-os)
     {
         case s[uo][nl]* : # solaris, sun, sunos
- # Add a librt dependency for the gcc toolset on SunOS (the
- # sun toolset adds -lrt unconditionally). While this
- # appears to duplicate the logic already in gcc.jam, it
- # doesn't as long as we're not forcing <threading>multi.
-
- # On solaris 10,
- # distutils.sysconfig.get_config_var('LIBS') yields
- # '-lresolv -lsocket -lnsl -lrt -ldl'. However, that
- # doesn't seem to be the right list for extension modules.
- # For example, on my installation, adding -ldl causes at
- # least one test to fail because the library can't be
- # found and removing it causes no failures.
+ # Add a librt dependency for the gcc toolset on SunOS (the sun
+ # toolset adds -lrt unconditionally). While this appears to
+ # duplicate the logic already in gcc.jam, it does not as long as
+ # we are not forcing <threading>multi.
+
+ # On solaris 10, distutils.sysconfig.get_config_var('LIBS') yields
+ # '-lresolv -lsocket -lnsl -lrt -ldl'. However, that does not seem
+ # to be the right list for extension modules. For example, on my
+ # installation, adding -ldl causes at least one test to fail because
+ # the library can not be found and removing it causes no failures.
 
             # Apparently, though, we need to add -lrt for gcc.
             return <toolset>gcc:<library>rt ;
@@ -640,11 +657,13 @@
     }
 }
 
+
 # Declare a target to represent Python's library.
+#
 local rule declare-libpython-target ( version ? : requirements * )
 {
- # Compute the representation of Python version in the name of
- # Python's library file.
+ # Compute the representation of Python version in the name of Python's
+ # library file.
     local lib-version = $(version) ;
     if <target-os>windows in $(requirements)
     {
@@ -664,13 +683,14 @@
         ECHO *** warning: to 'using python'. ;
     }
 
- # Declare it
+ # Declare it.
     lib python.lib : : <name>python$(lib-version) $(requirements) ;
 }
 
-# implementation of init
-local rule configure (
- version ? : cmd-or-prefix ? : includes * : libraries ? : condition * : extension-suffix ? )
+
+# Implementation of init.
+local rule configure ( version ? : cmd-or-prefix ? : includes * : libraries ? :
+ condition * : extension-suffix ? )
 {
     local prefix ;
     local exec-prefix ;
@@ -687,7 +707,7 @@
     }
     extension-suffix ?= "" ;
 
- # Normalize and dissect any version number
+ # Normalize and dissect any version number.
     local major-minor ;
     if $(version)
     {
@@ -699,7 +719,7 @@
 
     if ! $(cmd-or-prefix) || [ GLOB $(cmd-or-prefix) : * ]
     {
- # if the user didn't pass a command, whatever we got was a prefix
+ # If the user did not pass a command, whatever we got was a prefix.
         prefix = $(cmd-or-prefix) ;
         cmds-to-try = [ candidate-interpreters $(version) : $(prefix) : $(target-os) ] ;
     }
@@ -708,31 +728,31 @@
         # Work with the command the user gave us.
         cmds-to-try = $(cmd-or-prefix) ;
 
- # On windows, don't nail down the interpreter command just yet
- # in case the user specified something that turns out to be a
- # cygwin symlink, which could bring down bjam if we invoke it.
+ # On Windows, do not nail down the interpreter command just yet in case
+ # the user specified something that turns out to be a cygwin symlink,
+ # which could bring down bjam if we invoke it.
         if $(target-os) != windows
         {
             interpreter-cmd = $(cmd-or-prefix) ;
         }
     }
 
- # Values to use in case we can't really find anything in the system.
+ # Values to use in case we can not really find anything in the system.
     local fallback-cmd = $(cmds-to-try[1]) ;
     local fallback-version ;
 
     # Anything left to find or check?
     if ! ( $(interpreter-cmd) && $(includes) && $(libraries) )
     {
- # Values to be extracted from python's sys module. These will
- # be set by the probe rule, above, using Jam's dynamic scoping.
+ # Values to be extracted from python's sys module. These will be set by
+ # the probe rule, above, using Jam's dynamic scoping.
         local sys-elements = version platform prefix exec_prefix executable ;
         local sys.$(sys-elements) ;
 
- # compute the string Python's sys.platform needs to match. If
- # not targeting windows or cygwin we'll assume only native
- # builds can possibly run, so we won't require a match and we
- # leave sys.platform blank.
+ # Compute the string Python's sys.platform needs to match. If not
+ # targeting Windows or cygwin we will assume only native builds can
+ # possibly run, so we will not require a match and we leave sys.platform
+ # blank.
         local platform ;
         switch $(target-os)
         {
@@ -742,7 +762,7 @@
 
         while $(cmds-to-try)
         {
- # pop top command
+ # Pop top command.
             local cmd = $(cmds-to-try[1]) ;
             cmds-to-try = $(cmds-to-try[2-]) ;
 
@@ -751,7 +771,7 @@
             {
                 fallback-version ?= $(sys.version) ;
 
- # Check for version/platform validity
+ # Check for version/platform validity.
                 for local x in version platform
                 {
                     if $($(x)) && $($(x)) != $(sys.$(x))
@@ -768,15 +788,12 @@
 
                     exec-prefix = $(sys.exec_prefix) ;
 
- compute-default-paths
- $(target-os)
- : $(sys.version)
- : $(sys.prefix)
- : $(sys.exec_prefix) ;
+ compute-default-paths $(target-os) : $(sys.version) :
+ $(sys.prefix) : $(sys.exec_prefix) ;
 
                     version = $(sys.version) ;
                     interpreter-cmd ?= $(cmd) ;
- cmds-to-try = ; # All done.
+ cmds-to-try = ; # All done.
                 }
             }
             else
@@ -822,13 +839,12 @@
         debug-message " DLL search path:" \"$(exec-prefix:E=<empty>)\" ;
     }
 
-
     #
- # End autoconfiguration sequence
+ # End autoconfiguration sequence.
     #
     local target-requirements = $(condition) ;
 
- # Add the version, if any, to the target requirements
+ # Add the version, if any, to the target requirements.
     if $(version)
     {
         if ! $(version) in [ feature.values python ]
@@ -840,11 +856,11 @@
 
     target-requirements += <target-os>$(target-os) ;
 
- # See if we can find a framework directory on darwin
+ # See if we can find a framework directory on darwin.
     local framework-directory ;
     if $(target-os) = darwin
     {
- # Search upward for the framework directory
+ # Search upward for the framework directory.
         local framework-directory = $(libraries[-1]) ;
         while $(framework-directory:D=) && $(framework-directory:D=) != Python.framework
         {
@@ -864,14 +880,14 @@
 
     local dll-path = $(libraries) ;
 
- # Make sure that we can find the Python DLL on windows
- if $(target-os) = windows && $(exec-prefix)
+ # Make sure that we can find the Python DLL on Windows.
+ if ( $(target-os) = windows ) && $(exec-prefix)
     {
         dll-path += $(exec-prefix) ;
     }
 
     #
- # prepare usage requirements
+ # Prepare usage requirements.
     #
     local usage-requirements = [ system-library-dependencies $(target-os) ] ;
     usage-requirements += <include>$(includes) <python.interpreter>$(interpreter-cmd) ;
@@ -879,8 +895,8 @@
     {
         if $(target-os) = windows
         {
- # in pyconfig.h, Py_DEBUG is set if _DEBUG is set. If we
- # define Py_DEBUG we'll get multiple definition warnings.
+ # In pyconfig.h, Py_DEBUG is set if _DEBUG is set. If we define
+ # Py_DEBUG we will get multiple definition warnings.
             usage-requirements += <define>_DEBUG ;
         }
         else
@@ -888,7 +904,7 @@
             usage-requirements += <define>Py_DEBUG ;
         }
     }
-
+
     # Global, but conditional, requirements to give access to the interpreter
     # for general utilities, like other toolsets, that run Python scripts.
     toolset.add-requirements
@@ -899,7 +915,7 @@
 
     #
     # Declare the "python" target. This should really be called
- # python_for_embedding
+ # python_for_embedding.
     #
 
     if $(framework-directory)
@@ -915,113 +931,116 @@
     {
         declare-libpython-target $(version) : $(target-requirements) ;
 
- # This is an evil hack. On, Windows, when Python is embedded,
- # nothing seems to set up sys.path to include Python's
- # standard library
- # (http://article.gmane.org/gmane.comp.python.general/544986). The
- # evil here, aside from the workaround necessitated by
- # Python's bug, is that:
+ # This is an evil hack. On, Windows, when Python is embedded, nothing
+ # seems to set up sys.path to include Python's standard library
+ # (http://article.gmane.org/gmane.comp.python.general/544986). The evil
+ # here, aside from the workaround necessitated by Python's bug, is that:
         #
- # a. we're guessing the location of the python standard
- # library from the location of pythonXX.lib
+ # a. we're guessing the location of the python standard library from the
+ # location of pythonXX.lib
         #
- # b. we're hijacking the <testing.launcher> property to get
- # the environment variable set up, and the user may want to
- # use it for something else (e.g. launch the debugger).
+ # b. we're hijacking the <testing.launcher> property to get the
+ # environment variable set up, and the user may want to use it for
+ # something else (e.g. launch the debugger).
         local set-PYTHONPATH ;
         if $(target-os) = windows
         {
- set-PYTHONPATH =
- [ common.prepend-path-variable-command PYTHONPATH : $(libraries:D)/Lib ] ;
+ set-PYTHONPATH = [ common.prepend-path-variable-command PYTHONPATH :
+ $(libraries:D)/Lib ] ;
         }
 
         alias python
           :
           : $(target-requirements)
           :
- # why python.lib must be listed here instead of along with
- # the system libs is a mystery, but if we don't do it, on
- # cygwin, -lpythonX.Y never appears in the command line
- # (although it does on linux).
+ # Why python.lib must be listed here instead of along with the
+ # system libs is a mystery, but if we do not do it, on cygwin,
+ # -lpythonX.Y never appears in the command line (although it does on
+ # linux).
           : $(usage-requirements)
             <testing.launcher>$(set-PYTHONPATH)
               <library-path>$(libraries) <dll-path>$(dll-path) <library>python.lib
           ;
     }
 
- # On *nix, we don't want to link either Boost.Python or Python
- # extensions to libpython, because the Python interpreter itself
- # provides all those symbols. If we linked to libpython, we'd get
- # duplicate symbols. So declare two targets -- one for building
- # extensions and another for embedding
+ # On *nix, we do not want to link either Boost.Python or Python extensions
+ # to libpython, because the Python interpreter itself provides all those
+ # symbols. If we linked to libpython, we would get duplicate symbols. So
+ # declare two targets -- one for building extensions and another for
+ # embedding.
     #
     # Unlike most *nix systems, Mac OS X's linker does not permit undefined
- # symbols when linking a shared library. So, we still need to link
- # against the Python framework, even when building extensions.
- # Note that framework builds of Python always use shared libraries,
- # so we do not need to worry about duplicate Python symbols.
+ # symbols when linking a shared library. So, we still need to link against
+ # the Python framework, even when building extensions. Note that framework
+ # builds of Python always use shared libraries, so we do not need to worry
+ # about duplicate Python symbols.
     if $(target-os) in windows cygwin darwin
     {
         alias python_for_extensions : python : $(target-requirements) ;
     }
- # On AIX we need Python extensions and Boost.Python to import symbols
- # from the Python interpreter. Dynamic libraries opened with dlopen()
- # do not inherit the symbols from the Python interpreter.
+ # On AIX we need Python extensions and Boost.Python to import symbols from
+ # the Python interpreter. Dynamic libraries opened with dlopen() do not
+ # inherit the symbols from the Python interpreter.
     else if $(target-os) = aix
     {
         alias python_for_extensions
- :
- : $(target-requirements)
- :
- : $(usage-requirements) <linkflags>-Wl,-bI:$(libraries[1])/python.exp
- ;
+ :
+ : $(target-requirements)
+ :
+ : $(usage-requirements) <linkflags>-Wl,-bI:$(libraries[1])/python.exp
+ ;
     }
     else
     {
         alias python_for_extensions
- :
- : $(target-requirements)
- :
- : $(usage-requirements)
- ;
+ :
+ : $(target-requirements)
+ :
+ : $(usage-requirements)
+ ;
     }
 }
 
+
 rule configured ( )
 {
      return $(.configured) ;
 }
 
+
 type.register PYTHON_EXTENSION : : SHARED_LIB ;
 
+
 local rule register-extension-suffix ( root : condition * )
 {
     local suffix ;
 
     switch [ feature.get-values target-os : $(condition) ]
     {
- case windows : suffix = pyd ;
- case cygwin : suffix = dll ;
- case hpux :
- {
- if [ feature.get-values python : $(condition) ] in 1.5 1.6 2.0 2.1 2.2 2.3 2.4
- {
- suffix = sl ;
- }
- else
- {
- suffix = so ;
- }
- }
- case * : suffix = so ;
+ case windows : suffix = pyd ;
+ case cygwin : suffix = dll ;
+ case hpux :
+ {
+ if [ feature.get-values python : $(condition) ] in 1.5 1.6 2.0 2.1 2.2 2.3 2.4
+ {
+ suffix = sl ;
+ }
+ else
+ {
+ suffix = so ;
+ }
+ }
+ case * : suffix = so ;
     }
 
     type.set-generated-target-suffix PYTHON_EXTENSION : $(condition) : <$(root).$(suffix)> ;
 }
 
+
 # Unset 'lib' prefix for PYTHON_EXTENSION
 type.set-generated-target-prefix PYTHON_EXTENSION : : "" ;
 
+
 rule python-extension ( name : sources * : requirements * : default-build * :
                         usage-requirements * )
 {
@@ -1044,7 +1063,7 @@
 IMPORT python : python-extension : : python-extension ;
 
 
-# Support for testing
+# Support for testing.
 type.register PY : py ;
 type.register RUN_PYD_OUTPUT ;
 type.register RUN_PYD : : TEST ;
@@ -1113,38 +1132,38 @@
                 local extension = [ generators.construct $(project) $(name) :
                   PYTHON_EXTENSION : $(property-set) : $(s) $(libs) ] ;
 
- # The important part of usage requirements returned
- # from PYTHON_EXTENSION generator are xdll-path
- # properties that will allow us to find the python
- # extension at runtime.
+ # The important part of usage requirements returned from
+ # PYTHON_EXTENSION generator are xdll-path properties that will
+ # allow us to find the python extension at runtime.
                 property-set = [ $(property-set).add $(extension[1]) ] ;
 
- # Ignore usage requirements. We're a top-level
- # generator and nobody is going to use what we
- # generate.
+ # Ignore usage requirements. We're a top-level generator and
+ # nobody is going to use what we generate.
                 new-sources += $(extension[2-]) ;
             }
         }
 
         property-set = [ $(property-set).add-raw <dependency>$(other-pythons) ] ;
 
- result = [ construct-result $(python) $(extensions) $(new-sources)
- : $(project) $(name) : $(property-set) ] ;
+ result = [ construct-result $(python) $(extensions) $(new-sources) :
+ $(project) $(name) : $(property-set) ] ;
     }
 }
 
+
 generators.register
   [ new python-test-generator python.capture-output : : RUN_PYD_OUTPUT ] ;
 
 generators.register-standard testing.expect-success
   : RUN_PYD_OUTPUT : RUN_PYD ;
 
-# There are two different ways of spelling OS names. One is used for
-# [ os.name ] and the other is used for the <host-os> and <target-os>
-# properties. Until that is remedied, this sets up a crude mapping
-# from the latter to the former, that will work *for the purposes of
-# cygwin/NT cross-builds only*. Couldn't think of a better name than
-# "translate"
+
+# There are two different ways of spelling OS names. One is used for [ os.name ]
+# and the other is used for the <host-os> and <target-os> properties. Until that
+# is remedied, this sets up a crude mapping from the latter to the former, that
+# will work *for the purposes of cygwin/NT cross-builds only*. Could not think
+# of a better name than "translate".
+#
 .translate-os-windows = NT ;
 .translate-os-cygwin = CYGWIN ;
 local rule translate-os ( src-os )
@@ -1153,63 +1172,62 @@
     return $(x[1]) ;
 }
 
+
 # Extract the path to a single ".pyd" source. This is used to build the
 # PYTHONPATH for running bpl tests.
+#
 local rule pyd-pythonpath ( source )
 {
     return [ on $(source) return $(LOCATE) $(SEARCH) ] ;
 }
 
-# The flag settings on testing.capture-output do not
-# apply to python.capture output at the moment.
-# Redo this explicitly.
+
+# The flag settings on testing.capture-output do not apply to python.capture
+# output at the moment. Redo this explicitly.
 toolset.flags python.capture-output ARGS <testing.arg> ;
+
+
 rule capture-output ( target : sources * : properties * )
 {
- # Setup up proper DLL search path.
- # Here, $(sources[1]) is python module and $(sources[2]) is
- # DLL. Only $(sources[1]) is passed to testing.capture-output,
- # so RUN_PATH variable on $(sources[2]) is not consulted. Move it
- # over explicitly.
+ # Setup up a proper DLL search path. Here, $(sources[1]) is a python module
+ # and $(sources[2]) is a DLL. Only $(sources[1]) is passed to
+ # testing.capture-output, so RUN_PATH variable on $(sources[2]) is not
+ # consulted. Move it over explicitly.
     RUN_PATH on $(sources[1]) = [ on $(sources[2-]) return $(RUN_PATH) ] ;
 
     PYTHONPATH = [ sequence.transform pyd-pythonpath : $(sources[2-]) ] ;
     PYTHONPATH += [ feature.get-values pythonpath : $(properties) ] ;
-
- # After test is run, we remove the Python module, but not the Python
- # script.
- testing.capture-output $(target) : $(sources[1]) : $(properties)
- : $(sources[2-]) ;
-
- # PYTHONPATH is different; it will be interpreted by whichever
- # Python is invoked and so must follow path rules for the target
- # os. The only OSes where we can run pythons for other OSes
- # currently are NT and CYGWIN, so we only need to handle those
- # cases.
+
+ # After test is run, we remove the Python module, but not the Python script.
+ testing.capture-output $(target) : $(sources[1]) : $(properties) :
+ $(sources[2-]) ;
+
+ # PYTHONPATH is different; it will be interpreted by whichever Python is
+ # invoked and so must follow path rules for the target os. The only OSes
+ # where we can run python for other OSes currently are NT and CYGWIN so we
+ # only need to handle those cases.
     local target-os = [ feature.get-values target-os : $(properties) ] ;
- # oddly, host-os isn't in properties, so grab the default value.
+ # Oddly, host-os is not in properties, so grab the default value.
     local host-os = [ feature.defaults host-os ] ;
     host-os = $(host-os:G=) ;
     if $(target-os) != $(host-os)
     {
- PYTHONPATH =
- [ sequence.transform $(host-os)-to-$(target-os)-path : $(PYTHONPATH) ] ;
+ PYTHONPATH = [ sequence.transform $(host-os)-to-$(target-os)-path :
+ $(PYTHONPATH) ] ;
     }
- local path-separator =
- [ os.path-separator [ translate-os $(target-os) ] ] ;
- local set-PYTHONPATH =
- [ common.variable-setting-command PYTHONPATH : $(PYTHONPATH:J=$(path-separator)) ] ;
+ local path-separator = [ os.path-separator [ translate-os $(target-os) ] ] ;
+ local set-PYTHONPATH = [ common.variable-setting-command PYTHONPATH :
+ $(PYTHONPATH:J=$(path-separator)) ] ;
     LAUNCHER on $(target) = $(set-PYTHONPATH) [ on $(target) return $(PYTHON) ] ;
 }
 
+
 rule bpl-test ( name : sources * : requirements * )
 {
     sources ?= $(name).py $(name).cpp ;
- return [ testing.make-test
- run-pyd : $(sources) /boost/python//boost_python
- : $(requirements) : $(name) ] ;
+ return [ testing.make-test run-pyd : $(sources) /boost/python//boost_python
+ : $(requirements) : $(name) ] ;
 }
 
-IMPORT $(__name__) : bpl-test : : bpl-test ;
-
 
+IMPORT $(__name__) : bpl-test : : bpl-test ;

Modified: branches/CMake/release/tools/build/v2/tools/qt3.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/qt3.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/qt3.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -2,10 +2,10 @@
 # Distributed under the Boost Software License, Version 1.0.
 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
-# Support for the Qt GUI library version 3
-# (http://www.trolltech.com/products/qt3/index.html).
-# For new developments, it's recommented to use Qt4 via the qt4
-# Boost.Build module.
+# Support for the Qt GUI library version 3
+# (http://www.trolltech.com/products/qt3/index.html).
+# For new developments, it is recommended to use Qt4 via the qt4 Boost.Build
+# module.
 
 import modules ;
 import feature ;
@@ -16,15 +16,14 @@
 import project ;
 import toolset : flags ;
 
-# Convert this module into a project, so that we can declare
-# targets here.
-
+# Convert this module into a project, so that we can declare targets here.
 project.initialize $(__name__) ;
 project qt3 ;
 
-# Initialized the QT support module. The 'prefix' parameter
-# tells where QT is installed. When not given, environmental
-# variable QTDIR should be set.
+
+# Initialized the QT support module. The 'prefix' parameter tells where QT is
+# installed. When not given, environmental variable QTDIR should be set.
+#
 rule init ( prefix ? )
 {
     if ! $(prefix)
@@ -51,23 +50,21 @@
         .prefix = $(prefix) ;
         
         generators.register-standard qt3.moc : H : CPP(moc_%) : <allow>qt3 ;
- # Note: the OBJ target type here is fake, take a look
- # at qt4.jam/uic-h-generator for explanations that
- # apply in this case as well.
+ # Note: the OBJ target type here is fake, take a look at
+ # qt4.jam/uic-h-generator for explanations that apply in this case as
+ # well.
         generators.register [ new moc-h-generator-qt3
             qt3.moc.cpp : MOCCABLE_CPP : OBJ : <allow>qt3 ] ;
         
- # The UI type is defined in types/qt.jam,
- # and UIC_H is only used in qt.jam, but not in qt4.jam, so
- # define it here.
+ # The UI type is defined in types/qt.jam, and UIC_H is only used in
+ # qt.jam, but not in qt4.jam, so define it here.
         type.register UIC_H : : H ;
         
         generators.register-standard qt3.uic-h : UI : UIC_H : <allow>qt3 ;
         
- # The following generator is used to convert UI files to CPP
- # It creates UIC_H from UI, and constructs CPP from UI/UIC_H
- # In addition, it also returns UIC_H target, so that it can bee
- # mocced.
+ # The following generator is used to convert UI files to CPP. It creates
+ # UIC_H from UI, and constructs CPP from UI/UIC_H. In addition, it also
+ # returns UIC_H target, so that it can be mocced.
         class qt::uic-cpp-generator : generator
         {
             rule __init__ ( )
@@ -146,11 +143,11 @@
             
             local r = [ virtual-target.register $(target) ] ;
                                   
- # Since this generator will return H target, the linking generator
- # won't use it at all, and won't set any dependency on it.
- # However, we need to target to be seen by bjam, so that dependency
- # from sources to this generated header is detected -- if jam does
- # not know about this target, it won't do anything.
+ # Since this generator will return a H target, the linking generator
+ # won't use it at all, and won't set any dependency on it. However,
+ # we need the target to be seen by bjam, so that the dependency from
+ # sources to this generated header is detected -- if Jam does not
+ # know about this target, it won't do anything.
             DEPENDS all : [ $(r).actualize ] ;
             
             return $(r) ;
@@ -159,25 +156,26 @@
 }
 
 
-# Query the installation directory
-# This is needed in at least two scenarios
-# First, when re-using sources from the Qt-Tree.
-# Second, to "install" custom Qt plugins to the Qt-Tree.
+# Query the installation directory. This is needed in at least two scenarios.
+# First, when re-using sources from the Qt-Tree. Second, to "install" custom Qt
+# plugins to the Qt-Tree.
+#
 rule directory
 {
     return $(.prefix) ;
 }
 
-# -f forces moc to include the processed source file.
-# Without it, it would think that .qpp is not a header and would not
-# include it from the generated file.
+# -f forces moc to include the processed source file. Without it, it would think
+# that .qpp is not a header and would not include it from the generated file.
+#
 actions moc
 {
     $(.prefix)/bin/moc -f $(>) -o $(<)
 }
 
-# When moccing .cpp files, we don't need -f, otherwise generated
-# code will include .cpp and we'll get duplicated symbols.
+# When moccing .cpp files, we don't need -f, otherwise generated code will
+# include .cpp and we'll get duplicated symbols.
+#
 actions moc.cpp
 {
     $(.prefix)/bin/moc $(>) -o $(<)
@@ -186,27 +184,26 @@
 
 space = " " ;
 
-# Sometimes it's required to make 'plugins' available during
-# uic invocation. To help with this we add paths to all dependency
-# libraries to uic commane line. The intention is that it's possible
-# to write
+# Sometimes it's required to make 'plugins' available during uic invocation. To
+# help with this we add paths to all dependency libraries to uic commane line.
+# The intention is that it's possible to write
 #
 # exe a : ... a.ui ... : <uses>some_plugin ;
 #
-# and have everything work. We'd add quite a bunch of unrelated paths
-# but it won't hurt.
+# and have everything work. We'd add quite a bunch of unrelated paths but it
+# won't hurt.
+#
 flags qt3.uic-h LIBRARY_PATH <xdll-path> ;
 actions uic-h
 {
     $(.prefix)/bin/uic $(>) -o $(<) -L$(space)$(LIBRARY_PATH)
 }
 
+
 flags qt3.uic-cpp LIBRARY_PATH <xdll-path> ;
-# The second target is uic-generated header name. It's placed in
-# build dir, but we want to include it using only basename.
+# The second target is uic-generated header name. It's placed in build dir, but
+# we want to include it using only basename.
 actions uic-cpp
 {
     $(.prefix)/bin/uic $(>[1]) -i $(>[2]:D=) -o $(<) -L$(space)$(LIBRARY_PATH)
 }
-
-

Modified: branches/CMake/release/tools/build/v2/tools/qt4.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/qt4.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/qt4.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,4 +1,4 @@
-# Copyright 2002-2006 Vladimir Prus
+# Copyright 2002-2006 Vladimir Prus
 # Copyright 2005 Alo Sarv
 # Copyright 2005-2006 Juergen Hunold
 #
@@ -20,12 +20,12 @@
 #
 # Example:
 #
-# exe myapp : myapp.cpp myapp.h myapp.ui myapp.qrc
+# exe myapp : myapp.cpp myapp.h myapp.ui myapp.qrc
 # /qt4//QtGui /qt4//QtNetwork ;
 #
 # It's also possible to run moc on cpp sources:
 #
-# import cast ;
+# import cast ;
 #
 # exe myapp : myapp.cpp [ cast _ moccable-cpp : myapp.cpp ] /qt4//QtGui ;
 #
@@ -56,11 +56,11 @@
 #
 # The Qt3Support library can be activated by adding
 # "<qt3support>on" to requirements
-#
+#
 # Use "<qt3support>on:<define>QT3_SUPPORT_WARNINGS"
 # to get warnings about deprecated Qt3 support funtions and classes.
-# Files ported by the "qt3to4" conversion tool contain _tons_ of
-# warnings, so this define is not set as default.
+# Files ported by the "qt3to4" conversion tool contain _tons_ of
+# warnings, so this define is not set as default.
 #
 # Todo: Detect Qt3Support from Qt's configure data.
 # Or add more auto-configuration (like python).
@@ -73,18 +73,61 @@
 .project = [ project.current ] ;
 
 
-# Initialized the QT support module. The 'prefix' parameter
-# tells where QT is installed.
-rule init ( prefix )
+# Initialized the QT support module. The 'prefix' parameter tells where QT is
+# installed.
+#
+rule init ( prefix : full_bin ? : full_inc ? : full_lib ? )
 {
     project.push-current $(.project) ;
-
+
+ # pre-build paths to detect reinitializations changes
+ local inc_prefix lib_prefix bin_prefix ;
+ if $(full_inc)
+ {
+ inc_prefix = $(full_inc) ;
+ }
+ else
+ {
+ inc_prefix = $(prefix)/include ;
+ }
+ if $(full_lib)
+ {
+ lib_prefix = $(full_lib) ;
+ }
+ else
+ {
+ lib_prefix = $(prefix)/lib ;
+ }
+ if $(full_bin)
+ {
+ bin_prefix = $(full_bin) ;
+ }
+ else
+ {
+ bin_prefix = $(prefix)/bin ;
+ }
+
     if $(.initialized)
     {
         if $(prefix) != $(.prefix)
         {
             errors.error
- "Attempt the reinitialize QT with different installation prefix" ;
+ "Attempt the reinitialize QT with different installation prefix" ;
+ }
+ if $(inc_prefix) != $(.incprefix)
+ {
+ errors.error
+ "Attempt the reinitialize QT with different include path" ;
+ }
+ if $(lib_prefix) != $(.libprefix)
+ {
+ errors.error
+ "Attempt the reinitialize QT with different library path" ;
+ }
+ if $(bin_prefix) != $(.binprefix)
+ {
+ errors.error
+ "Attempt the reinitialize QT with different bin path" ;
         }
     }
     else
@@ -92,360 +135,163 @@
         .initialized = true ;
         .prefix = $(prefix) ;
 
- #~ Setup prefixes for include, binaries and libs.
- #~ TODO: Implement overrides in "init" parameter list.
+ # Setup prefixes for include, binaries and libs.
         .incprefix = $(.prefix)/include ;
         .libprefix = $(.prefix)/lib ;
         .binprefix = $(.prefix)/bin ;
 
         # Generates cpp files from header files using "moc" tool
         generators.register-standard qt4.moc : H : CPP(moc_%) : <allow>qt4 ;
-
- # The OBJ result type is a fake, 'H' will be really produces.
- # See comments on the generator calss, defined below
- # the 'init' function.
- generators.register [ new uic-h-generator qt4.uic-h : UI : OBJ
- : <allow>qt4 ] ;
-
+
+ # The OBJ result type is a fake, 'H' will be really produced. See
+ # comments on the generator class, defined below the 'init' function.
+ generators.register [ new uic-h-generator qt4.uic-h : UI : OBJ :
+ <allow>qt4 ] ;
+
         # The OBJ result type is a fake here too.
- generators.register [ new moc-h-generator
+ generators.register [ new moc-h-generator
             qt4.moc.inc : MOCCABLE_CPP : OBJ : <allow>qt4 ] ;
 
- generators.register [ new moc-inc-generator
+ generators.register [ new moc-inc-generator
             qt4.moc.inc : MOCCABLE_H : OBJ : <allow>qt4 ] ;
 
- # Generates .cpp file from qrc file
+ # Generates .cpp files from .qrc files.
         generators.register-standard qt4.rcc : QRC : CPP(qrc_%) ;
-
- # dependency scanner for wrapped files
- type.set-scanner QRC : qrc-scanner ;
 
+ # dependency scanner for wrapped files.
+ type.set-scanner QRC : qrc-scanner ;
+
         # Test for a buildable Qt.
         if [ glob $(.prefix)/Jamroot ]
         {
- # Import all Qt Modules
- local all-libraries = QtCore QtGui QtNetwork QtXml QtSql QtSvg QtOpenGL Qt3Support QtTest QtAssistantClient QtDesigner QtUiTools QtDBus QtScript ;
- for local l in $(all-libraries)
- {
- alias $(l)
- : $(.prefix)//$(l)
- :
- :
- : <allow>qt4
- ;
- explicit $(l) ;
- }
+ .bjam-qt = true
+
+ # this will declare QtCore (and qtmain on <target-os>windows)
+ add-shared-library QtCore ;
         }
         else
- # Use pre-built Qt
+ # Setup common pre-built Qt.
+ # Special setup for QtCore on which everything depends
         {
- local usage-requirements =
- <include>$(.incprefix)
- <library-path>$(.libprefix)
- <dll-path>$(.libprefix)
- <threading>multi
- <allow>qt4
- ;
-
+ local usage-requirements =
+ <include>$(.incprefix)
+ <library-path>$(.libprefix)
+ <dll-path>$(.libprefix)
+ <threading>multi
+ <allow>qt4 ;
+
             local suffix ;
             if [ os.name ] = NT
             {
- # On NT, the libs have "4" suffix, and "d" suffix in debug builds
- # Also, on NT we must link against qtmain library (for WinMain)
- suffix_version = "4" ;
- suffix_debug = "d" ;
- lib qtmain
+ # On NT, the libs have "4" suffix, and "d" suffix in debug
+ # builds. Also, on NT we must link against the qtmain library
+ # (for WinMain).
+ .suffix_version = "4" ;
+ .suffix_debug = "d" ;
+ lib qtmain
                     : # sources
                     : # requirements
- <name>qtmain$(suffix_debug)
+ <name>qtmain$(.suffix_debug)
                       <variant>debug
                     ;
 
- lib qtmain
- : # sources
+ lib qtmain
+ : # sources
                     : # requirements
- <name>qtmain
+ <name>qtmain
                     ;
                 main = qtmain ;
- }
+ }
             else if [ os.name ] = MACOSX
             {
                 # On MacOS X, both debug and release libraries are available.
- suffix_version = "" ;
- suffix_debug = "_debug" ;
+ .suffix_version = "" ;
+ .suffix_debug = "_debug" ;
             }
- else
+ else
             {
- # Since Qt-4.2, debug versions on unix have to be built separately
- # and therefore have no suffix.
- suffix_version = "" ;
- suffix_debug = "" ;
+ # Since Qt-4.2, debug versions on unix have to be built
+ # separately and therefore have no suffix.
+ .suffix_version = "" ;
+ .suffix_debug = "" ;
             }
-
+
             lib QtCore : $(main)
                 : # requirements
- <name>QtCore$(suffix_version)
+ <name>QtCore$(.suffix_version)
                 : # default-build
                 : # usage-requirements
                   <define>QT_CORE_LIB
                   <define>QT_NO_DEBUG
- <include>$(.incprefix)/QtCore
+ <include>$(.incprefix)/QtCore
                   $(usage-requirements)
                 ;
             lib QtCore : $(main)
                 : # requirements
- <name>QtCore$(suffix_debug)$(suffix_version)
+ <name>QtCore$(.suffix_debug)$(.suffix_version)
                   <variant>debug
                 : # default-build
                 : # usage-requirements
                   <define>QT_CORE_LIB
- <include>$(.incprefix)/QtCore
- $(usage-requirements)
- ;
-
- lib QtGui : QtCore
- : # requirements
- <name>QtGui$(suffix_version)
- : # default-build
- : # usage-requirements
- <define>QT_GUI_LIB
- <include>$(.incprefix)/QtGui
- ;
-
- lib QtGui : QtCore
- : # requirements
- <name>QtGui$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <define>QT_GUI_LIB
- <include>$(.incprefix)/QtGui
- ;
-
- lib QtNetwork : QtCore
- : # requirements
- <name>QtNetwork$(suffix_version)
- : # default-build
- : # usage-requirements
- <define>QT_NETWORK_LIB
- <include>$(.incprefix)/QtNetwork
- ;
- lib QtNetwork : QtCore
- : # requirements
- <name>QtNetwork$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <define>QT_NETWORK_LIB
- <include>$(.incprefix)/QtNetwork
- ;
-
- lib QtSql : QtCore
- : # requirements
- <name>QtSql$(suffix_version)
- : # default-build
- : # usage-requirements
- <define>QT_SQL_LIB
- <include>$(.incprefix)/QtSql
- ;
- lib QtSql : QtCore
- : # requirements
- <name>QtSql$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <define>QT_SQL_LIB
- <include>$(.incprefix)/QtSql
- ;
-
- lib QtXml : QtCore
- : # requirements
- <name>QtXml$(suffix_version)
- : # default-build
- : # usage-requirements
- <define>QT_XML_LIB
- <include>$(.incprefix)/QtXml
- ;
- lib QtXml : QtCore
- : # requirements
- <name>QtXml$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <define>QT_XML_LIB
- <include>$(.incprefix)/QtXml
- ;
-
- lib Qt3Support : QtGui QtNetwork QtXml QtSql
- : # requirements
- <name>Qt3Support$(suffix_version)
- <qt3support>on
- : # default-build
- : # usage-requirements
- <define>QT_QT3SUPPORT_LIB
- <define>QT3_SUPPORT
- <include>$(.incprefix)/Qt3Support
- ;
-
- lib Qt3Support : QtGui QtNetwork QtXml QtSql
- : # requirements
- <name>Qt3Support$(suffix_debug)$(suffix_version)
- <qt3support>on
- <variant>debug
- : # default-build
- : # usage-requirements
- <define>QT_QT3SUPPORT_LIB
- <define>QT3_SUPPORT
- <include>$(.incprefix)/Qt3Support
+ <include>$(.incprefix)/QtCore
+ $(usage-requirements)
                 ;
+ }
 
- # Dummy target to enable "<qt3support>off" and "<library>/qt//Qt3Support" at the same time.
- # This enables quick switching from one to the other for test/porting purposes.
- alias Qt3Support : : <qt3support>off ;
-
- # OpenGl Support
- lib QtOpenGL : QtGui
- : # requirements
- <name>QtOpenGL$(suffix_version)
- : # default-build
- : # usage-requirements
- <define>QT_OPENGL_LIB
- <include>$(.incprefix)/QtOpenGL
- ;
- lib QtOpenGL : QtGui
- : # requirements
- <name>QtOpenGL$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <define>QT_OPENGL_LIB
- <include>$(.incprefix)/QtOpenGL
- ;
-
- # SVG-Support (Qt 4.1)
- lib QtSvg : QtXml QtOpenGL
- : # requirements
- <name>QtSvg$(suffix_version)
- : # default-build
- : # usage-requirements
- <define>QT_SVG_LIB
- <include>$(.incprefix)/QtSvg
- ;
- lib QtSvg : QtXml QtOpenGL
- : # requirements
- <name>QtSvg$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <define>QT_SVG_LIB
- <include>$(.incprefix)/QtSvg
- ;
-
- # Test-Support (Qt 4.1)
- lib QtTest : QtCore
- : # requirements
- <name>QtTest$(suffix_version)
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtTest
- ;
- lib QtTest : QtCore
- : # requirements
- <name>QtTest$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtTest
- ;
-
- # AssistantClient Support
- lib QtAssistantClient : QtGui
- : # requirements
- <name>QtAssistantClient$(suffix_version)
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtAssistant
- ;
- lib QtAssistantClient : QtGui
- : # requirements
- <name>QtAssistantClient$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtAssistant
- ;
-
- # Qt designer library
- lib QtDesigner : QtGui QtXml
- : # requirements
- <name>QtDesigner$(suffix_version)
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtDesigner
- ;
+ # Initialising the remaining libraries is canonical
+ add-shared-library QtGui : QtCore : QT_GUI_LIB ;
+ add-shared-library QtNetwork : QtCore : QT_NETWORK_LIB ;
+ add-shared-library QtSql : QtCore : QT_SQL_LIB ;
+ add-shared-library QtXml : QtCore : QT_XML_LIB ;
 
- lib QtDesigner : QtGui QtXml
- : # requirements
- <name>QtDesigner$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtDesigner
- ;
+ add-shared-library Qt3Support : QtGui QtNetwork QtXml QtSql
+ : QT_QT3SUPPORT_LIB QT3_SUPPORT
+ : <qt3support>on ;
 
- # Support for dynamic Widgets (Qt 4.1)
- lib QtUiTools : QtGui QtXml
- : # requirements
- <name>QtUiTools
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtUiTools
- ;
- lib QtUiTools : QtGui QtXml
- : # requirements
- <name>QtUiTools$(suffix_debug)
- <variant>debug
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtUiTools
- ;
+ # Dummy target to enable "<qt3support>off" and
+ # "<library>/qt//Qt3Support" at the same time. This enables quick
+ # switching from one to the other for test/porting purposes.
+ alias Qt3Support : : : : <qt3support>off ;
 
- # DBus-Support (Qt 4.2)
- lib QtDBus : QtXml
- : # requirements
- <name>QtDBus$(suffix_version)
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtDBus
- ;
- lib QtDBus : QtXml
- : # requirements
- <name>QtDBus$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtDBus
- ;
+ # OpenGl Support
+ add-shared-library QtOpenGL : QtGui : QT_OPENGL_LIB ;
 
- # Script-Engine (Qt 4.3)
- lib QtScript : QtGui QtXml
- : # requirements
- <name>QtScript$(suffix_version)
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtScript
- ;
- lib QtScript : QtGui QtXml
- : # requirements
- <name>QtScript$(suffix_debug)$(suffix_version)
- <variant>debug
- : # default-build
- : # usage-requirements
- <include>$(.incprefix)/QtScript
- ;
- }
+ # SVG-Support (Qt 4.1)
+ add-shared-library QtSvg : QtXml QtOpenGL : QT_SVG_LIB ;
+
+ # Test-Support (Qt 4.1)
+ add-shared-library QtTest : QtCore ;
+
+ # Qt designer library
+ add-shared-library QtDesigner : QtGui QtXml ;
+
+ # Support for dynamic Widgets (Qt 4.1)
+ add-static-library QtUiTools : QtGui QtXml ;
+
+ # DBus-Support (Qt 4.2)
+ add-shared-library QtDBus : QtXml ;
+
+ # Script-Engine (Qt 4.3)
+ add-shared-library QtScript : QtGui QtXml ;
+
+ # WebKit (Qt 4.4)
+ add-shared-library QtWebKit : QtGui : QT_WEBKIT_LIB ;
+
+ # Phonon Multimedia (Qt 4.4)
+ add-shared-library phonon : QtGui QtXml : QT_PHONON_LIB ;
+
+ # XmlPatterns-Engine (Qt 4.4)
+ add-shared-library QtXmlPatterns : QtNetwork : QT_XMLPATTERNS_LIB ;
+
+ # Help-Engine (Qt 4.4)
+ add-shared-library QtHelp : QtGui QtSql QtXml ;
+
+ # AssistantClient Support
+ # Compat library
+ # Pre-4.4 help system, use QtHelp for new programs
+ add-shared-library QtAssistantClient : QtGui : : : QtAssistant ;
     }
-
+
     project.pop-current ;
 }
 
@@ -456,17 +302,15 @@
 
 
 
-# This custom generator is needed because it QT4, UI files are translated
-# only in H files, and no C++ files are created. Further, the H files
-# need not be passed via MOC. The header is used only via inclusion.
-# If we define standard UI -> H generator, Boost.Build will run
-# MOC on H, and the compile resulting cpp. It will give a warning, since
-# output from moc will be empty.
-#
-# This generator is declared with UI -> OBJ signature, so it's
-# invoked when linking generator tries to convert sources to OBJ,
-# but it produces target of type H. This is non-standard, but allowed.
-# That header won't be mocced.
+# This custom generator is needed because in QT4, UI files are translated only
+# into H files, and no C++ files are created. Further, the H files need not be
+# passed via MOC. The header is used only via inclusion. If we define a standard
+# UI -> H generator, Boost.Build will run MOC on H, and then compile the
+# resulting cpp. It will give a warning, since output from moc will be empty.
+#
+# This generator is declared with a UI -> OBJ signature, so it gets invoked when
+# linking generator tries to convert sources to OBJ, but it produces target of
+# type H. This is non-standard, but allowed. That header won't be mocced.
 #
 class uic-h-generator : generator
 {
@@ -476,31 +320,29 @@
     }
 
     rule run ( project name ? : property-set : sources * )
- {
- if ! $(name)
+ {
+ if ! $(name)
         {
             name = [ $(sources[0]).name ] ;
             name = $(name:B) ;
         }
-
- local a = [ new action $(sources[1]) : qt4.uic-h :
- $(property-set) ] ;
-
+
+ local a = [ new action $(sources[1]) : qt4.uic-h : $(property-set) ] ;
+
         # The 'ui_' prefix is to match qmake's default behavior.
- local target = [
- new file-target ui_$(name) : H : $(project) : $(a) ] ;
-
+ local target = [ new file-target ui_$(name) : H : $(project) : $(a) ] ;
+
         local r = [ virtual-target.register $(target) ] ;
-
+
         # Since this generator will return a H target, the linking generator
         # won't use it at all, and won't set any dependency on it. However, we
         # need the target to be seen by bjam, so that dependency from sources to
         # this generated header is detected -- if jam does not know about this
         # target, it won't do anything.
         DEPENDS all : [ $(r).actualize ] ;
-
+
         return $(r) ;
- }
+ }
 }
 
 
@@ -512,29 +354,29 @@
     }
 
     rule run ( project name ? : property-set : sources * )
- {
+ {
         if ! $(sources[2]) && [ $(sources[1]).type ] = MOCCABLE_CPP
- {
+ {
             name = [ $(sources[0]).name ] ;
             name = $(name:B) ;
-
+
             local a = [ new action $(sources[1]) : qt4.moc.inc :
- $(property-set) ] ;
-
- local target = [
- new file-target $(name) : MOC : $(project) : $(a) ] ;
-
+ $(property-set) ] ;
+
+ local target = [ new file-target $(name) : MOC : $(project) : $(a)
+ ] ;
+
             local r = [ virtual-target.register $(target) ] ;
-
+
             # Since this generator will return a H target, the linking generator
             # won't use it at all, and won't set any dependency on it. However,
             # we need the target to be seen by bjam, so that dependency from
             # sources to this generated header is detected -- if jam does not
             # know about this target, it won't do anything.
             DEPENDS all : [ $(r).actualize ] ;
-
+
             return $(r) ;
- }
+ }
     }
 }
 
@@ -547,82 +389,156 @@
     }
 
     rule run ( project name ? : property-set : sources * )
- {
+ {
         if ! $(sources[2]) && [ $(sources[1]).type ] = MOCCABLE_H
- {
+ {
             name = [ $(sources[0]).name ] ;
             name = $(name:B) ;
-
+
             local a = [ new action $(sources[1]) : qt4.moc.inc :
- $(property-set) ] ;
-
- local target = [
- new file-target moc_$(name) : CPP : $(project) : $(a) ] ;
-
+ $(property-set) ] ;
+
+ local target = [ new file-target moc_$(name) : CPP : $(project) :
+ $(a) ] ;
+
             # Since this generator will return a H target, the linking generator
             # won't use it at all, and won't set any dependency on it. However,
             # we need the target to be seen by bjam, so that dependency from
             # sources to this generated header is detected -- if jam does not
             # know about this target, it won't do anything.
             DEPENDS all : [ $(target).actualize ] ;
-
+
             return [ virtual-target.register $(target) ] ;
- }
- }
+ }
+ }
 }
 
 
 # Query the installation directory. This is needed in at least two scenarios.
 # First, when re-using sources from the Qt-Tree. Second, to "install" custom Qt
 # plugins to the Qt-Tree.
+#
 rule directory
 {
     return $(.prefix) ;
 }
 
+# Add a shared Qt library.
+rule add-shared-library ( lib-name : depends-on * : usage-defines * : requirements * : include ? )
+{
+ add-library $(lib-name) : $(.suffix_version) : $(depends-on) : $(usage-defines) : $(requirements) : $(include) ;
+}
+
+# Add a static Qt library.
+rule add-static-library ( lib-name : depends-on * : usage-defines * : requirements * : include ? )
+{
+ add-library $(lib-name) : : $(depends-on) : $(usage-defines) : $(requirements) : $(include) ;
+}
+
+# Add a Qt library.
+# Static libs are unversioned, whereas shared libs have the major number as suffix.
+# Creates both release and debug versions on platforms where both are enabled by Qt configure.
+# Flags:
+# - lib-name Qt library Name
+# - version Qt major number used as shared library suffix (QtCore4.so)
+# - depends-on other Qt libraries
+# - usage-defines those are set by qmake, so set them when using this library
+# - requirements addional requirements
+# - include non-canonical include path. The canonical path is $(.incprefix)/$(lib-name).
+rule add-library ( lib-name : version ? : depends-on * : usage-defines * : requirements * : include ? )
+{
+ if $(.bjam-qt)
+ {
+ # Import Qt module
+ # Eveything will be setup there
+ alias $(lib-name)
+ : $(.prefix)//$(lib-name)
+ :
+ :
+ : <allow>qt4 ;
+ }
+ else
+ {
+ local real_include ;
+ real_include ?= $(include) ;
+ real_include ?= $(lib-name) ;
+
+ lib $(lib-name)
+ : # sources
+ $(depends-on)
+ : # requirements
+ <name>$(lib-name)$(version)
+ $(requirements)
+ : # default-build
+ : # usage-requirements
+ <define>$(usage-defines)
+ <include>$(.incprefix)/$(real_include)
+ ;
+
+ lib $(lib-name)
+ : # sources
+ $(depends-on)
+ : # requirements
+ <name>$(lib-name)$(.suffix_debug)$(version)
+ $(requirements)
+ <variant>debug
+ : # default-build
+ : # usage-requirements
+ <define>$(usage-defines)
+ <include>$(.incprefix)/$(real_include)
+ ;
+ }
+
+ # Make library explicit so that a simple <use>qt4 will not bring in everything.
+ # And some components like QtDBus/Phonon may not be available on all platforms.
+ explicit $(lib-name) ;
+}
+
 
-# Get <include> and <defines> from current toolset
+# Get <include> and <defines> from current toolset.
 flags qt4.moc INCLUDES <include> ;
 flags qt4.moc DEFINES <define> ;
 
 
-# Processes headers to create Qt MetaObject information
-# Qt4-moc has its c++-parser, so pass INCLUDES and DEFINES.
+# Processes headers to create Qt MetaObject information. Qt4-moc has its
+# c++-parser, so pass INCLUDES and DEFINES.
+#
 actions moc
 {
     $(.binprefix)/moc -I$(INCLUDES) -D$(DEFINES) -f $(>) -o $(<)
 }
 
 
-# When moccing files for include only, we don't need -f,
-# otherwise the generated code will include the .cpp
-# and we'll get duplicated symbols.
+# When moccing files for include only, we don't need -f, otherwise the generated
+# code will include the .cpp and we'll get duplicated symbols.
+#
 actions moc.inc
 {
     $(.binprefix)/moc -I$(INCLUDES) -D$(DEFINES) $(>) -o $(<)
 }
 
 
-# Generates source files from resource files
+# Generates source files from resource files.
+#
 actions rcc
 {
     $(.binprefix)/rcc $(>) -name $(>:B) -o $(<)
 }
 
 
-# Generates user-interface source from .ui files
+# Generates user-interface source from .ui files.
+#
 actions uic-h
 {
     $(.binprefix)/uic $(>) -o $(<)
 }
 
 
-# Scanner for .qrc files.
-# Look for the CDATA section of the <file> tag.
-# Ignore the "alias" attribute.
-# See http://doc.trolltech.com/qt/resources.html
-# for detailed documentation of the Qt Resource System.
-class qrc-scanner : common-scanner
+# Scanner for .qrc files. Look for the CDATA section of the <file> tag. Ignore
+# the "alias" attribute. See http://doc.trolltech.com/qt/resources.html for
+# detailed documentation of the Qt Resource System.
+#
+class qrc-scanner : common-scanner
 {
     rule pattern ( )
     {
@@ -630,5 +546,6 @@
     }
 }
 
+
 # Wrapped files are "included".
 scanner.register qrc-scanner : include ;

Modified: branches/CMake/release/tools/build/v2/tools/quickbook.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/quickbook.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/quickbook.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -113,6 +113,7 @@
 import project ;
 import targets ;
 
+
 # The one and only QUICKBOOK type!
 type.register QUICKBOOK : qbk ;
 
@@ -121,15 +122,17 @@
 feature.feature <quickbook-binary> : : free ;
 feature.feature <quickbook-binary-dependencies> : : free dependency ;
 
+
 # quickbook-binary-generator handles generation of the QuickBook executable, by
 # marking it as a dependency for QuickBook docs.
 #
 # If the user supplied the QuickBook command that will be used.
 #
-# Otherwise we search some sensible places for the QuickBook sources and
-# compile from scratch using the default toolset.
+# Otherwise we search some sensible places for the QuickBook sources and compile
+# from scratch using the default toolset.
 #
 # As a last resort we rely on the shell to find 'quickbook'.
+#
 class quickbook-binary-generator : generator
 {
     import common modules path targets build-system ;
@@ -181,8 +184,8 @@
                 local quickbook-main-target = [ targets.resolve-reference $(quickbook-dir) : $(project) ] ;
 
                 # The first element are actual targets, the second are
- # properties found in target-id. We don't care about these since
- # we've passed the id ourselves.
+ # properties found in target-id. We do not care about these
+ # since we have passed the id ourselves.
                 quickbook-main-target =
                     [ $(quickbook-main-target[1]).main-target quickbook ] ;
 
@@ -192,10 +195,9 @@
                 # Ignore usage-requirements returned as first element.
                 quickbook-binary-dependencies = $(quickbook-binary-dependencies[2-]) ;
 
- # Some toolsets generate extra targets (e.g. RSP).
- # We must mark all targets as dependencies for the project, but
- # we'll only use the EXE target for quickbook-to-boostbook
- # translation.
+ # Some toolsets generate extra targets (e.g. RSP). We must mark
+ # all targets as dependencies for the project, but we will only
+ # use the EXE target for quickbook-to-boostbook translation.
                 for local target in $(quickbook-binary-dependencies)
                 {
                     if [ $(target).type ] = EXE
@@ -225,8 +227,8 @@
                 ECHO " or site-config.jam with the call" ;
                 ECHO " using quickbook : /path/to/quickbook ;" ;
 
- # As a last resort, search for 'quickbook' command in path.
- # Note that even if the 'quickbook' command is not found,
+ # As a last resort, search for 'quickbook' command in path. Note
+ # that even if the 'quickbook' command is not found,
                 # get-invocation-command will still return 'quickbook' and might
                 # generate an error while generating the virtual-target.
 
@@ -234,8 +236,8 @@
             }
         }
 
- # Add $(quickbook-binary-dependencies) as a dependency of the current project
- # and set it as the <quickbook-binary> feature for the
+ # Add $(quickbook-binary-dependencies) as a dependency of the current
+ # project and set it as the <quickbook-binary> feature for the
         # quickbook-to-boostbook rule, below.
         property-set = [ $(property-set).add-raw
             <dependency>$(quickbook-binary-dependencies)
@@ -247,7 +249,9 @@
     }
 }
 
-# Define a scanner for tracking QBK include dependencies
+
+# Define a scanner for tracking QBK include dependencies.
+#
 class qbk-scanner : common-scanner
 {
     rule pattern ( )
@@ -258,10 +262,12 @@
     }
 }
 
+
 scanner.register qbk-scanner : include ;
 
 type.set-scanner QUICKBOOK : qbk-scanner ;
 
+
 # Initialization of toolset.
 #
 # Parameters:
@@ -270,8 +276,9 @@
 # When command is not supplied toolset will search for QuickBook directory and
 # compile the executable from source. If that fails we still search the path for
 # 'quickbook'.
+#
 rule init (
- command ? # path to QuickBook executable.
+ command ? # path to the QuickBook executable.
     )
 {
     if ! $(.initialized)
@@ -281,13 +288,16 @@
     }
 }
 
+
 generators.register [ new quickbook-binary-generator quickbook.quickbook-to-boostbook : QUICKBOOK : XML ] ;
 
+
 # <quickbook-binary> shell command to run QuickBook
 # <quickbook-binary-dependencies> targets to build QuickBook from sources.
-toolset.flags quickbook.quickbook-to-boostbook QB-COMMAND <quickbook-binary> ;
-toolset.flags quickbook.quickbook-to-boostbook QB-DEPENDENCIES <quickbook-binary-dependencies> ;
-toolset.flags quickbook.quickbook-to-boostbook INCLUDES <include> ;
+toolset.flags quickbook.quickbook-to-boostbook QB-COMMAND <quickbook-binary> ;
+toolset.flags quickbook.quickbook-to-boostbook QB-DEPENDENCIES <quickbook-binary-dependencies> ;
+toolset.flags quickbook.quickbook-to-boostbook INCLUDES <include> ;
+
 
 rule quickbook-to-boostbook ( target : source : properties * )
 {
@@ -296,13 +306,15 @@
     DEPENDS $(target) : [ on $(target) return $(QB-DEPENDENCIES) ] ;
 }
 
+
 actions quickbook-to-boostbook
 {
- "$(QB-COMMAND)" -I"$(INCLUDES)" --output-file=$(1) $(2)
+ "$(QB-COMMAND)" -I"$(INCLUDES)" --output-file="$(1)" "$(2)"
 }
 
-# Declare a main target to convert a quickbook source into a boostbook
-# XML file.
+
+# Declare a main target to convert a quickbook source into a boostbook XML file.
+#
 rule to-boostbook ( target-name : sources * : requirements * : default-build * )
 {
   local project = [ project.current ] ;

Modified: branches/CMake/release/tools/build/v2/tools/stage.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/stage.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/stage.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -4,8 +4,8 @@
 # Distributed under the Boost Software License, Version 1.0.
 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
-# This module defines the 'install' rule, used to copy a set of targets to a
-# single location
+# This module defines the 'install' rule, used to copy a set of targets to a
+# single location.
 
 import targets ;
 import "class" : new ;
@@ -24,8 +24,8 @@
 feature.feature <install-source-root> : : free path ;
 feature.feature <so-version> : : free incidental ;
 
-# If 'on', version symlinks for shared libraries won't be created. Affects Unix
-# builds only.
+# If 'on', version symlinks for shared libraries will not be created. Affects
+# Unix builds only.
 feature.feature <install-no-version-symlinks> : on : optional incidental ;
 
 
@@ -44,26 +44,27 @@
 
     rule __init__ ( name-and-dir : project : sources * : requirements * : default-build * )
     {
- basic-target.__init__ $(name-and-dir) : $(project) : $(sources) : $(requirements)
- : $(default-build) ;
+ basic-target.__init__ $(name-and-dir) : $(project) : $(sources) :
+ $(requirements) : $(default-build) ;
     }
 
     # If <location> is not set, sets it based on the project data.
+ #
     rule update-location ( property-set )
     {
         local loc = [ $(property-set).get <location> ] ;
         if ! $(loc)
         {
             loc = [ path.root $(self.name) [ $(self.project).get location ] ] ;
-
             property-set = [ $(property-set).add-raw $(loc:G=<location>) ] ;
         }
 
         return $(property-set) ;
     }
 
- # Takes a target that is installed and property set which is
- # used when installing.
+ # Takes a target that is installed and a property set which is used when
+ # installing.
+ #
     rule adjust-properties ( target : build-property-set )
     {
         local ps-raw ;
@@ -73,33 +74,31 @@
             local ps = [ $(a).properties ] ;
             ps-raw = [ $(ps).raw ] ;
 
- # Unless <hardcode-dll-paths>true is in properties, which can
- # happen only if the user has explicitly requested it, nuke all
- # <dll-path> properties
+ # Unless <hardcode-dll-paths>true is in properties, which can happen
+ # only if the user has explicitly requested it, nuke all <dll-path>
+ # properties.
             if [ $(property-set).get <hardcode-dll-paths> ] != true
             {
                 ps-raw = [ property.change $(ps-raw) : <dll-path> ] ;
             }
 
- # If any <dll-path> properties were specified for installing,
- # add them.
+ # If any <dll-path> properties were specified for installing, add
+ # them.
             local l = [ $(build-property-set).get <dll-path> ] ;
             ps-raw += $(l:G=<dll-path>) ;
 
- # Also copy <linkflags> feature from current build
- # set, to be used for relinking.
+ # Also copy <linkflags> feature from current build set, to be used
+ # for relinking.
             local l = [ $(build-property-set).get <linkflags> ] ;
             ps-raw += $(l:G=<linkflags>) ;
         }
 
         # Remove the <tag> feature on original targets.
         ps-raw = [ property.change $(ps-raw) : <tag> ] ;
- # And <location>. If stage target has another stage target
- # in sources, then we'll get virtual targets with <location>
- # property set.
+ # And <location>. If stage target has another stage target in sources,
+ # then we shall get virtual targets with <location> property set.
         ps-raw = [ property.change $(ps-raw) : <location> ] ;
 
-
         local d = [ $(build-property-set).get <dependency> ] ;
         ps-raw += $(d:G=<dependency>) ;
 
@@ -110,8 +109,8 @@
         ps-raw += $(ns:G=<install-no-version-symlinks>) ;
 
         local d = [ $(build-property-set).get <install-source-root> ] ;
- # Make the path absolute: we'll use it to compute relative
- # paths and making the path absolute will help.
+ # Make the path absolute: we shall use it to compute relative paths and
+ # making the path absolute will help.
         if $(d)
         {
             d = [ path.root $(d) [ path.pwd ] ] ;
@@ -130,8 +129,8 @@
 
     rule construct ( name : source-targets * : property-set )
     {
- source-targets = [
- targets-to-stage $(source-targets) : $(property-set) ] ;
+ source-targets = [ targets-to-stage $(source-targets) :
+ $(property-set) ] ;
 
         property-set = [ update-location $(property-set) ] ;
 
@@ -139,8 +138,8 @@
 
         if $(ename) && $(source-targets[2])
         {
- errors.error
- "When <name> property is used in 'install', only one source is allowed" ;
+ errors.error "When <name> property is used in 'install', only one"
+ "source is allowed" ;
         }
 
         local result ;
@@ -148,29 +147,29 @@
         {
             local staged-targets ;
 
- local new-properties =
- [ adjust-properties $(i) : $(property-set) ] ;
+ local new-properties = [ adjust-properties $(i) :
+ $(property-set) ] ;
 
- # See if something special should be done when staging this
- # type. It is indicated by presense of special "staged" type
+ # See if something special should be done when staging this type. It
+ # is indicated by the presence of a special "INSTALLED_" type.
             local t = [ $(i).type ] ;
             if $(t) && [ type.registered INSTALLED_$(t) ]
             {
                 if $(ename)
                 {
- errors.error "In 'install': <name> property specified with target that requires relinking" ;
+ errors.error "In 'install': <name> property specified with target that requires relinking." ;
                 }
                 else
                 {
- local targets = [ generators.construct $(self.project) $(name) :
- INSTALLED_$(t) : $(new-properties) : $(i) ] ;
+ local targets = [ generators.construct $(self.project)
+ $(name) : INSTALLED_$(t) : $(new-properties) : $(i) ] ;
                     staged-targets += $(targets[2-]) ;
                 }
             }
             else
             {
- staged-targets = [ stage.copy-file $(self.project) $(ename)
- : $(i) : $(new-properties) ] ;
+ staged-targets = [ stage.copy-file $(self.project) $(ename) :
+ $(i) : $(new-properties) ] ;
             }
 
             if ! $(staged-targets)
@@ -187,8 +186,9 @@
         return [ property-set.empty ] $(result) ;
     }
 
- # Given the list of source targets explicitly passed to 'stage',
- # returns the list of targets which must be staged.
+ # Given the list of source targets explicitly passed to 'stage', returns the
+ # list of targets which must be staged.
+ #
     rule targets-to-stage ( source-targets * : property-set )
     {
         local result ;
@@ -199,14 +199,14 @@
             source-targets = [ collect-targets $(source-targets) ] ;
         }
 
- # Filter the target types, if needed
+ # Filter the target types, if needed.
         local included-types = [ $(property-set).get <install-type> ] ;
         for local r in $(source-targets)
         {
             local ty = [ $(r).type ] ;
             if $(ty)
             {
- # Don't stage searched libs.
+ # Do not stage searched libs.
                 if $(ty) != SEARCHED_LIB
                 {
                     if $(included-types)
@@ -224,8 +224,8 @@
             }
             else if ! $(included-types)
             {
- # Don't install typeless target if there's
- # explicit list of allowed types.
+ # Don't install typeless target if there is an explicit list of
+ # allowed types.
                 result += $(r) ;
             }
         }
@@ -233,7 +233,8 @@
         return $(result) ;
     }
 
- # CONSIDER: figure out why we can't use virtual-target.traverse here.
+ # CONSIDER: figure out why we can not use virtual-target.traverse here.
+ #
     rule collect-targets ( targets * )
     {
         # Find subvariants
@@ -261,6 +262,7 @@
     }
 
     # Returns true iff 'type' is subtype of some element of 'types-to-include'.
+ #
     local rule include-type ( type : types-to-include * )
     {
         local found ;
@@ -280,55 +282,45 @@
 
 # Creates a copy of target 'source'. The 'properties' object should have a
 # <location> property which specifies where the target must be placed.
+#
 rule copy-file ( project name ? : source : properties )
 {
- local targets ;
     name ?= [ $(source).name ] ;
+ local relative ;
 
- new-a = [
- new non-scanning-action $(source) : common.copy : $(properties) ] ;
+ local new-a = [ new non-scanning-action $(source) : common.copy :
+ $(properties) ] ;
     local source-root = [ $(properties).get <install-source-root> ] ;
     if $(source-root)
     {
- # Get the real path of the target. We probably need to strip
- # relative path from the target name at construction...
+ # Get the real path of the target. We probably need to strip relative
+ # path from the target name at construction.
         local path = [ $(source).path ] ;
         path = [ path.root $(name:D) $(path) ] ;
- # Make the path absolute. Otherwise, it's hard to compute relative
- # path. The 'source-root' is already absolute, see the
+ # Make the path absolute. Otherwise, it would be hard to compute the
+ # relative path. The 'source-root' is already absolute, see the
         # 'adjust-properties' method above.
         path = [ path.root $(path) [ path.pwd ] ] ;
 
         relative = [ path.relative-to $(source-root) $(path) ] ;
- # Note: using $(name:D=$(relative)) might be faster
- # here, but then we need to explicitly check that
- # relative is not ".", otherwise we might get paths like
- #
- # <prefix>/boost/.
- #
- # try to create it, and mkdir will obviously fail.
- name = [ path.root $(name:D=) $(relative) ] ;
- targets = [ new file-target $(name) exact : [ $(source).type ]
- : $(project) : $(new-a) ] ;
- }
- else
- {
- targets = [ new file-target $(name:D=) exact : [ $(source).type ]
- : $(project) : $(new-a) ] ;
     }
 
- return $(targets) ;
+ # Note: Using $(name:D=$(relative)) might be faster here, but then we would
+ # need to explicitly check that relative is not ".", otherwise we might get
+ # paths like '<prefix>/boost/.', try to create it and mkdir would obviously
+ # fail.
+ name = [ path.join $(relative) $(name:D=) ] ;
+
+ return [ new file-target $(name) exact : [ $(source).type ] : $(project) :
+ $(new-a) ] ;
 }
 
 
 rule symlink ( name : project : source : properties )
 {
- local a = [ new action $(source) : symlink.ln :
- $(properties) ] ;
- local targets = [
- new file-target $(name) exact : [ $(source).type ] : $(project) : $(a) ] ;
-
- return $(targets) ;
+ local a = [ new action $(source) : symlink.ln : $(properties) ] ;
+ return [ new file-target $(name) exact : [ $(source).type ] : $(project) :
+ $(a) ] ;
 }
 
 
@@ -336,10 +328,8 @@
 {
     local action = [ $(source).action ] ;
     local cloned-action = [ virtual-target.clone-action $(action) : $(project) :
- "" : $(property-set) ] ;
- local result = [ $(cloned-action).targets ] ;
-
- return $(result) ;
+ "" : $(property-set) ] ;
+ return [ $(cloned-action).targets ] ;
 }
 
 
@@ -347,6 +337,7 @@
 # relinking to the new location.
 type.register INSTALLED_EXE : : EXE ;
 
+
 class installed-exe-generator : generator
 {
     import type ;
@@ -364,7 +355,7 @@
         if [ $(property-set).get <os> ] in NT CYGWIN ||
             [ $(property-set).get <target-os> ] in windows cygwin
         {
- # Relinking is never needed on NT
+ # Relinking is never needed on NT.
             return [ stage.copy-file $(project)
               : $(source) : $(property-set) ] ;
         }
@@ -376,6 +367,7 @@
     }
 }
 
+
 generators.register [ new installed-exe-generator ] ;
 
 
@@ -383,6 +375,7 @@
 # links.
 type.register INSTALLED_SHARED_LIB : : SHARED_LIB ;
 
+
 class installed-shared-lib-generator : generator
 {
     import type ;
@@ -401,12 +394,9 @@
         if [ $(property-set).get <os> ] in NT CYGWIN ||
             [ $(property-set).get <target-os> ] in windows cygwin
         {
- local copied = [ stage.copy-file $(project)
- : $(source) : $(property-set) ] ;
-
- copied = [ virtual-target.register $(copied) ] ;
-
- return $(copied) ;
+ local copied = [ stage.copy-file $(project) : $(source) :
+ $(property-set) ] ;
+ return [ virtual-target.register $(copied) ] ;
         }
         else
         {
@@ -415,8 +405,8 @@
             if ! $(a)
             {
                 # Non-derived file, just copy.
- copied = [ stage.copy-file $(project)
- : $(source) : $(property-set) ] ;
+ copied = [ stage.copy-file $(project) : $(source) :
+ $(property-set) ] ;
             }
             else
             {
@@ -427,38 +417,38 @@
                 if $(current-dll-path) != $(new-dll-path)
                 {
                     # Rpath changed, need to relink.
- copied = [ stage.relink-file
- $(project) : $(source) : $(property-set) ] ;
+ copied = [ stage.relink-file $(project) : $(source) :
+ $(property-set) ] ;
                 }
                 else
                 {
- copied = [ stage.copy-file $(project)
- : $(source) : $(property-set) ] ;
+ copied = [ stage.copy-file $(project) : $(source) :
+ $(property-set) ] ;
                 }
             }
 
             copied = [ virtual-target.register $(copied) ] ;
 
             local result = $(copied) ;
- # If the name is in the form NNN.XXX.YYY.ZZZ, where all
- # 'X', 'Y' and 'Z' are numbers, we need to create
- # NNN.XXX and NNN.XXX.YYY symbolic links.
+ # If the name is in the form NNN.XXX.YYY.ZZZ, where all 'X', 'Y' and
+ # 'Z' are numbers, we need to create NNN.XXX and NNN.XXX.YYY
+ # symbolic links.
             local m = [ MATCH (.*)\\.([0123456789]+)\\.([0123456789]+)\\.([0123456789]+)$
- : [ $(copied).name ] ] ;
+ : [ $(copied).name ] ] ;
             if $(m)
             {
                 # Symlink without version at all is used to make
                 # -lsome_library work.
- result += [ stage.symlink $(m[1]) : $(project)
- : $(copied) : $(property-set) ] ;
+ result += [ stage.symlink $(m[1]) : $(project) : $(copied) :
+ $(property-set) ] ;
 
- # Symlinks of some libfoo.N and libfoo.N.M are used
- # so that library can found at runtime, if libfoo.N.M.X
- # has soname of libfoo.N. That happens when the library
- # makes some binary compatibility guarantees. If not,
- # it's possible to skip those symlinks.
+ # Symlinks of some libfoo.N and libfoo.N.M are used so that
+ # library can found at runtime, if libfoo.N.M.X has soname of
+ # libfoo.N. That happens when the library makes some binary
+ # compatibility guarantees. If not, it is possible to skip those
+ # symlinks.
                 local suppress =
- [ $(property-set).get <install-no-version-symlinks> ] ;
+ [ $(property-set).get <install-no-version-symlinks> ] ;
 
                 if $(suppress) != "on"
                 {
@@ -478,13 +468,13 @@
 
 
 # Main target rule for 'install'.
+#
 rule install ( name : sources * : requirements * : default-build * )
 {
     local project = [ project.current ] ;
 
     # Unless the user has explicitly asked us to hardcode dll paths, add
- # <hardcode-dll-paths>false in requirements, to override default
- # value.
+ # <hardcode-dll-paths>false in requirements, to override default value.
     if ! <hardcode-dll-paths>true in $(requirements)
     {
         requirements += <hardcode-dll-paths>false ;
@@ -493,7 +483,7 @@
     if <tag> in $(requirements:G)
     {
         errors.user-error
- "The <tag> property is not allowed for the 'install' rule" ;
+ "The <tag> property is not allowed for the 'install' rule" ;
     }
 
     targets.main-target-alternative
@@ -504,5 +494,6 @@
       ] ;
 }
 
+
 IMPORT $(__name__) : install : : install ;
 IMPORT $(__name__) : install : : stage ;

Modified: branches/CMake/release/tools/build/v2/tools/symlink.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/symlink.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/symlink.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -129,10 +129,12 @@
     ln -f -s '$(>:D=:R=$(PATH_TO_SOURCE))' '$(<)'
 }
 
-# there is a way to do this; it's a dummy rule for now
+# there is a way to do this; we fall back to a copy for now
 actions ln-NT
 {
- echo "NT symlinks not supported yet"
+ echo "NT symlinks not supported yet, making copy"
+ del /f /q "$(<)" 2$(NULL_OUT) $(NULL_OUT)
+ copy "$(>)" "$(<)" $(NULL_OUT)
 }
 
 IMPORT $(__name__) : symlink : : symlink ;

Modified: branches/CMake/release/tools/build/v2/tools/testing.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/testing.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/testing.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -47,6 +47,7 @@
 import common ;
 import sequence ;
 import errors ;
+import regex ;
 
 
 rule init ( )
@@ -83,6 +84,15 @@
 rule make-test ( target-type : sources + : requirements * : target-name ? )
 {
     target-name ?= $(sources[1]:D=:S=) ;
+
+ # Having periods (".") in the target name is problematic because the
+ # typed generator will strip the suffix and use the bare name for the
+ # file targets. Even though the location-prefix averts problems most
+ # times it doesn't prevent ambiguity issues when referring to the
+ # test targets. For example when using the XML log output. So we
+ # rename the target to remove the periods, and provide an alias
+ # for users.
+ local real-name = [ regex.replace $(target-name) "[.]" "~" ] ;
 
     local project = [ project.current ] ;
     # The <location-prefix> forces the build system for generate paths in the
@@ -91,8 +101,14 @@
     local t =
       [ targets.create-typed-target
           [ type.type-from-rule-name $(target-type) ] : $(project)
- : $(target-name) : $(sources)
- : $(requirements) <location-prefix>$(target-name).test ] ;
+ : $(real-name) : $(sources)
+ : $(requirements) <location-prefix>$(real-name).test ] ;
+
+ # The alias to the real target, per period replacement above.
+ if $(real-name) != $(target-name)
+ {
+ alias $(target-name) : $(t) ;
+ }
 
     # Remember the test (for --dump-tests). A good way would be to collect all
     # given a project. This has some technical problems: e.g. we can't call this
@@ -239,6 +255,9 @@
         }
     }
 
+ local target-name = [ $(project).get location ] // [ $(target).name ] .test ;
+ target-name = $(target-name:J=) ;
+
     local r = [ $(target).requirements ] ;
     # Extract values of the <test-info> feature.
     local test-info = [ $(r).get <test-info> ] ;
@@ -251,6 +270,7 @@
 " ;
         .contents on $(.out-xml) +=
             "$(nl) <test type=\"$(type)\" name=\"$(name)\">"
+ "$(nl) <target><![CDATA[$(target-name)]]></target>"
             "$(nl) <info><![CDATA[$(test-info)]]></info>"
             "$(nl) <source><![CDATA[$(source-files)]]></source>"
             "$(nl) </test>"

Modified: branches/CMake/release/tools/build/v2/tools/vacpp.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/vacpp.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/vacpp.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -132,5 +132,5 @@
 
 actions updated together piecemeal vacpp.archive
 {
- ar ru$(ARFLAGS:E="") "$(<)" "$(>)"
+ ar $(ARFLAGS) ru "$(<)" "$(>)"
 }

Modified: branches/CMake/release/tools/build/v2/tools/xsltproc.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/tools/xsltproc.jam (original)
+++ branches/CMake/release/tools/build/v2/tools/xsltproc.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,16 +1,14 @@
-# Copyright (C) 2003 Doug Gregor. Permission to copy, use, modify,
-# sell and distribute this software is granted provided this
-# copyright notice appears in all copies. This software is provided
-# "as is" without express or implied warranty, and with no claim as
-# to its suitability for any purpose.
+# Copyright (C) 2003 Doug Gregor. Permission to copy, use, modify, sell and
+# distribute this software is granted provided this copyright notice appears in
+# all copies. This software is provided "as is" without express or implied
+# warranty, and with no claim as to its suitability for any purpose.
 
-# This module defines rules to apply an XSLT stylesheet to an XML file
-# using the xsltproc driver, part of libxslt.
+# This module defines rules to apply an XSLT stylesheet to an XML file using the
+# xsltproc driver, part of libxslt.
 #
-# Note: except for 'init', this modules does not provide any rules
-# for end users.
+# Note: except for 'init', this modules does not provide any rules for end
+# users.
 
-import toolset : flags ;
 import feature ;
 import regex ;
 import sequence ;
@@ -20,60 +18,64 @@
 feature.feature xsl:path : : free ;
 feature.feature catalog : : free ;
 
+
 # Initialize xsltproc support. The parameters are:
 # xsltproc: The xsltproc executable
+#
 rule init ( xsltproc ? )
 {
- if ! $(xsltproc)
- {
- xsltproc = [ modules.peek : XSLTPROC ] ;
- }
-
- if ! $(.initialized)
- {
- $(.initialized) = true ;
- .xsltproc = $(xsltproc) ;
- }
+ if ! $(xsltproc)
+ {
+ xsltproc = [ modules.peek : XSLTPROC ] ;
+ }
+
+ if ! $(.initialized)
+ {
+ $(.initialized) = true ;
+ .xsltproc = $(xsltproc) ;
+ }
 }
 
+
 rule compute-xslt-flags ( target : properties * )
 {
- local flags ;
-
- # Raw flags.
- flags += [ feature.get-values <flags> : $(properties) ] ;
-
- # Translate <xsl:param> into command line flags.
- for local param in [ feature.get-values <xsl:param> : $(properties) ]
- {
- local namevalue = [ regex.split $(param) "=" ] ;
- flags += --stringparam $(namevalue[1]) \"$(namevalue[2])\" ;
- }
- # Translate <xsl:path>
- for local path in [ feature.get-values <xsl:path> : $(properties) ]
- {
- flags += --path \"$(path:G=)\" ;
- }
-
- # Take care of implicit dependencies
- local other-deps ;
- for local dep in [ feature.get-values <implicit-dependency> : $(properties) ]
- {
- other-deps += [ $(dep:G=).creating-subvariant ] ;
- }
-
- local implicit-target-directories ;
- for local dep in [ sequence.unique $(other-deps) ]
- {
- implicit-target-directories += [ $(dep).all-target-directories ] ;
- }
-
- for local dir in $(implicit-target-directories)
- {
- flags += --path \"$(dir)\" ;
- }
+ local flags ;
+
+ # Raw flags.
+ flags += [ feature.get-values <flags> : $(properties) ] ;
+
+ # Translate <xsl:param> into command line flags.
+ for local param in [ feature.get-values <xsl:param> : $(properties) ]
+ {
+ local namevalue = [ regex.split $(param) "=" ] ;
+ flags += --stringparam $(namevalue[1]) \"$(namevalue[2])\" ;
+ }
+
+ # Translate <xsl:path>.
+ for local path in [ feature.get-values <xsl:path> : $(properties) ]
+ {
+ flags += --path \"$(path:G=)\" ;
+ }
+
+ # Take care of implicit dependencies.
+ local other-deps ;
+ for local dep in [ feature.get-values <implicit-dependency> : $(properties) ]
+ {
+ other-deps += [ $(dep:G=).creating-subvariant ] ;
+ }
+
+ local implicit-target-directories ;
+ for local dep in [ sequence.unique $(other-deps) ]
+ {
+ implicit-target-directories += [ $(dep).all-target-directories ] ;
+ }
+
+ for local dir in $(implicit-target-directories)
+ {
+ flags += --path \"$(dir)\" ;
+ }
 
- return $(flags) ;
+ return $(flags) ;
 }
 
 
@@ -82,31 +84,35 @@
     STYLESHEET on $(target) = $(stylesheet) ;
     FLAGS on $(target) += [ compute-xslt-flags $(target) : $(properties) ] ;
     NAME on $(target) = $(.xsltproc) ;
-
+
     for local catalog in [ feature.get-values <catalog> : $(properties) ]
     {
         CATALOG = [ common.variable-setting-command XML_CATALOG_FILES : $(catalog) ] ;
     }
-
+
     $(action) $(target) : $(source) ;
 }
 
+
 rule xslt ( target : source stylesheet : properties * )
-{
+{
     return [ .xsltproc $(target) : $(source) $(stylesheet) : $(properties) : : xslt-xsltproc ] ;
 }
 
+
 rule xslt-dir ( target : source stylesheet : properties * : dirname )
-{
+{
     return [ .xsltproc $(target) : $(source) $(stylesheet) : $(properties) : $(dirname) : xslt-xsltproc-dir ] ;
 }
 
-actions xslt-xsltproc
+
+actions xslt-xsltproc bind STYLESHEET
 {
- $(CATALOG) "$(NAME:E=xsltproc)" $(FLAGS) --xinclude -o "$(<)" "$(STYLESHEET)" "$(>)"
+ $(CATALOG) "$(NAME:E=xsltproc)" $(FLAGS) --xinclude -o "$(<)" "$(STYLESHEET)" "$(>)"
 }
 
-actions xslt-xsltproc-dir
+
+actions xslt-xsltproc-dir bind STYLESHEET
 {
- $(CATALOG) "$(NAME:E=xsltproc)" $(FLAGS) --xinclude -o "$(<:D)/" "$(STYLESHEET)" "$(>)"
+ $(CATALOG) "$(NAME:E=xsltproc)" $(FLAGS) --xinclude -o "$(<:D)/" "$(STYLESHEET)" "$(>)"
 }

Modified: branches/CMake/release/tools/build/v2/user-config.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/user-config.jam (original)
+++ branches/CMake/release/tools/build/v2/user-config.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,78 +1,86 @@
-# Copyright 2003, 2005 Douglas Gregor
-# Copyright 2004 John Maddock
-# Copyright 2002, 2003, 2004, 2007 Vladimir Prus
-# Distributed under the Boost Software License, Version 1.0.
-# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+# Copyright 2003, 2005 Douglas Gregor
+# Copyright 2004 John Maddock
+# Copyright 2002, 2003, 2004, 2007 Vladimir Prus
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
-# This file is used to configure your Boost.Build installation.
-# You can modify this file in place, or you can place it it
-# permanent location so that it's not overwritten should you
-# get new version of Boost.Build. See:
+# This file is used to configure your Boost.Build installation. You can modify
+# this file in place, or you can place it in a permanent location so that it
+# does not get overwritten should you get a new version of Boost.Build. See:
 #
-# http://boost.org/boost-build2/doc/html/bbv2/reference.html#bbv2.reference.init
+# http://boost.org/boost-build2/doc/html/bbv2/reference.html#bbv2.reference.init
 #
-# for documentation about permanent location.
+# for documentation about possible permanent locations.
 
-# This file specifies which toolsets (C++ compilers), libraries,
-# and other tools are available. Often, you should be able to
-# just uncomment existing example lines and adjust them to taste.
-# The complete list of supported tools, and configuration instructions
-# can be found at:
+# This file specifies which toolsets (C++ compilers), libraries, and other
+# tools are available. Often, you should be able to just uncomment existing
+# example lines and adjust them to taste. The complete list of supported tools,
+# and configuration instructions can be found at:
 #
-# http://boost.org/boost-build2/doc/html/bbv2/reference/tools.html
+# http://boost.org/boost-build2/doc/html/bbv2/reference/tools.html
 #
 
-# This file uses Jam language syntax to describe available tools.
-# Mostly, there are 'using' lines, that contain the name of the used
-# tools, and parameters to pass to those tools -- where paremeters
-# are separated by semicolons.
-# Important syntax notes:
+# This file uses Jam language syntax to describe available tools. Mostly,
+# there are 'using' lines, that contain the name of the used tools, and
+# parameters to pass to those tools -- where paremeters are separated by
+# semicolons. Important syntax notes:
 #
-# - Both ':' and ';' must be separated from other tokens by whitespace
-# - The '\' symbol is quote character, so when specifying Windows paths
-# it's recommended to use '/' instead, or use '\\'.
+# - Both ':' and ';' must be separated from other tokens by whitespace
+# - The '\' symbol is a quote character, so when specifying Windows paths you
+# should use '/' or '\\' instead.
 #
-# More details about syntax can be found at:
+# More details about the syntax can be found at:
 #
-# http://boost.org/boost-build2/doc/html/bbv2/advanced.html#bbv2.advanced.jam_language
+# http://boost.org/boost-build2/doc/html/bbv2/advanced.html#bbv2.advanced.jam_language
 #
 
 
+# ------------------
+# GCC configuration.
+# ------------------
 
-# GCC configuration
+# Configure gcc (default version).
+# using gcc ;
 
-# Configure gcc (default version)
-# using gcc ;
+# Configure specific gcc version, giving alternative name to use.
+# using gcc : 3.2 : g++-3.2 ;
 
-# Configure specific gcc version, giving alternative name to use
-# using gcc : 3.2 : g++-3.2 ;
 
-# MSVC configuration
+# -------------------
+# MSVC configuration.
+# -------------------
 
-# Configure msvc (default version, searched in standard location
-# and PATH).
-# using msvc ;
+# Configure msvc (default version, searched for in standard locations and PATH).
+# using msvc ;
 
-# Borland configuration
-# using borland ;
+# Configure specific msvc version (searched for in standard locations and PATH).
+# using msvc : 8.0 ;
 
 
-# STLPort configuration
+# ----------------------
+# Borland configuration.
+# ----------------------
+# using borland ;
 
-# Configure, specifying location of STLPort headers.
-# Libraries must be either not needed, or available to
-# the compiler by default
-# using stlport : : /usr/include/stlport ;
 
-# Configure, specifying locatioh of both headers and libraries
-# using stlport : : /usr/include/stlport /usr/lib ;
+# ----------------------
+# STLPort configuration.
+# ----------------------
 
+# Configure specifying location of STLPort headers. Libraries must be either
+# not needed or available to the compiler by default.
+# using stlport : : /usr/include/stlport ;
 
-# QT configuration
+# Configure specifying location of both headers and libraries explicitly.
+# using stlport : : /usr/include/stlport /usr/lib ;
 
-# Configure, assuming QTDIR gives the installation prefix
-# using qt ;
 
-# Configure with explicit installation prefix
-# using qt : /usr/opt/qt ;
+# -----------------
+# QT configuration.
+# -----------------
 
+# Configure assuming QTDIR gives the installation prefix.
+# using qt ;
+
+# Configure with an explicit installation prefix.
+# using qt : /usr/opt/qt ;

Modified: branches/CMake/release/tools/build/v2/util/assert.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/assert.jam (original)
+++ branches/CMake/release/tools/build/v2/util/assert.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,142 +1,336 @@
-# Copyright 2001, 2002, 2003 Dave Abrahams
-# Copyright 2006 Rene Rivera
-# Copyright 2002, 2003 Vladimir Prus
-# Distributed under the Boost Software License, Version 1.0.
-# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+# Copyright 2001, 2002, 2003 Dave Abrahams
+# Copyright 2006 Rene Rivera
+# Copyright 2002, 2003 Vladimir Prus
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
-import errors : error-skip-frames lol->list ;
+import errors ;
 import modules ;
 
-# assert the equality of A and B
+
+################################################################################
+#
+# Private implementation details.
+#
+################################################################################
+
+# Rule added as a replacement for the regular Jam = operator but which does not
+# ignore trailing empty string elements.
+#
+local rule exact-equal-test ( lhs * : rhs * )
+{
+ local lhs_extended = $(lhs) xxx ;
+ local rhs_extended = $(rhs) xxx ;
+ if $(lhs_extended) = $(rhs_extended)
+ {
+ return true ;
+ }
+}
+
+
+# Two lists are considered set-equal if they contain the same elements, ignoring
+# duplicates and ordering.
+#
+local rule set-equal-test ( set1 * : set2 * )
+{
+ if ( $(set1) in $(set2) ) && ( $(set2) in $(set1) )
+ {
+ return true ;
+ }
+}
+
+
+################################################################################
+#
+# Public interface.
+#
+################################################################################
+
+# Assert the equality of A and B, ignoring trailing empty string elements.
+#
 rule equal ( a * : b * )
 {
     if $(a) != $(b)
     {
- error-skip-frames 3 assertion failure: \"$(a)\" "!=" \"$(b)\" ;
+ errors.error-skip-frames 3 assertion failure: \"$(a)\" "==" \"$(b)\"
+ (ignoring trailing empty strings) ;
     }
 }
 
-# assert that EXPECTED is the result of calling RULE-NAME with the
-# given arguments
-rule result ( expected * : rule-name args * : * )
+
+# Assert that the result of calling RULE-NAME on the given arguments has a false
+# logical value (is either an empty list or all empty strings).
+#
+rule false ( rule-name args * : * )
 {
     local result ;
     module [ CALLER_MODULE ]
     {
- modules.poke assert : result
- : [ $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ] ;
+ modules.poke assert : result : [ $(1) : $(2) : $(3) : $(4) : $(5) : $(6)
+ : $(7) : $(8) : $(9) ] ;
     }
 
- if $(result) != $(expected)
+ if $(result)
     {
- error-skip-frames 3 assertion failure: "[" $(rule-name)
- [ lol->list $(args) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ]
- "]"
- : expected: \"$(expected)\"
- : got: \"$(result)\" ;
+ errors.error-skip-frames 3 assertion failure: Expected false result from
+ "[" $(rule-name) [ errors.lol->list $(args) : $(2) : $(3) : $(4) :
+ $(5) : $(6) : $(7) : $(8) : $(9) ] "]" : Got: "[" \"$(result)\" "]" ;
     }
 }
 
-rule .set.equal ( set1 * : set2 * )
+
+# Assert that ELEMENT is present in LIST.
+#
+rule "in" ( element : list * )
 {
- if ( $(set1) in $(set2) ) && ( $(set2) in $(set1) )
+ if ! $(element) in $(list)
     {
- return true ;
+ errors.error-skip-frames 3 assertion failure: Expected \"$(element)\" in
+ "[" \"$(list)\" "]" ;
     }
 }
 
-# assert that EXPECTED is equal to the result of calling RULE-NAME with the
-# given arguments
-rule result-equal ( expected * : rule-name args * : * )
+
+# Assert the inequality of A and B, ignoring trailing empty string elements.
+#
+rule not-equal ( a * : b * )
 {
- local result ;
- module [ CALLER_MODULE ]
+ if $(a) = $(b)
     {
- modules.poke assert : result
- : [ $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ] ;
+ errors.error-skip-frames 3 assertion failure: \"$(a)\" "!=" \"$(b)\"
+ (ignoring trailing empty strings) ;
     }
+}
 
- if ! [ .set.equal $(result) : $(expected) ]
+
+# Assert that ELEMENT is not present in LIST.
+#
+rule not-in ( element : list * )
+{
+ if $(element) in $(list)
     {
- error-skip-frames 3 assertion failure: "[" $(rule-name)
- [ lol->list $(args) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ]
- "]"
- : expected: \"$(expected)\"
- : got: \"$(result)\" ;
+ errors.error-skip-frames 3 assertion failure: Did not expect
+ \"$(element)\" in "[" \"$(list)\" "]" ;
     }
 }
 
-# assert that the given variable is nonempty.
-rule nonempty-variable ( name )
+
+# Assert the inequality of A and B as sets.
+#
+rule not-set-equal ( a * : b * )
 {
- local value = [ modules.peek [ CALLER_MODULE ] : $(name) ] ;
+ if [ set-equal-test $(a) : $(b) ]
+ {
+ errors.error-skip-frames 3 assertion failure: Expected "[" \"$(a)\" "]"
+ and "[" \"$(b)\" "]" to not be equal as sets ;
+ }
+}
 
- if ! $(value)-is-nonempty
+
+# Assert that A and B are not exactly equal, not ignoring trailing empty string
+# elements.
+#
+rule not-exact-equal ( a * : b * )
+{
+ if [ exact-equal-test $(a) : $(b) ]
     {
- error-skip-frames 3 assertion failure: expecting non-empty variable $(variable) ;
+ errors.error-skip-frames 3 assertion failure: \"$(a)\" "!=" \"$(b)\" ;
     }
 }
 
-# assert that the result of calling RULE-NAME on the given arguments
-# has a true logical value (is neither an empty list nor all empty
-# strings).
-rule true ( rule-name args * : * )
+
+# Assert that EXPECTED is the result of calling RULE-NAME with the given
+# arguments.
+#
+rule result ( expected * : rule-name args * : * )
 {
     local result ;
     module [ CALLER_MODULE ]
     {
- modules.poke assert : result
- : [ $(1) : $(2) : $(3) : $(4)
- : $(5) : $(6) : $(7) : $(8) : $(9) ] ;
+ modules.poke assert : result : [ $(2) : $(3) : $(4) : $(5) : $(6) : $(7)
+ : $(8) : $(9) ] ;
     }
 
- if ! $(result)
+ if ! [ exact-equal-test $(result) : $(expected) ]
     {
- error-skip-frames 3 assertion failure: expecting true result from
- "[" $(rule-name)
- [ lol->list $(args) : $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ]
- "]" ;
+ errors.error-skip-frames 3 assertion failure: "[" $(rule-name) [
+ errors.lol->list $(args) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) :
+ $(9) ] "]" : Expected: "[" \"$(expected)\" "]" : Got: "["
+ \"$(result)\" "]" ;
     }
 }
 
-# assert that the result of calling RULE-NAME on the given arguments
-# has a false logical value (is either an empty list or all empty
-# strings).
-rule false ( rule-name args * : * )
+
+# Assert that EXPECTED is set-equal (i.e. duplicates and ordering are ignored)
+# to the result of calling RULE-NAME with the given arguments. Note that rules
+# called this way may accept at most 8 parameters.
+#
+rule result-set-equal ( expected * : rule-name args * : * )
 {
     local result ;
     module [ CALLER_MODULE ]
     {
- modules.poke assert : result
- : [ $(1) : $(2) : $(3) : $(4)
- : $(5) : $(6) : $(7) : $(8) : $(9) ] ;
+ modules.poke assert : result : [ $(2) : $(3) : $(4) : $(5) : $(6) : $(7)
+ : $(8) : $(9) ] ;
     }
 
- if $(result)
+ if ! [ set-equal-test $(result) : $(expected) ]
     {
- error-skip-frames 3 assertion failure: expecting false result from
- "[" $(rule-name)
- [ lol->list $(args) : $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ]
- "]" : got [ lol->list $(result) ] instead ;
+ errors.error-skip-frames 3 assertion failure: "[" $(rule-name) [
+ errors.lol->list $(args) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) :
+ $(9) ] "]" : Expected: "[" \"$(expected)\" "]" : Got: "["
+ \"$(result)\" "]" ;
     }
 }
 
-# assert that 'element' is present in 'list'.
-rule "in" ( element : list * )
+
+# Assert the equality of A and B as sets.
+#
+rule set-equal ( a * : b * )
 {
- if ! $(element) in $(list)
+ if ! [ set-equal-test $(a) : $(b) ]
     {
- error-skip-frames 3 assertion failure: expecting $(element) in
- "[" $(list) "]" ;
+ errors.error-skip-frames 3 assertion failure: Expected "[" \"$(a)\" "]"
+ and "[" \"$(b)\" "]" to be equal as sets ;
     }
 }
 
-# assert that 'element' is not present in 'list'.
-rule not-in ( element : list * )
+
+# Assert that the result of calling RULE-NAME on the given arguments has a true
+# logical value (is neither an empty list nor all empty strings).
+#
+rule true ( rule-name args * : * )
 {
- if $(element) in $(list)
+ local result ;
+ module [ CALLER_MODULE ]
     {
- error-skip-frames 3 assertion failure: did not expect $(element) in
- "[" $(list) "]" ;
+ modules.poke assert : result : [ $(1) : $(2) : $(3) : $(4) : $(5) : $(6)
+ : $(7) : $(8) : $(9) ] ;
     }
+
+ if ! $(result)
+ {
+ errors.error-skip-frames 3 assertion failure: Expected true result from
+ "[" $(rule-name) [ errors.lol->list $(args) : $(2) : $(3) : $(4) :
+ $(5) : $(6) : $(7) : $(8) : $(9) ] "]" ;
+ }
+}
+
+
+# Assert the exact equality of A and B, not ignoring trailing empty string
+# elements.
+#
+rule exact-equal ( a * : b * )
+{
+ if ! [ exact-equal-test $(a) : $(b) ]
+ {
+ errors.error-skip-frames 3 assertion failure: \"$(a)\" "==" \"$(b)\" ;
+ }
+}
+
+
+# Assert that the given variable is not an empty list.
+#
+rule variable-not-empty ( name )
+{
+ local value = [ modules.peek [ CALLER_MODULE ] : $(name) ] ;
+ if ! $(value)-is-not-empty
+ {
+ errors.error-skip-frames 3 assertion failure: Expected variable
+ \"$(name)\" not to be an empty list ;
+ }
+}
+
+
+rule __test__ ( )
+{
+ # Helper rule used to avoid test duplication related to different list
+ # equality test rules.
+ #
+ local rule run-equality-test ( equality-assert : ignore-trailing-empty-strings ? )
+ {
+ local not-equality-assert = not-$(equality-assert) ;
+
+ # When the given equality test is expected to ignore trailing empty
+ # strings some of the test results should be inverted.
+ local not-equality-assert-i = not-$(equality-assert) ;
+ if $(ignore-trailing-empty-strings)
+ {
+ not-equality-assert-i = $(equality-assert) ;
+ }
+
+ $(equality-assert) : ;
+ $(equality-assert) "" "" : "" "" ;
+ $(not-equality-assert-i) : "" "" ;
+ $(equality-assert) x : x ;
+ $(not-equality-assert) : x ;
+ $(not-equality-assert) "" : x ;
+ $(not-equality-assert) "" "" : x ;
+ $(not-equality-assert-i) x : x "" ;
+ $(equality-assert) x "" : x "" ;
+ $(not-equality-assert) x : "" x ;
+ $(equality-assert) "" x : "" x ;
+
+ $(equality-assert) 1 2 3 : 1 2 3 ;
+ $(not-equality-assert) 1 2 3 : 3 2 1 ;
+ $(not-equality-assert) 1 2 3 : 1 5 3 ;
+ $(not-equality-assert) 1 2 3 : 1 "" 3 ;
+ $(not-equality-assert) 1 2 3 : 1 1 2 3 ;
+ $(not-equality-assert) 1 2 3 : 1 2 2 3 ;
+ $(not-equality-assert) 1 2 3 : 5 6 7 ;
+
+ # Extra variables used here just to make sure Boost Jam or Boost Build
+ # do not handle lists with empty strings differently depending on
+ # whether they are literals or stored in variables.
+
+ local empty = ;
+ local empty-strings = "" "" ;
+ local x-empty-strings = x "" "" ;
+ local empty-strings-x = "" "" x ;
+
+ $(equality-assert) : $(empty) ;
+ $(not-equality-assert-i) "" : $(empty) ;
+ $(not-equality-assert-i) "" "" : $(empty) ;
+ $(not-equality-assert-i) : $(empty-strings) ;
+ $(not-equality-assert-i) "" : $(empty-strings) ;
+ $(equality-assert) "" "" : $(empty-strings) ;
+ $(equality-assert) $(empty) : $(empty) ;
+ $(equality-assert) $(empty-strings) : $(empty-strings) ;
+ $(not-equality-assert-i) $(empty) : $(empty-strings) ;
+ $(equality-assert) $(x-empty-strings) : $(x-empty-strings) ;
+ $(equality-assert) $(empty-strings-x) : $(empty-strings-x) ;
+ $(not-equality-assert) $(empty-strings-x) : $(x-empty-strings) ;
+ $(not-equality-assert-i) x : $(x-empty-strings) ;
+ $(not-equality-assert) x : $(empty-strings-x) ;
+ $(not-equality-assert-i) x : $(x-empty-strings) ;
+ $(not-equality-assert-i) x "" : $(x-empty-strings) ;
+ $(equality-assert) x "" "" : $(x-empty-strings) ;
+ $(not-equality-assert) x : $(empty-strings-x) ;
+ $(not-equality-assert) "" x : $(empty-strings-x) ;
+ $(equality-assert) "" "" x : $(empty-strings-x) ;
+ }
+
+
+ # ---------------
+ # Equality tests.
+ # ---------------
+
+ run-equality-test equal : ignore-trailing-empty-strings ;
+ run-equality-test exact-equal ;
+
+
+ # -------------------------
+ # assert.set-equal() tests.
+ # -------------------------
+
+ set-equal : ;
+ not-set-equal "" "" : ;
+ set-equal "" "" : "" ;
+ set-equal "" "" : "" "" ;
+ set-equal a b c : a b c ;
+ set-equal a b c : b c a ;
+ set-equal a b c a : a b c ;
+ set-equal a b c : a b c a ;
+ not-set-equal a b c : a b c d ;
+ not-set-equal a b c d : a b c ;
 }

Modified: branches/CMake/release/tools/build/v2/util/container.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/container.jam (original)
+++ branches/CMake/release/tools/build/v2/util/container.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,33 +1,31 @@
-# Copyright 2003 Dave Abrahams
-# Copyright 2002, 2003 Rene Rivera
-# Copyright 2002, 2003, 2004 Vladimir Prus
-# Distributed under the Boost Software License, Version 1.0.
-# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+# Copyright 2003 Dave Abrahams
+# Copyright 2002, 2003 Rene Rivera
+# Copyright 2002, 2003, 2004 Vladimir Prus
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
 # Various container classes.
 
-import "class" : * ;
-
-# Base for container objects. This lets us construct recursive structures.
-# That is containers with containers in them, specifically so we can tell
-# literal values from node values.
+# Base for container objects. This lets us construct recursive structures. That
+# is containers with containers in them, specifically so we can tell literal
+# values from node values.
 #
-class node
+class node
 {
     rule __init__ (
- value ? # Optional value to set node to initially.
+ value ? # Optional value to set node to initially.
     )
     {
         self.value = $(value) ;
     }
-
+
     # Set the value of this node, passing nothing will clear it.
     #
     rule set ( value * )
     {
         self.value = $(value) ;
     }
-
+
     # Get the value of this node.
     #
     rule get ( )
@@ -37,49 +35,49 @@
 }
 
 
-# A simple vector. Interface mimics the C++ std::vector and std::list,
-# with the exception that indices are one (1) based to follow Jam standard.
+# A simple vector. Interface mimics the C++ std::vector and std::list, with the
+# exception that indices are one (1) based to follow Jam standard.
 #
 # TODO: Possibly add assertion checks.
 #
-class vector : node
+class vector : node
 {
- import numbers : range ;
+ import numbers ;
     import utility ;
     import sequence ;
-
+
     rule __init__ (
- values * # Initial contents of vector.
+ values * # Initial contents of vector.
     )
     {
         node.__init__ ;
         self.value = $(values) ;
- }
-
+ }
+
     # Get the value of the first element.
     #
     rule front ( )
     {
         return $(self.value[1]) ;
     }
-
+
     # Get the value of the last element.
     #
     rule back ( )
     {
         return $(self.value[-1]) ;
     }
-
- # Get the value of the element at the given index, one based.
- # Access to elements of recursive structures is supported directly.
- # Specifying additional index values recursively accesses the elements as
- # containers. For example: [ $(v).at 1 : 2 ] would retrieve the second element
- # of our first element. This assuming the first element is a container.
+
+ # Get the value of the element at the given index, one based. Access to
+ # elements of recursive structures is supported directly. Specifying
+ # additional index values recursively accesses the elements as containers.
+ # For example: [ $(v).at 1 : 2 ] would retrieve the second element of our
+ # first element, assuming the first element is a container.
     #
     rule at (
- index # The element index, one based.
- : * # Additional indices to access recursively.
- )
+ index # The element index, one based.
+ : * # Additional indices to access recursively.
+ )
     {
         local r = $(self.value[$(index)]) ;
         if $(2)
@@ -88,15 +86,15 @@
         }
         return $(r) ;
     }
-
+
     # Get the value contained in the given element. This has the same
- # functionality and interface as "at" but in addition gets the value
- # of the referenced element, assuming it's a "node".
+ # functionality and interface as "at" but in addition gets the value of the
+ # referenced element, assuming it is a "node".
     #
     rule get-at (
- index # The element index, one based.
- : * # Additional indices to access recursively.
- )
+ index # The element index, one based.
+ : * # Additional indices to access recursively.
+ )
     {
         local r = $(self.value[$(index)]) ;
         if $(2)
@@ -105,64 +103,68 @@
         }
         return [ $(r).get ] ;
     }
-
- # Insert the given value into the front of the vector pushing the
- # rest of the elements back.
+
+ # Insert the given value into the front of the vector pushing the rest of
+ # the elements back.
     #
     rule push-front (
- value # Value to become first element.
- )
+ value # Value to become first element.
+ )
     {
         self.value = $(value) $(self.value) ;
     }
-
- # Remove the front element from the vector. Does not return the value.
- # No effect if vector is empty.
+
+ # Remove the front element from the vector. Does not return the value. No
+ # effect if vector is empty.
     #
     rule pop-front ( )
     {
         self.value = $(self.value[2-]) ;
     }
-
+
     # Add the given value at the end of the vector.
     #
     rule push-back (
- value # Value to become back element.
- )
+ value # Value to become back element.
+ )
     {
         self.value += $(value) ;
     }
-
- # Remove the back element from the vector. Does not return the value.
- # No effect if vector is empty.
+
+ # Remove the back element from the vector. Does not return the value. No
+ # effect if vector is empty.
     #
     rule pop-back ( )
     {
         self.value = $(self.value[1--2]) ;
     }
-
- # Insert the given value at the given index, one based. The values
- # at and to the right of the of the index are push back to make room
- # for the new value.
+
+ # Insert the given value at the given index, one based. The values at and to
+ # the right of the index are pushed back to make room for the new value.
+ # If the index is passed the end of the vector the element is added to the
+ # end.
     #
     rule insert (
- index # The index to insert at, one based.
- : value # The value to insert.
- )
+ index # The index to insert at, one based.
+ : value # The value to insert.
+ )
     {
         local left = $(self.value[1-$(index)]) ;
- left = $(left[1--2]) ;
         local right = $(self.value[$(index)-]) ;
+ if $(right)-is-not-empty
+ {
+ left = $(left[1--2]) ;
+ }
         self.value = $(left) $(value) $(right) ;
     }
-
- # Remove one or more elements from the vector. The range is inclusive,
- # and not specifying an end is equivalent to the [start,start] range.
+
+ # Remove one or more elements from the vector. The range is inclusive, and
+ # not specifying an end is equivalent to the [start, start] range.
     #
     rule erase (
- start # Index of first element ro remove.
- end ? # Optional, index of last element to remove.
- )
+ start # Index of first element to remove.
+ end ? # Optional, index of last element to remove.
+ )
     {
         end ?= $(start) ;
         local left = $(self.value[1-$(start)]) ;
@@ -171,144 +173,167 @@
         right = $(right[2-]) ;
         self.value = $(left) $(right) ;
     }
-
+
     # Remove all elements from the vector.
     #
     rule clear ( )
     {
         self.value = ;
     }
-
+
     # The number of elements in the vector.
     #
     rule size ( )
     {
         return [ sequence.length $(self.value) ] ;
     }
-
- # Returns "true" if there are NO elements in the vector, empty
- # otherwise.
+
+ # Returns "true" if there are NO elements in the vector, empty otherwise.
     #
     rule empty ( )
     {
- if ! $(self.value)
+ if ! $(self.value)-is-not-empty
         {
             return true ;
         }
     }
 
- # Returns the list of all valid indices for this vector.
- rule indices ( )
- {
- if ! [ empty ]
- {
- local size = [ size ] ;
- return [ range 1 : $(size) ] $(size) ;
- }
- }
-
     # Returns the textual representation of content.
+ #
     rule str ( )
     {
         return "[" [ sequence.transform utility.str : $(self.value) ] "]" ;
     }
 
- # Sorts the vector inplace, calling 'utility.less' for
- # comparisons.
- # NOTE: this rule is unused at the moment.
+ # Sorts the vector inplace, calling 'utility.less' for comparisons.
+ #
     rule sort ( )
     {
- self.value =
- [ sequence.insertion-sort $(self.value) : utility.less ] ;
+ self.value = [ sequence.insertion-sort $(self.value) : utility.less ] ;
     }
 
- # Returns true if content is equal to the content of other vector.
- # Uses 'utility.equal' for comparison.
+ # Returns true if content is equal to the content of other vector. Uses
+ # 'utility.equal' for comparison.
+ #
     rule equal ( another )
- {
+ {
         local mismatch ;
- if [ size ] = [ $(another).size ]
+ local size = [ size ] ;
+ if $(size) = [ $(another).size ]
         {
- for local i in [ indices ]
+ for local i in [ numbers.range 1 $(size) ]
             {
                 if ! [ utility.equal [ at $(i) ] [ $(another).at $(i) ] ]
                 {
                     mismatch = true ;
                 }
             }
- }
+ }
         else
         {
             mismatch = true ;
         }
-
- if ! $(mismatch)
+
+ if ! $(mismatch)
         {
             return true ;
         }
     }
 }
 
-local rule __test__ ( )
+
+rule __test__ ( )
 {
     import assert ;
     import "class" : new ;
-
- local l = [ new vector ] ;
- assert.result 0 : $(l).size ;
- assert.result : $(l).indices ;
- assert.result "[" "]" : $(l).str ;
- $(l).push-back b ;
- $(l).push-front a ;
- assert.result 1 2 : $(l).indices ;
- assert.result "[" a b "]" : $(l).str ;
- assert.result a : $(l).front ;
- assert.result b : $(l).back ;
- $(l).insert 2 : d ;
- $(l).insert 2 : c ;
- $(l).insert 4 : f ;
- $(l).insert 4 : e ;
- $(l).pop-back ;
- assert.result 5 : $(l).size ;
- assert.result d : $(l).at 3 ;
- $(l).pop-front ;
- assert.result c : $(l).front ;
- assert.false $(l).empty ;
- $(l).erase 3 4 ;
- assert.result 2 : $(l).size ;
-
- local l2 = [ new vector q w e r t y ] ;
- assert.result 6 : $(l2).size ;
- $(l).push-back $(l2) ;
- assert.result 3 : $(l).size ;
- local l2-alias = [ $(l).back ] ;
- assert.result e : $(l2-alias).at 3 ;
- $(l).clear ;
- assert.true $(l).empty ;
- assert.false $(l2-alias).empty ;
- $(l2).pop-back ;
- assert.result t : $(l2-alias).back ;
-
- local l3 = [ new vector ] ;
- $(l3).push-back [ new vector 1 2 3 4 5 ] ;
- $(l3).push-back [ new vector a b c ] ;
- assert.result "[" "[" 1 2 3 4 5 "]" "[" a b c "]" "]" : $(l3).str ;
- $(l3).push-back [ new vector [ new vector x y z ] [ new vector 7 8 9 ] ] ;
- assert.result 1 : $(l3).at 1 : 1 ;
- assert.result b : $(l3).at 2 : 2 ;
- assert.result a b c : $(l3).get-at 2 ;
- assert.result 7 8 9 : $(l3).get-at 3 : 2 ;
-
- local l4 = [ new vector 4 3 6 ] ;
- $(l4).sort ;
- assert.result 3 4 6 : $(l4).get ;
-
- assert.false $(l4).equal $(l3) ;
- local l5 = [ new vector 3 4 6 ] ;
- assert.true $(l4).equal $(l5) ;
- # Check that vectors of different sizes are considered non-equal
- $(l5).pop-back ;
- assert.false $(l4).equal $(l5) ;
- local l6 = [ new vector [ new vector 1 2 3 ] ] ;
- assert.true $(l6).equal [ new vector [ new vector 1 2 3 ] ] ;
+
+ local v1 = [ new vector ] ;
+ assert.true $(v1).equal $(v1) ;
+ assert.true $(v1).empty ;
+ assert.result 0 : $(v1).size ;
+ assert.result "[" "]" : $(v1).str ;
+ $(v1).push-back b ;
+ $(v1).push-front a ;
+ assert.result "[" a b "]" : $(v1).str ;
+ assert.result a : $(v1).front ;
+ assert.result b : $(v1).back ;
+ $(v1).insert 2 : d ;
+ $(v1).insert 2 : c ;
+ $(v1).insert 4 : f ;
+ $(v1).insert 4 : e ;
+ $(v1).pop-back ;
+ assert.result 5 : $(v1).size ;
+ assert.result d : $(v1).at 3 ;
+ $(v1).pop-front ;
+ assert.result c : $(v1).front ;
+ assert.false $(v1).empty ;
+ $(v1).erase 3 4 ;
+ assert.result 2 : $(v1).size ;
+
+ local v2 = [ new vector q w e r t y ] ;
+ assert.result 6 : $(v2).size ;
+ $(v1).push-back $(v2) ;
+ assert.result 3 : $(v1).size ;
+ local v2-alias = [ $(v1).back ] ;
+ assert.result e : $(v2-alias).at 3 ;
+ $(v1).clear ;
+ assert.true $(v1).empty ;
+ assert.false $(v2-alias).empty ;
+ $(v2).pop-back ;
+ assert.result t : $(v2-alias).back ;
+
+ local v3 = [ new vector ] ;
+ $(v3).push-back [ new vector 1 2 3 4 5 ] ;
+ $(v3).push-back [ new vector a b c ] ;
+ assert.result "[" "[" 1 2 3 4 5 "]" "[" a b c "]" "]" : $(v3).str ;
+ $(v3).push-back [ new vector [ new vector x y z ] [ new vector 7 8 9 ] ] ;
+ assert.result 1 : $(v3).at 1 : 1 ;
+ assert.result b : $(v3).at 2 : 2 ;
+ assert.result a b c : $(v3).get-at 2 ;
+ assert.result 7 8 9 : $(v3).get-at 3 : 2 ;
+
+ local v4 = [ new vector 4 3 6 ] ;
+ $(v4).sort ;
+ assert.result 3 4 6 : $(v4).get ;
+ assert.false $(v4).equal $(v3) ;
+
+ local v5 = [ new vector 3 4 6 ] ;
+ assert.true $(v4).equal $(v5) ;
+ # Check that vectors of different sizes are considered non-equal.
+ $(v5).pop-back ;
+ assert.false $(v4).equal $(v5) ;
+
+ local v6 = [ new vector [ new vector 1 2 3 ] ] ;
+ assert.true $(v6).equal [ new vector [ new vector 1 2 3 ] ] ;
+
+ local v7 = [ new vector 111 222 333 ] ;
+ assert.true $(v7).equal $(v7) ;
+ $(v7).insert 4 : 444 ;
+ assert.result 111 222 333 444 : $(v7).get ;
+ $(v7).insert 999 : xxx ;
+ assert.result 111 222 333 444 xxx : $(v7).get ;
+
+ local v8 = [ new vector "" "" "" ] ;
+ assert.true $(v8).equal $(v8) ;
+ assert.false $(v8).empty ;
+ assert.result 3 : $(v8).size ;
+ assert.result "" : $(v8).at 1 ;
+ assert.result "" : $(v8).at 2 ;
+ assert.result "" : $(v8).at 3 ;
+ assert.result : $(v8).at 4 ;
+ $(v8).insert 2 : 222 ;
+ assert.result 4 : $(v8).size ;
+ assert.result "" 222 "" "" : $(v8).get ;
+ $(v8).insert 999 : "" ;
+ assert.result 5 : $(v8).size ;
+ assert.result "" 222 "" "" "" : $(v8).get ;
+ $(v8).insert 999 : xxx ;
+ assert.result 6 : $(v8).size ;
+ assert.result "" 222 "" "" "" xxx : $(v8).get ;
+
+ # Regression test for a bug causing vector.equal to compare only the first
+ # and the last element in the given vectors.
+ local v9 = [ new vector 111 xxx 222 ] ;
+ local v10 = [ new vector 111 yyy 222 ] ;
+ assert.false $(v9).equal $(v10) ;
 }

Modified: branches/CMake/release/tools/build/v2/util/doc.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/doc.jam (original)
+++ branches/CMake/release/tools/build/v2/util/doc.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -17,6 +17,7 @@
 import sequence ;
 import path ;
 
+
 # The type of output to generate.
 # "console" is formated text echoed to the console (the default);
 # "text" is formated text appended to the output file;
@@ -24,9 +25,10 @@
 #
 help-output = console ;
 
-# The file to output documentation to when generating "text" or "html"
-# help. This is without extension as the extension is determined by the
-# type of output.
+
+# The file to output documentation to when generating "text" or "html" help.
+# This is without extension as the extension is determined by the type of
+# output.
 #
 help-output-file = help ;
 
@@ -39,45 +41,43 @@
 #
 .option.detailed ?= ;
 
-# Generate debug output as the help is generated and modules
-# are parsed.
+# Generate debug output as the help is generated and modules are parsed.
 #
 .option.debug ?= ;
 
 # Enable or disable a documentation option.
 #
 local rule set-option (
- option # The option name.
- : value ? # Enabled (non-empty), or disabled (empty)
- )
+ option # The option name.
+ : value ? # Enabled (non-empty), or disabled (empty)
+)
 {
     .option.$(option) = $(value) ;
 }
 
+
 # Set the type of output.
 #
-local rule set-output (
- type
- )
+local rule set-output ( type )
 {
     help-output = $(type) ;
 }
 
+
 # Set the output to a file.
 #
-local rule set-output-file (
- file
- )
+local rule set-output-file ( file )
 {
     help-output-file = $(file) ;
 }
 
-# Extracts the brief comment from a complete comment. The brief
-# comment is the first sentence.
+
+# Extracts the brief comment from a complete comment. The brief comment is the
+# first sentence.
 #
 local rule brief-comment (
- docs * # The comment documentation.
- )
+ docs * # The comment documentation.
+)
 {
     local d = $(docs:J=" ") ;
     local p = [ MATCH ".*([.])$" : $(d) ] ;
@@ -93,12 +93,13 @@
     return $(brief:J="") ;
 }
 
+
 # Specifies the documentation for the current module.
 #
 local rule set-module-doc (
- module-name ? # The name of the module to document.
- : docs * # The documentation for the module.
- )
+ module-name ? # The name of the module to document.
+ : docs * # The documentation for the module.
+)
 {
     module-name ?= * ;
 
@@ -111,12 +112,13 @@
     }
 }
 
+
 # Specifies the documentation for the current module.
 #
 local rule set-module-copyright (
- module-name ? # The name of the module to document.
- : copyright * # The copyright for the module.
- )
+ module-name ? # The name of the module to document.
+ : copyright * # The copyright for the module.
+)
 {
     module-name ?= * ;
 
@@ -129,15 +131,16 @@
     }
 }
 
-# Specifies the documentation for a rule in the current module.
-# If called in the global module, this documents a global rule.
+
+# Specifies the documentation for a rule in the current module. If called in the
+# global module, this documents a global rule.
 #
 local rule set-rule-doc (
- name # The name of the rule.
- module-name ? # The name of the module to document.
- is-local ? # Whether the rule is local to the module.
- : docs * # The documentation for the rule.
- )
+ name # The name of the rule.
+ module-name ? # The name of the module to document.
+ is-local ? # Whether the rule is local to the module.
+ : docs * # The documentation for the rule.
+)
 {
     module-name ?= * ;
 
@@ -151,13 +154,14 @@
     }
 }
 
+
 # Specify a class, will turn a rule into a class.
 #
 local rule set-class-doc (
- name # The name of the class.
- module-name ? # The name of the module to document.
- : super-name ? # The super class name.
- )
+ name # The name of the class.
+ module-name ? # The name of the module to document.
+ : super-name ? # The super class name.
+)
 {
     module-name ?= * ;
 
@@ -174,28 +178,30 @@
             $(name) $($(module-name).$(name).class-rules) ] ;
 }
 
+
 # Set the argument call signature of a rule.
 #
 local rule set-rule-arguments-signature (
- name # The name of the rule.
- module-name ? # The name of the module to document.
- : signature * # The arguments signature.
- )
+ name # The name of the rule.
+ module-name ? # The name of the module to document.
+ : signature * # The arguments signature.
+)
 {
     module-name ?= * ;
 
     $(module-name).$(name).signature = $(signature) ;
 }
 
+
 # Specifies the documentation for an argument of a rule.
 #
 local rule set-argument-doc (
- name # The name of the argument.
- qualifier # Argument syntax qualifier, "*", "+", etc.
- rule-name # The name of the rule.
- module-name ? # THe optional name of the module.
- : docs * # The documentation.
- )
+ name # The name of the argument.
+ qualifier # Argument syntax qualifier, "*", "+", etc.
+ rule-name # The name of the rule.
+ module-name ? # THe optional name of the module.
+ : docs * # The documentation.
+)
 {
     module-name ?= * ;
 
@@ -208,16 +214,17 @@
     }
 }
 
-# Specifies the documentation for a variable in the current module.
-# If called in the global module, the global variable is documented.
+
+# Specifies the documentation for a variable in the current module. If called in
+# the global module, the global variable is documented.
 #
 local rule set-variable-doc (
- name # The name of the variable.
- default # The default value.
- initial # The initial value.
- module-name ? # The name of the module to document.
- : docs * # The documentation for the variable.
- )
+ name # The name of the variable.
+ default # The default value.
+ initial # The initial value.
+ module-name ? # The name of the module to document.
+ : docs * # The documentation for the variable.
+)
 {
     module-name ?= * ;
 
@@ -232,6 +239,7 @@
     }
 }
 
+
 # Generates a general description of the documentation and help system.
 #
 local rule print-help-top ( )
@@ -268,6 +276,7 @@
     print.list-end ;
 }
 
+
 # Generate Jam/Boost.Jam command usage information.
 #
 local rule print-help-usage ( )
@@ -344,13 +353,14 @@
     print.list-end ;
 }
 
-# Generates description of options controlling the help system.
-# This automatically reads the options as all variables in the doc
-# module of the form ".option.*".
+
+# Generates description of options controlling the help system. This
+# automatically reads the options as all variables in the doc module of the form
+# ".option.*".
 #
 local rule print-help-options (
- module-name # The doc module.
- )
+ module-name # The doc module.
+)
 {
     print.section "Help Options"
         These are all the options available for enabling or disabling to control
@@ -376,15 +386,16 @@
     }
 }
 
-# Generate brief documentation for all the known items in the section
-# for a module. Possible sections are: "rules", and "variables".
+
+# Generate brief documentation for all the known items in the section for a
+# module. Possible sections are: "rules", and "variables".
 #
 local rule print-help-module-section (
- module # The module name.
- section # rules or variables.
- : section-head # The title of the section.
- section-description * # The detailed description of the section.
- )
+ module # The module name.
+ section # rules or variables.
+ : section-head # The title of the section.
+ section-description * # The detailed description of the section.
+)
 {
     if $($(module).$(section))
     {
@@ -410,12 +421,13 @@
     }
 }
 
+
 # Generate documentation for all possible modules. We attempt to list all known
 # modules together with a brief description of each.
 #
 local rule print-help-all (
     ignored # Usually the module name, but is ignored here.
- )
+)
 {
     print.section "Modules"
         "These are all the known modules. Use --help <module> to get more"
@@ -442,12 +454,13 @@
     }
 }
 
-# Generate documentation for a module. Basic information about
-# the module is generated.
+
+# Generate documentation for a module. Basic information about the module is
+# generated.
 #
 local rule print-help-module (
- module-name # The module to generate docs for.
- )
+ module-name # The module to generate docs for.
+)
 {
     # Print the docs.
     print.section "Module '$(module-name)'" $($(module-name).docs) ;
@@ -473,12 +486,13 @@
     }
 }
 
+
 # Generate documentation for a set of rules in a module.
 #
 local rule print-help-rules (
- module-name # Module of the rules.
- : name * # Optional list of rules to describe.
- )
+ module-name # Module of the rules.
+ : name * # Optional list of rules to describe.
+)
 {
     name ?= $($(module-name).rules) ;
     if [ set.intersection $(name) : $($(module-name).rules) $($(module-name).class-rules) ]
@@ -506,12 +520,13 @@
     }
 }
 
+
 # Generate documentation for a set of classes in a module.
 #
 local rule print-help-classes (
- module-name # Module of the classes.
- : name * # Optional list of classes to describe.
- )
+ module-name # Module of the classes.
+ : name * # Optional list of classes to describe.
+)
 {
     name ?= $($(module-name).classes) ;
     if [ set.intersection $(name) : $($(module-name).classes) ]
@@ -550,12 +565,13 @@
     }
 }
 
+
 # Generate documentation for a set of variables in a module.
 #
 local rule print-help-variables (
- module-name ? # Module of the variables.
- : name * # Optional list of variables to describe.
- )
+ module-name ? # Module of the variables.
+ : name * # Optional list of variables to describe.
+)
 {
     name ?= $($(module-name).variables) ;
     if [ set.intersection $(name) : $($(module-name).variables) ]
@@ -582,12 +598,13 @@
     }
 }
 
+
 # Generate documentation for a project.
 #
 local rule print-help-project (
     unused ?
- : jamfile * # The project Jamfile.
- )
+ : jamfile * # The project Jamfile.
+)
 {
     if $(jamfile<$(jamfile)>.docs[1])
     {
@@ -599,13 +616,14 @@
     }
 }
 
+
 # Generate documentation for a config file.
 #
 local rule print-help-config (
     unused ?
- : type # The type of configuration file user or site.
- config-file # The configuration Jamfile.
- )
+ : type # The type of configuration file user or site.
+ config-file # The configuration Jamfile.
+)
 {
     if $(jamfile<$(config-file)>.docs[1])
     {
@@ -617,17 +635,14 @@
     }
 }
 
-local rule __test__
-{
-}
 
 ws = " " ;
 
 # Extract the text from a block of comments.
 #
 local rule extract-comment (
- var # The name of the variable to extract from.
- )
+ var # The name of the variable to extract from.
+)
 {
     local comment = ;
     local line = $($(var)[1]) ;
@@ -643,11 +658,12 @@
     return $(comment) ;
 }
 
+
 # Extract s single line of Jam syntax, ignoring any comments.
 #
 local rule extract-syntax (
- var # The name of the variable to extract from.
- )
+ var # The name of the variable to extract from.
+)
 {
     local syntax = ;
     local line = $($(var)[1]) ;
@@ -664,12 +680,13 @@
     return $(syntax) ;
 }
 
-# Extract the next token, this is either a single Jam construct
-# or a comment as a single token.
+
+# Extract the next token, this is either a single Jam construct or a comment as
+# a single token.
 #
 local rule extract-token (
- var # The name of the variable to extract from.
- )
+ var # The name of the variable to extract from.
+)
 {
     local parts = ;
     while ! $(parts)
@@ -694,18 +711,19 @@
     return $(token) ;
 }
 
+
 # Scan for a rule declaration as the next item in the variable.
 #
 local rule scan-rule (
- syntax ? # The first part of the text which contains the rule declaration.
- : var # The name of the variable to extract from.
- )
+ syntax ? # The first part of the text which contains the rule declaration.
+ : var # The name of the variable to extract from.
+)
 {
     local rule-parts =
         [ MATCH "^[$(ws)]*(rule|local[$(ws)]*rule)[$(ws)]+([^$(ws)]+)[$(ws)]*(.*)" : $(syntax:J=" ") ] ;
     if $(rule-parts[1])
     {
- # mark as doc for rule.
+ # Mark as doc for rule.
         local rule-name = $(rule-parts[2]) ;
         if $(scope-name)
         {
@@ -716,10 +734,10 @@
         {
             set-rule-doc $(rule-name) $(module-name) $(is-local) : $(comment-block) ;
         }
- # parse args of rule.
+ # Parse args of rule.
         $(var) = $(rule-parts[3-]) $($(var)) ;
         set-rule-arguments-signature $(rule-name) $(module-name) : [ scan-rule-arguments $(var) ] ;
- # scan within this rules scope.
+ # Scan within this rules scope.
         local scope-level = [ extract-token $(var) ] ;
         local scope-name = $(rule-name) ;
         while $(scope-level)
@@ -743,11 +761,12 @@
     }
 }
 
+
 # Scan the arguments of a rule.
 #
 local rule scan-rule-arguments (
- var # The name of the variable to extract from.
- )
+ var # The name of the variable to extract from.
+)
 {
     local arg-syntax = ;
     local token = [ extract-token $(var) ] ;
@@ -801,11 +820,13 @@
     return $(arg-signature) ;
 }
 
+
 # Scan for a variable declaration.
+#
 local rule scan-variable (
- syntax ? # The first part of the text which contains the variable declaration.
- : var # The name of the variable to extract from.
- )
+ syntax ? # The first part of the text which contains the variable declaration.
+ : var # The name of the variable to extract from.
+)
 {
     # [1] = name, [2] = value(s)
     local var-parts =
@@ -833,10 +854,12 @@
     }
 }
 
+
 # Scan a class declaration.
+#
 local rule scan-class (
- syntax ? # The syntax text for the class declaration.
- )
+ syntax ? # The syntax text for the class declaration.
+)
 {
     # [1] = class?, [2] = name, [3] = superclass
     local class-parts =
@@ -847,24 +870,25 @@
     }
 }
 
+
 # Scan a module file for documentation comments. This also invokes any actions
 # assigned to the module. The actions are the rules that do the actual output of
 # the documentation. This rule is invoked as the header scan rule for the module
 # file.
 #
 rule scan-module (
- target # The module file.
- : text * # The text in the file, one item per line.
- : action * # Rule to call to output docs for the module.
- )
+ target # The module file.
+ : text * # The text in the file, one item per line.
+ : action * # Rule to call to output docs for the module.
+)
 {
     if $(.option.debug) { ECHO "HELP:" scanning module target '$(target)' ; }
     local module-name = $(target:B) ;
     local module-documented = ;
     local comment-block = ;
     local syntax-block = ;
- # This is a hack because we can't get the line of a file if it
- # happens to not have a new-line termination.
+ # This is a hack because we can not get the line of a file if it happens to
+ # not have a new-line termination.
     text += "}" ;
     while $(text)
     {
@@ -902,16 +926,19 @@
     }
 }
 
-# Import scan-module to global scope, so that it's available during
-# header scanning phase.
+
+# Import scan-module to global scope, so that it is available during header
+# scanning phase.
+#
 IMPORT $(__name__) : scan-module : : doc.scan-module ;
 
-# Read in a file using the SHELL builtin and return the
-# individual lines as would be done for header scanning.
+
+# Read in a file using the SHELL builtin and return the individual lines as
+# would be done for header scanning.
 #
 local rule read-file (
- file # The file to read in.
- )
+ file # The file to read in.
+)
 {
     file = [ path.native [ path.root [ path.make $(file) ] [ path.pwd ] ] ] ;
     if ! $(.file<$(file)>.lines)
@@ -940,15 +967,15 @@
     return $(.file<$(file)>.lines) ;
 }
 
-# Add a scan action to perform to generate the help documentation.
-# The action rule is passed the name of the module as the first argument.
-# The second argument(s) are optional and passed directly as specified
-# here.
+
+# Add a scan action to perform to generate the help documentation. The action
+# rule is passed the name of the module as the first argument. The second
+# argument(s) are optional and passed directly as specified here.
 #
 local rule do-scan (
- modules + # The modules to scan and perform the action on.
- : action * # The action rule, plus the secondary arguments to pass to the action rule.
- )
+ modules + # The modules to scan and perform the action on.
+ : action * # The action rule, plus the secondary arguments to pass to the action rule.
+)
 {
     if $(help-output) = text
     {

Modified: branches/CMake/release/tools/build/v2/util/indirect.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/indirect.jam (original)
+++ branches/CMake/release/tools/build/v2/util/indirect.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -27,6 +27,7 @@
 # expected to be the module in which to invoke the rule by the 'call' rule
 # below. Otherwise, the rule will be invoked in the module of this rule's
 # caller.
+#
 rule make ( rulename bound-args * : context ? )
 {
     context ?= [ CALLER_MODULE ] ;
@@ -40,6 +41,7 @@
 # supplied, the result will be invoked (by 'call', below) in the module of the
 # caller. Otherwise, frames > 1 specifies additional call frames to back up in
 # order to find the module context.
+#
 rule make-qualified ( rulename bound-args * : frames ? )
 {
     if [ MATCH $(.pattern) : $(rulename) ]
@@ -59,6 +61,7 @@
 
 
 # Returns the module name in which the given indirect rule will be invoked.
+#
 rule get-module ( [indirect-rule] x )
 {
     local m = [ MATCH $(.pattern) : $(x) ] ;
@@ -71,6 +74,7 @@
 
 
 # Returns the rulename that will be called when x is invoked.
+#
 rule get-rule ( [indirect-rule] x )
 {
     local m = [ MATCH $(.pattern) : $(x) ] ;
@@ -79,6 +83,7 @@
 
 
 # Invoke the given indirect-rule.
+#
 rule call ( [indirect-rule] r args * : * )
 {
     return [ modules.call-in [ get-module $(r) ] : [ get-rule $(r) ] $(args)

Modified: branches/CMake/release/tools/build/v2/util/numbers.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/numbers.jam (original)
+++ branches/CMake/release/tools/build/v2/util/numbers.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,7 +1,10 @@
-# Copyright 2001, 2002 Dave Abrahams
-# Copyright 2002, 2003 Vladimir Prus
-# Distributed under the Boost Software License, Version 1.0.
-# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+# Copyright 2001, 2002 Dave Abrahams
+# Copyright 2002, 2003 Vladimir Prus
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+
+import errors ;
+
 
 digits = 0 1 2 3 4 5 6 7 8 9 ;
 powers = 1 ;
@@ -10,9 +13,8 @@
 positive = $(digits[2-]) ;
 incr = $(positive[2-]) ;
 znatural = $(digits) ;
-zero-test = is zero ; # if $(zero-test[$(n)]) == "is" "zero", n == 0
+zero-test = is zero ; # if $(zero-test[$(n)]) == "is" "zero", n == 0
 
-import errors : * ;
 
 local rule extend ( )
 {
@@ -23,6 +25,19 @@
     znatural = $(digits)$(znatural) ;
 }
 
+
+rule trim-leading-zeroes ( value )
+{
+ local value2 = [ MATCH "^0(.*)$" : $(value) ] ;
+ while $(value2)
+ {
+ value = $(value2) ;
+ value2 = [ MATCH "^0(.*)$" : $(value) ] ;
+ }
+ return $(value:E="") ;
+}
+
+
 rule check ( numbers * )
 {
     for local n in $(numbers)
@@ -30,23 +45,24 @@
         switch $(n)
         {
             case *[^0-9]* :
- error $(n) "in" $(numbers) : is not a number ;
+ errors.error $(n) "in" $(numbers) : is not a number ;
         }
     }
 }
 
+
 rule increment ( number )
 {
     return [ CALC $(number) + 1 ] ;
 }
 
+
 rule decrement ( number )
 {
- # Previous rule did not allow decrementing zero.
- # Is that what we want?
     return [ CALC $(number) - 1 ] ;
 }
 
+
 rule range ( start finish ? : step ? )
 {
     if ! $(finish)
@@ -55,7 +71,7 @@
         start = 1 ;
     }
     step ?= 1 ;
-
+
     check $(start) $(finish) $(step) ;
 
     if $(finish) != 0
@@ -64,7 +80,7 @@
         {
             extend ;
         }
-
+
         if $(step) = 1
         {
             return $(positive[$(start)-$(finish)]) ;
@@ -84,26 +100,31 @@
     }
 }
 
+
 rule less ( n1 n2 )
 {
     check $(n1) $(n2) ;
- # avoid messy 0 case by appending 1
+ n1 = [ trim-leading-zeroes $(n1) ] ;
+ n2 = [ trim-leading-zeroes $(n2) ] ;
+
+ # Avoid messy 0 case by appending 1.
     local l1 = [ range 2 [ log10 $(n1)1 ] ] ;
     local l2 = [ range 2 [ log10 $(n2)1 ] ] ;
-
- # number of digits mismatch?
+
+ # Number of digits mismatch?
     if ( $(l1) < $(l2) ) || ( ( $(l1) = $(l2) ) && $(n1) < $(n2) )
     {
         return true ;
     }
 }
 
+
 rule log10 ( number )
 {
     switch $(number)
     {
- case *[^0-9]* : error $(number) is not a number ;
- case 0 : error can't take log of zero ;
+ case *[^0-9]* : errors.error $(number) is not a number ;
+ case 0 : errors.error can't take log of zero ;
         case [1-9] : return 0 ;
         case [1-9]? : return 1 ;
         case [1-9]?? : return 2 ;
@@ -123,23 +144,23 @@
             {
                 chars = $(chars[2-]) ;
             }
-
             if ! $(chars)
             {
- error can't take log of zero ;
+ errors.error can't take log of zero ;
             }
             else
             {
- return [ sequence.length $(chars) ] ;
+ return [ decrement [ sequence.length $(chars) ] ] ;
             }
         }
     }
 }
 
+
 rule __test__ ( )
 {
     import assert ;
-
+
     assert.result 1 : increment 0 ;
     assert.result 2 : increment 1 ;
     assert.result 1 : decrement 2 ;
@@ -149,10 +170,9 @@
     assert.result 99 : increment 98 ;
     assert.result 99 : decrement 100 ;
     assert.result 100 : increment 99 ;
- # This just makes debugging output too large
- # assert.result 1000 : increment 999 ;
- # assert.result 999 : decrement 1000 ;
-
+ assert.result 999 : decrement 1000 ;
+ assert.result 1000 : increment 999 ;
+
     assert.result 1 2 3 : range 3 ;
     assert.result 1 2 3 4 5 6 7 8 9 10 11 12 : range 12 ;
     assert.result 3 4 5 6 7 8 9 10 11 : range 3 11 ;
@@ -160,40 +180,53 @@
     assert.result 1 4 7 10 : range 10 : 3 ;
     assert.result 2 4 6 8 10 : range 2 10 : 2 ;
     assert.result 25 50 75 100 : range 25 100 : 25 ;
-
- assert.true less 1 2 ;
- assert.true less 1 12 ;
- assert.true less 1 21 ;
+
+ assert.result 0 : trim-leading-zeroes 0 ;
+ assert.result 1234 : trim-leading-zeroes 1234 ;
+ assert.result 123456 : trim-leading-zeroes 0000123456 ;
+ assert.result 10000123456 : trim-leading-zeroes 10000123456 ;
+ assert.result 10000 : trim-leading-zeroes 10000 ;
+ assert.result 10000 : trim-leading-zeroes 00010000 ;
+
+ assert.true less 1 2 ;
+ assert.true less 1 12 ;
+ assert.true less 1 21 ;
+ assert.true less 005 217 ;
     assert.false less 0 0 ;
-
- # TEMPORARY disabled, because nested "try"/"catch" do not work, I don't the
- # time to fix that right now.
- if $(0)
- {
+ assert.false less 03 3 ;
+ assert.false less 3 03 ;
+ assert.true less 005 217 ;
+ assert.true less 0005 217 ;
+ assert.true less 5 00217 ;
+
+ # TEMPORARY disabled, because nested "try"/"catch" do not work and I do no
+ # have the time to fix that right now.
+ if $(0)
+ {
     try ;
     {
         decrement 0 ;
     }
     catch can't decrement zero! ;
-
+
     try ;
     {
         check foo ;
     }
     catch : not a number ;
-
+
     try ;
     {
         increment foo ;
     }
     catch : not a number ;
-
+
     try ;
     {
         log10 0 ;
     }
     catch can't take log of zero ;
-
+
     try ;
     {
         log10 000 ;
@@ -201,14 +234,18 @@
     catch can't take log of zero ;
 
     }
-
+
     assert.result 0 : log10 1 ;
     assert.result 0 : log10 9 ;
     assert.result 1 : log10 10 ;
     assert.result 1 : log10 99 ;
+ assert.result 2 : log10 100 ;
+ assert.result 2 : log10 101 ;
     assert.result 2 : log10 125 ;
- assert.result 11 : log10 12345678901 ;
-
+ assert.result 2 : log10 999 ;
+ assert.result 3 : log10 1000 ;
+ assert.result 10 : log10 12345678901 ;
+
     for local x in [ range 75 110 : 5 ]
     {
         for local y in [ range $(x) 111 : 3 ]
@@ -219,7 +256,7 @@
             }
         }
     }
-
+
     for local x in [ range 90 110 : 2 ]
     {
         for local y in [ range 80 $(x) : 4 ]

Modified: branches/CMake/release/tools/build/v2/util/os.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/os.jam (original)
+++ branches/CMake/release/tools/build/v2/util/os.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -15,7 +15,6 @@
     return [ modules.peek .ENVIRON : $(variable-names) ] ;
 }
 
-
 .name = [ modules.peek : OS ] ;
 .platform = [ modules.peek : OSPLAT ] ;
 .version = [ modules.peek : OSVER ] ;
@@ -24,7 +23,7 @@
 local rule constant ( c : os ? )
 {
     os ?= $(.name) ;
- # First look for platform-specific name, then general value
+ # First look for a platform-specific name, then the general value.
     local variables = .$(c)-$(os) .$(c) ;
     local result = $($(variables)) ;
     return $(result[1]) ;

Modified: branches/CMake/release/tools/build/v2/util/path.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/path.jam (original)
+++ branches/CMake/release/tools/build/v2/util/path.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,22 +6,23 @@
 # (See accompanying file LICENSE_1_0.txt or copy at
 # http://www.boost.org/LICENSE_1_0.txt)
 
-# Performs various path manipulations. Paths are always in a 'normalized'
-# representation. In it, a path may be either:
+# Performs various path manipulations. Paths are always in a 'normalized'
+# representation. In it, a path may be either:
 #
 # - '.', or
 #
-# - ['/'] [ ( '..' '/' )* (token '/')* token ]
+# - ['/'] [ ( '..' '/' )* (token '/')* token ]
 #
-# In plain english, path can be rooted, '..' elements are allowed only
-# at the beginning, and it never ends in slash, except for path consisting
-# of slash only.
+# In plain english, path can be rooted, '..' elements are allowed only at the
+# beginning, and it never ends in slash, except for path consisting of slash
+# only.
 
 import errors ;
 import modules ;
 import regex ;
 import sequence ;
 import set ;
+import version ;
 
 
 os = [ modules.peek : OS ] ;
@@ -35,7 +36,8 @@
     }
 }
 
-# Converts the native path into normalized form.
+
+# Converts the native path into normalized form.
 #
 rule make ( native )
 {
@@ -43,7 +45,7 @@
 }
 
 
-# Builds native representation of the path.
+# Builds native representation of the path.
 #
 rule native ( path )
 {
@@ -51,7 +53,7 @@
 }
 
 
-# Tests if a path is rooted.
+# Tests if a path is rooted.
 #
 rule is-rooted ( path )
 {
@@ -59,7 +61,7 @@
 }
 
 
-# Tests if a path has a parent.
+# Tests if a path has a parent.
 #
 rule has-parent ( path )
 {
@@ -74,7 +76,7 @@
 }
 
 
-# Returns the path without any directory components.
+# Returns the path without any directory components.
 #
 rule basename ( path )
 {
@@ -82,7 +84,7 @@
 }
 
 
-# Returns parent directory of the path. If no parent exists, error is issued.
+# Returns parent directory of the path. If no parent exists, error is issued.
 #
 rule parent ( path )
 {
@@ -94,8 +96,8 @@
         }
         else
         {
- # Strip everything at the end of path up to and including
- # the last slash
+ # Strip everything at the end of path up to and including the last
+ # slash.
             local result = [ regex.match "((.*)/)?([^/]+)" : $(path) : 2 3 ] ;
 
             # Did we strip what we shouldn't?
@@ -127,8 +129,8 @@
 }
 
 
-# Returns path2 such that "[ join path path2 ] = .".
-# The path may not contain ".." element or be rooted.
+# Returns path2 such that "[ join path path2 ] = .". The path may not contain
+# ".." element or be rooted.
 #
 rule reverse ( path )
 {
@@ -149,31 +151,12 @@
 }
 
 
-# Auxillary rule: does all the semantic of 'join', except for error cheching.
-# The error checking is separated because this rule is recursive, and I don't
-# like the idea of checking the same input over and over.
-#
-local rule join-imp ( elements + )
-{
- local result = ;
- if ! $(elements[1])
- {
- result = [ NORMALIZE_PATH "/" "$(elements[2-])" ] ;
- }
- else
- {
- result = [ NORMALIZE_PATH "$(elements)" ] ;
- }
- return $(result) ;
-}
-
-
-# Contanenates the passed path elements. Generates an error if
-# any element other than the first one is rooted.
+# Concatenates the passed path elements. Generates an error if any element other
+# than the first one is rooted. Skips any empty or undefined path elements.
 #
 rule join ( elements + )
 {
- if ! $(elements[2])
+ if ! $(elements[2-])
     {
         return $(elements[1]) ;
     }
@@ -183,27 +166,50 @@
         {
             if [ is-rooted $(e) ]
             {
- errors.error only first element may be rooted ;
+ errors.error only the first element may be rooted ;
+ }
+ }
+ if [ version.check-jam-version 3 1 17 ]
+ {
+ return [ NORMALIZE_PATH "$(elements)" ] ;
+ }
+ else
+ {
+ # Boost Jam prior to version 3.1.17 had problems with its
+ # NORMALIZE_PATH rule in case you passed it a leading backslash
+ # instead of a slash, in some cases when you sent it an empty
+ # initial path element and possibly some others. At least some of
+ # those cases were being hit and relied upon when calling this rule
+ # from the path.make-NT rule.
+ if ! $(elements[1]) && $(elements[2])
+ {
+ return [ NORMALIZE_PATH "/" "$(elements[2-])" ] ;
+ }
+ else
+ {
+ return [ NORMALIZE_PATH "$(elements)" ] ;
             }
         }
- return [ join-imp $(elements) ] ;
     }
 }
 
 
-# If 'path' is relative, it is rooted at 'root'. Otherwise, it's unchanged.
+# If 'path' is relative, it is rooted at 'root'. Otherwise, it is unchanged.
 #
 rule root ( path root )
 {
- if [ is-rooted $(path) ] {
+ if [ is-rooted $(path) ]
+ {
         return $(path) ;
- } else {
+ }
+ else
+ {
         return [ join $(root) $(path) ] ;
     }
 }
 
 
-# Returns the current working directory.
+# Returns the current working directory.
 #
 rule pwd ( )
 {
@@ -219,19 +225,20 @@
 }
 
 
-# Returns the list of files matching the given pattern in the
-# specified directory. Both directories and patterns are
-# supplied as portable paths. Each pattern should be non-absolute
-# path, and can't contain "." or ".." elements. Each slash separated
-# element of pattern can contain the following special characters:
-# - '?', which match any character
-# - '*', which matches arbitrary number of characters.
-# A file $(d)/e1/e2/e3 (where 'd' is in $(dirs)) matches pattern p1/p2/p3
-# if and only if e1 matches p1, e2 matches p2 and so on.
-#
-# For example:
-# [ glob . : *.cpp ]
-# [ glob . : */build/Jamfile ]
+# Returns the list of files matching the given pattern in the specified
+# directory. Both directories and patterns are supplied as portable paths. Each
+# pattern should be non-absolute path, and can't contain "." or ".." elements.
+# Each slash separated element of pattern can contain the following special
+# characters:
+# - '?', which match any character
+# - '*', which matches arbitrary number of characters.
+# A file $(d)/e1/e2/e3 (where 'd' is in $(dirs)) matches pattern p1/p2/p3 if and
+# only if e1 matches p1, e2 matches p2 and so on.
+#
+# For example:
+# [ glob . : *.cpp ]
+# [ glob . : */build/Jamfile ]
+#
 rule glob ( dirs * : patterns + : exclude-patterns * )
 {
     local result ;
@@ -262,12 +269,11 @@
 }
 
 
-# Recursive version of GLOB. Builds the glob of files while
-# also searching in the subdirectories of the given roots. An
-# optional set of exclusion patterns will filter out the
-# matching entries from the result. The exclusions also apply
-# to the subdirectory scanning, such that directories that
-# match the exclusion patterns will not be searched.
+# Recursive version of GLOB. Builds the glob of files while also searching in
+# the subdirectories of the given roots. An optional set of exclusion patterns
+# will filter out the matching entries from the result. The exclusions also
+# apply to the subdirectory scanning, such that directories that match the
+# exclusion patterns will not be searched.
 #
 rule glob-tree ( roots * : patterns + : exclude-patterns * )
 {
@@ -302,7 +308,7 @@
 }
 
 
-# Returns true is the specified file exists.
+# Returns true is the specified file exists.
 #
 rule exists ( file )
 {
@@ -311,9 +317,9 @@
 NATIVE_RULE path : exists ;
 
 
-# Find out the absolute name of path and returns the list of all the parents,
-# starting with the immediate one. Parents are returned as relative names.
-# If 'upper_limit' is specified, directories above it will be pruned.
+# Find out the absolute name of path and returns the list of all the parents,
+# starting with the immediate one. Parents are returned as relative names. If
+# 'upper_limit' is specified, directories above it will be pruned.
 #
 rule all-parents ( path : upper_limit ? : cwd ? )
 {
@@ -349,8 +355,8 @@
 }
 
 
-# Search for 'pattern' in parent directories of 'dir', up till and including
-# 'upper_limit', if it is specified, or till the filesystem root otherwise.
+# Search for 'pattern' in parent directories of 'dir', up till and including
+# 'upper_limit', if it is specified, or till the filesystem root otherwise.
 #
 rule glob-in-parents ( dir : patterns + : upper-limit ? )
 {
@@ -366,8 +372,8 @@
 }
 
 
-# Assuming 'child' is a subdirectory of 'parent', return the relative
-# path from 'parent' to 'child'
+# Assuming 'child' is a subdirectory of 'parent', return the relative path from
+# 'parent' to 'child'.
 #
 rule relative ( child parent )
 {
@@ -429,8 +435,9 @@
 }
 
 
-# Returns the list of paths which are used by the operating system
-# for looking up programs
+# Returns the list of paths which are used by the operating system for looking
+# up programs.
+#
 rule programs-path ( )
 {
     local result ;
@@ -446,27 +453,38 @@
 }
 
 
+# Converts native Windows paths into our internal canonic path representation.
+# Supports 'invalid' paths containing multiple successive path separator
+# characters.
+#
+# TODO: Check and if needed add support for Windows 'X:file' path format where
+# the file is located in the current folder on drive X.
+#
 rule make-NT ( native )
 {
- local tokens = [ regex.split $(native) "[/\\]" ] ;
     local result ;
 
- # Handle paths ending with slashes
- if $(tokens[-1]) = ""
+ if [ version.check-jam-version 3 1 17 ]
     {
- tokens = $(tokens[1--2]) ; # discard the empty element
+ result = [ NORMALIZE_PATH $(native) ] ;
     }
-
- result = [ path.join $(tokens) ] ;
-
- if [ regex.match "(^.:)" : $(native) ]
+ else
     {
- result = /$(result) ;
+ # This old implementation is really fragile due to a not so clear way
+ # NORMALIZE_PATH rule worked in Boost.Jam versions prior to 3.1.17. E.g.
+ # path.join would mostly ignore empty path elements but would root the
+ # joined path in case the initial two path elements were empty or some
+ # similar accidental wierdness.
+ result = [ path.join [ regex.split $(native) "[/\\]" ] ] ;
     }
 
- if $(native) = ""
+ # We need to add an extra '/' in front in case this is a rooted Windows path
+ # starting with a drive letter and not a path separator character since the
+ # builtin NORMALIZE_PATH rule has no knowledge of this leading drive letter
+ # and treats it as a regular folder name.
+ if [ regex.match "(^.:)" : $(native) ]
     {
- result = "." ;
+ result = /$(result) ;
     }
 
     return $(result) ;
@@ -492,7 +510,7 @@
 rule make-UNIX ( native )
 {
     # VP: I have no idea now 'native' can be empty here! But it can!
- if $(native) = ""
+ if ! $(native)
     {
         errors.error "Empty path passed to 'make-UNIX'" ;
     }
@@ -518,16 +536,17 @@
 rule native-CYGWIN ( path )
 {
     local result = $(path) ;
- if [ regex.match "(^/.:)" : $(path) ] # win absolute
+ if [ regex.match "(^/.:)" : $(path) ] # Windows absolute path.
     {
- result = [ MATCH "^/?(.*)" : $(path) ] ; # remove leading '/'
+ result = [ MATCH "^/?(.*)" : $(path) ] ; # Remove leading '/'.
     }
     return [ native-UNIX $(result) ] ;
 }
 
 
-# split-VMS: splits input native path into
-# device dir file (each part is optional),
+# split-path-VMS: splits input native path into device dir file (each part is
+# optional).
+#
 # example:
 #
 # dev:[dir]file.c => dev: [dir] file.c
@@ -545,12 +564,11 @@
 
 # Converts a native VMS path into a portable path spec.
 #
-# Does not handle current-device absolute paths such
-# as "[dir]File.c" as it is not clear how to represent
-# them in the portable path notation.
+# Does not handle current-device absolute paths such as "[dir]File.c" as it is
+# not clear how to represent them in the portable path notation.
 #
-# Adds a trailing dot (".") to the file part if no extension
-# is present (helps when converting it back into native path).
+# Adds a trailing dot (".") to the file part if no extension is present (helps
+# when converting it back into native path).
 #
 rule make-VMS ( native )
 {
@@ -606,7 +624,7 @@
         if ! [ MATCH (\\.) : $(file) ]
         {
             #
- # Always add "." to end of non-extension file
+ # Always add "." to end of non-extension file.
             #
             file = $(file). ;
         }
@@ -621,8 +639,8 @@
 
 # Converts a portable path spec into a native VMS path.
 #
-# Relies on having at least one dot (".") included in the file
-# name to be able to differentiate it ftom the directory part.
+# Relies on having at least one dot (".") included in the file name to be able
+# to differentiate it from the directory part.
 #
 rule native-VMS ( path )
 {
@@ -767,12 +785,47 @@
 
     assert.result "foo/bar/giz" : make "foo/bar/giz" ;
     assert.result "foo/bar/giz" : make "foo\\bar\\giz" ;
+ assert.result "foo" : make "foo/" ;
+ assert.result "foo" : make "foo\\" ;
     assert.result "foo" : make "foo/." ;
     assert.result "foo" : make "foo/bar/.." ;
+ assert.result "foo" : make "foo/bar/../" ;
+ assert.result "foo" : make "foo/bar/..\\" ;
     assert.result "foo/bar" : make "foo/././././bar" ;
     assert.result "/foo" : make "\\foo" ;
     assert.result "/D:/My Documents" : make "D:\\My Documents" ;
     assert.result "/c:/boost/tools/build/new/project.jam" : make "c:\\boost\\tools\\build\\test\\..\\new\\project.jam" ;
+
+ # Test processing 'invalid' paths containing multiple successive path
+ # separators.
+ assert.result "foo" : make "foo//" ;
+ assert.result "foo" : make "foo///" ;
+ assert.result "foo" : make "foo\\\\" ;
+ assert.result "foo" : make "foo\\\\\\" ;
+ assert.result "/foo" : make "//foo" ;
+ assert.result "/foo" : make "///foo" ;
+ assert.result "/foo" : make "\\\\foo" ;
+ assert.result "/foo" : make "\\\\\\foo" ;
+ assert.result "/foo" : make "\\/\\/foo" ;
+ assert.result "foo/bar" : make "foo//\\//\\\\bar//\\//\\\\\\//\\//\\\\" ;
+ assert.result "foo" : make "foo/bar//.." ;
+ assert.result "foo/bar" : make "foo/bar/giz//.." ;
+ assert.result "foo/giz" : make "foo//\\//\\\\bar///\\\\//\\\\////\\/..///giz\\//\\\\\\//\\//\\\\" ;
+ assert.result "../../../foo" : make "..///.//..///.//..////foo///" ;
+
+ # Test processing 'invalid' rooted paths with too many '..' path elements
+ # that would place them before the root.
+ assert.result : make "/.." ;
+ assert.result : make "/../" ;
+ assert.result : make "/../." ;
+ assert.result : make "/.././" ;
+ assert.result : make "/foo/../bar/giz/.././././../../." ;
+ assert.result : make "/foo/../bar/giz/.././././../.././" ;
+ assert.result : make "//foo/../bar/giz/.././././../../." ;
+ assert.result : make "//foo/../bar/giz/.././././../.././" ;
+ assert.result : make "\\\\foo/../bar/giz/.././././../../." ;
+ assert.result : make "\\\\foo/../bar/giz/.././././../.././" ;
+ assert.result : make "/..///.//..///.//..////foo///" ;
 
     assert.result "foo\\bar\\giz" : native "foo/bar/giz" ;
     assert.result "foo" : native "foo" ;

Modified: branches/CMake/release/tools/build/v2/util/print.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/print.jam (original)
+++ branches/CMake/release/tools/build/v2/util/print.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,22 +16,22 @@
 # The current output target. Defaults to console.
 output-target = console ;
 
-# The current output type. Defaults to plain.
+# The current output type. Defaults to plain. Other possible values are "html".
 output-type = plain ;
 
 # Whitespace.
 .whitespace = [ string.whitespace ] ;
 
-# Set the target and type of output to generate. This sets both
-# the destination output and the type of docs to generate to that
-# output. The target can be either a file or "console" for echoing
-# to the console. If the type of output is not specified it defaults
-# to plain text.
+
+# Set the target and type of output to generate. This sets both the destination
+# output and the type of docs to generate to that output. The target can be
+# either a file or "console" for echoing to the console. If the type of output
+# is not specified it defaults to plain text.
 #
 rule output (
- target # The target file or device; file or "console".
- type ? # The type of output; "plain", or "html".
- )
+ target # The target file or device; file or "console".
+ type ? # The type of output; "plain" or "html".
+)
 {
     type ?= plain ;
     if $(output-target) != $(target)
@@ -57,15 +57,14 @@
     }
 }
 
-# Generate a section with a description. The type of output can be
-# controlled by the value of the 'output-type' variable. If not set
-# it defaults to 'console' indicating immediate display to the console.
-# Other possible values are: 'html-file'.
+
+# Generate a section with a description. The type of output can be controlled by
+# the value of the 'output-type' variable.
 #
 rule section (
- name # The name of the section.
- description * # A number of description lines.
- )
+ name # The name of the section.
+ description * # A number of description lines.
+)
 {
     if $(output-type) = plain
     {
@@ -165,10 +164,9 @@
     }
 }
 
-# Generate the start of a list of items. The type of output can be
-# controlled by the value of the 'output-type' variable. If not set
-# it defaults to 'console' indicating immediate display to the console.
-# Other possible values are: 'html-file'.
+
+# Generate the start of a list of items. The type of output can be controlled by
+# the value of the 'output-type' variable.
 #
 rule list-start ( )
 {
@@ -181,14 +179,13 @@
     }
 }
 
-# Generate an item in a list. The type of output can be
-# controlled by the value of the 'output-type' variable. If not set
-# it defaults to 'console' indicating immediate display to the console.
-# Other possible values are: 'html-file'.
+
+# Generate an item in a list. The type of output can be controlled by the value
+# of the 'output-type' variable.
 #
 rule list-item (
- item + # The item to list.
- )
+ item + # The item to list.
+)
 {
     if $(output-type) = plain
     {
@@ -200,10 +197,9 @@
     }
 }
 
-# Generate the end of a list of items. The type of output can be
-# controlled by the value of the 'output-type' variable. If not set
-# it defaults to 'console' indicating immediate display to the console.
-# Other possible values are: 'html-file'.
+
+# Generate the end of a list of items. The type of output can be controlled by
+# the value of the 'output-type' variable.
 #
 rule list-end ( )
 {
@@ -217,13 +213,14 @@
     }
 }
 
-# Split the given text into separate lines, word-wrapping to a margin.
-# The default margin is 78 characters.
+
+# Split the given text into separate lines, word-wrapping to a margin. The
+# default margin is 78 characters.
 #
 rule split-at-words (
- text + # The text to split.
- : margin ? # An optional margin, default is 78.
- )
+ text + # The text to split.
+ : margin ? # An optional margin, default is 78.
+)
 {
     local lines = ;
     text = [ string.words $(text:J=" ") ] ;
@@ -264,15 +261,16 @@
     return $(lines) ;
 }
 
-# Generate a set of fixed lines. Each single item passed in is
-# output on a separate line. For console this just echos each line,
-# but for html this will split them with <br>.
+
+# Generate a set of fixed lines. Each single item passed in is output on a
+# separate line. For console this just echos each line, but for html this will
+# split them with <br>.
 #
 rule lines (
- text * # The lines of text.
- : indent ? # Optional indentation prepended to each line after the first one.
- outdent ? # Optional indentation to prepend to the first line.
- )
+ text * # The lines of text.
+ : indent ? # Optional indentation prepended to each line after the first one.
+ outdent ? # Optional indentation to prepend to the first line.
+)
 {
     text ?= "" ;
     indent ?= "" ;
@@ -296,19 +294,20 @@
     }
 }
 
-# Output text directly to the current target. When doing output
-# to a file, one can indicate if the text should be output to
-# "prefix" it, as the "body" (default), or "suffix" of the file. This is
-# independant of the actual execution order of the text rule. This rule
-# invokes a singular action, one action only once, which does the
-# build of the file. Therefore actions on the target outside of this
-# rule will happen entirely before and/or after all output using this rule.
+
+# Output text directly to the current target. When doing output to a file, one
+# can indicate if the text should be output to "prefix" it, as the "body"
+# (default), or "suffix" of the file. This is independant of the actual
+# execution order of the text rule. This rule invokes a singular action, one
+# action only once, which does the build of the file. Therefore actions on the
+# target outside of this rule will happen entirely before and/or after all
+# output using this rule.
 #
 rule text (
- strings * # The strings of text to output.
- : overwrite ? # true to overwrite the output (if it is a file)
- : prefix-body-suffix ? # Indication to output prefix, body, or suffix (for a file).
- )
+ strings * # The strings of text to output.
+ : overwrite ? # true to overwrite the output (if it is a file)
+ : prefix-body-suffix ? # Indication to output prefix, body, or suffix (for a file).
+)
 {
     prefix-body-suffix ?= body ;
     if $(output-target) = console
@@ -350,21 +349,24 @@
         $($(output-target).text-suffix) ;
 }
 
+
 # Outputs the text to the current targets, after word-wrapping it.
+#
 rule wrapped-text ( text + )
 {
     local lines = [ split-at-words $(text) ] ;
     text $(lines) ;
 }
 
-# Escapes text into html/xml printable equivalents.
-# Does not know about tags and therefore tags fed into
-# this will also be escaped. Currently escapes space, "<", ">", and "&".
+
+# Escapes text into html/xml printable equivalents. Does not know about tags and
+# therefore tags fed into this will also be escaped. Currently escapes space,
+# "<", ">", and "&".
 #
 rule escape-html (
- text + # The text to escape.
- : space ? # What to replace spaces with, defaults to " ".
- )
+ text + # The text to escape.
+ : space ? # What to replace spaces with, defaults to " ".
+)
 {
     local html-text = ;
     while $(text)
@@ -383,24 +385,26 @@
     return $(html-text) ;
 }
 
-# Outputs the text strings collected by the text rule to the output
-# file.
+
+# Outputs the text strings collected by the text rule to the output file.
 #
 actions quietly text-action
 {
     @($(STDOUT):E=$(text-content:J=$(nl))) $(text-redirect) "$(<)"
 }
 
-local rule __test__ ( )
+
+rule __test__ ( )
 {
     import assert ;
     
- assert.result one two three : split-at-words one two three : 5 ;
+ assert.result one two three : split-at-words one two three : 5 ;
     assert.result "one two" three : split-at-words one two three : 8 ;
     assert.result "one two" three : split-at-words one two three : 9 ;
     assert.result "one two three" : split-at-words one two three ;
- # VP, 2004-12-03 The following test fails for some reason,
- # so commenting it out.
+
+ # VP, 2004-12-03 The following test fails for some reason, so commenting it
+ # out.
     #assert.result "one&nbsp;two&nbsp;three" "&amp;&lt;&gt;" :
     # escape-html "one two three" "&<>" ;
 }

Modified: branches/CMake/release/tools/build/v2/util/sequence.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/sequence.jam (original)
+++ branches/CMake/release/tools/build/v2/util/sequence.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,15 +8,17 @@
 import numbers ;
 import modules ;
 
-# Note that algorithms in this module execute largely in the caller's
-# module namespace, so that local rules can be used as function
-# objects. Also note that most predicates can be multi-element
-# lists. In that case, all but the first element are prepended to the
-# first argument which is passed to the rule named by the first
-# element.
 
-# Return the elements e of $(sequence) for which [ $(predicate) e ]
-# has a non-null value.
+# Note that algorithms in this module execute largely in the caller's module
+# namespace, so that local rules can be used as function objects. Also note that
+# most predicates can be multi-element lists. In that case, all but the first
+# element are prepended to the first argument which is passed to the rule named
+# by the first element.
+
+
+# Return the elements e of $(sequence) for which [ $(predicate) e ] has a
+# non-null value.
+#
 rule filter ( predicate + : sequence * )
 {
     local caller = [ CALLER_MODULE ] ;
@@ -32,8 +34,10 @@
     return $(result) ;
 }
 
-# return a new sequence consisting of [ $(function) $(e) ] for each
-# element e of $(sequence).
+
+# Return a new sequence consisting of [ $(function) $(e) ] for each element e of
+# $(sequence).
+#
 rule transform ( function + : sequence * )
 {
     local caller = [ CALLER_MODULE ] ;
@@ -46,6 +50,7 @@
     return $(result) ;
 }
 
+
 rule reverse ( s * )
 {
     local r ;
@@ -65,7 +70,9 @@
     }
 }
 
-# insertion-sort s using the BinaryPredicate ordered.
+
+# Insertion-sort s using the BinaryPredicate ordered.
+#
 rule insertion-sort ( s * : ordered * )
 {
     if ! $(ordered)
@@ -111,14 +118,17 @@
     }
 }
 
-# merge two ordered sequences using the BinaryPredicate ordered.
+
+# Merge two ordered sequences using the BinaryPredicate ordered.
+#
 rule merge ( s1 * : s2 * : ordered * )
 {
     ordered ?= sequence.less ;
     local result__ ;
     local caller = [ CALLER_MODULE ] ;
 
- while $(s1) && $(s2) {
+ while $(s1) && $(s2)
+ {
         if [ modules.call-in $(caller) : $(ordered) $(s1[1]) $(s2[1]) ]
         {
             result__ += $(s1[1]) ;
@@ -141,15 +151,19 @@
     return $(result__) ;
 }
 
-# join the elements of s into one long string. If joint is supplied,
-# it is used as a separator.
+
+# Join the elements of s into one long string. If joint is supplied, it is used
+# as a separator.
+#
 rule join ( s * : joint ? )
 {
     joint ?= "" ;
     return $(s:J=$(joint)) ;
 }
 
+
 # Find the length of any sequence.
+#
 rule length ( s * )
 {
     local result = 0 ;
@@ -160,6 +174,7 @@
     return $(result) ;
 }
 
+
 rule unique ( list * : stable ? )
 {
     local result ;
@@ -188,8 +203,10 @@
     return $(result) ;
 }
 
-# Returns the maximum number in 'elements'. Uses 'ordered' for comparisons,
-# or 'numbers.less' is none is provided.
+
+# Returns the maximum number in 'elements'. Uses 'ordered' for comparisons, or
+# 'numbers.less' is none is provided.
+#
 rule max-element ( elements + : ordered ? )
 {
     ordered ?= numbers.less ;
@@ -205,8 +222,10 @@
     return $(max) ;
 }
 
-# Returns all of 'elements' for which corresponding element in parallel
-# list 'rank' is equal to the maximum value in 'rank'.
+
+# Returns all of 'elements' for which corresponding element in parallel list
+# 'rank' is equal to the maximum value in 'rank'.
+#
 rule select-highest-ranked ( elements * : ranks * )
 {
     if $(elements)
@@ -228,9 +247,9 @@
 NATIVE_RULE sequence : select-highest-ranked ;
 
 
-local rule __test__ ( )
+rule __test__ ( )
 {
- # use a unique module so we can test the use of local rules.
+ # Use a unique module so we can test the use of local rules.
     module sequence.__test__
     {
         import assert ;
@@ -244,10 +263,9 @@
             }
         }
 
- assert.result 4 6 4 2 8
- : sequence.filter is-even : 1 4 6 3 4 7 2 3 8 ;
+ assert.result 4 6 4 2 8 : sequence.filter is-even : 1 4 6 3 4 7 2 3 8 ;
 
- # test that argument binding works
+ # Test that argument binding works.
         local rule is-equal-test ( x y )
         {
             if $(x) = $(y)
@@ -302,18 +320,15 @@
         local p2 = x ;
         for local i in 1 2 3 4 5 6 7 8
         {
- p2 = $(p2) $(p2) ;
+ p2 = $(p2) $(p2) ;
         }
         assert.result 256 : sequence.length $(p2) ;
 
- assert.result 1 2 3 4 5
- : sequence.unique 1 2 3 2 4 3 3 5 5 5 ;
+ assert.result 1 2 3 4 5 : sequence.unique 1 2 3 2 4 3 3 5 5 5 ;
                 
- assert.result 5
- : sequence.max-element 1 3 5 0 4 ;
+ assert.result 5 : sequence.max-element 1 3 5 0 4 ;
         
- assert.result e-3 h-3
- : sequence.select-highest-ranked e-1 e-3 h-3 m-2 : 1 3 3 2 ;
+ assert.result e-3 h-3 : sequence.select-highest-ranked e-1 e-3 h-3 m-2 : 1 3 3 2 ;
         
         assert.result 7 6 5 4 3 2 1 : sequence.reverse 1 2 3 4 5 6 7 ;
     }

Modified: branches/CMake/release/tools/build/v2/util/set.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/set.jam (original)
+++ branches/CMake/release/tools/build/v2/util/set.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,17 +1,17 @@
-# Copyright 2001, 2002 Dave Abrahams
-# Copyright 2003 Vladimir Prus
-# Distributed under the Boost Software License, Version 1.0.
-# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
-
-# difference
-# returns the elements of B that are not in A
-rule difference ( B * : A * )
+# Copyright 2001, 2002 Dave Abrahams
+# Copyright 2003 Vladimir Prus
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+
+
+# Returns the elements of set1 that are not in set2.
+#
+rule difference ( set1 * : set2 * )
 {
     local result = ;
- local element ;
- for element in $(B)
+ for local element in $(set1)
     {
- if ! ( $(element) in $(A) )
+ if ! ( $(element) in $(set2) )
         {
             result += $(element) ;
         }
@@ -21,9 +21,9 @@
 
 NATIVE_RULE set : difference ;
 
-# intersection set1 : set2
+
+# Removes all the items appearing in both set1 & set2.
 #
-# Removes from set1 any items which don't appear in set2 and returns the result.
 rule intersection ( set1 * : set2 * )
 {
     local result ;
@@ -37,6 +37,10 @@
     return $(result) ;
 }
 
+
+# Returns whether set1 & set2 contain the same elements. Note that this ignores
+# any element ordering differences as well as any element duplication.
+#
 rule equal ( set1 * : set2 * )
 {
     if $(set1) in $(set2) && ( $(set2) in $(set1) )
@@ -45,18 +49,15 @@
     }
 }
 
+
 rule __test__ ( )
 {
     import assert ;
-
- assert.result 0 1 4 6 8 9
- : difference 0 1 2 3 4 5 6 7 8 9 : 2 3 5 7 ;
-
- assert.result 2 5 7 : intersection 0 1 2 4 5 6 7 8 9 : 2 3 5 7 ;
-
- assert.true equal 1 1 2 3 : 3 2 2 1 ;
-
- assert.false equal 2 3 : 3 2 2 1 ;
-}
 
+ assert.result 0 1 4 6 8 9 : difference 0 1 2 3 4 5 6 7 8 9 : 2 3 5 7 ;
+ assert.result 2 5 7 : intersection 0 1 2 4 5 6 7 8 9 : 2 3 5 7 ;
 
+ assert.true equal : ;
+ assert.true equal 1 1 2 3 : 3 2 2 1 ;
+ assert.false equal 2 3 : 3 2 2 1 ;
+}

Modified: branches/CMake/release/tools/build/v2/util/string.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/string.jam (original)
+++ branches/CMake/release/tools/build/v2/util/string.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,10 +1,11 @@
-# Copyright 2002 Dave Abrahams
-# Copyright 2002, 2003 Rene Rivera
-# Distributed under the Boost Software License, Version 1.0.
-# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+# Copyright 2002 Dave Abrahams
+# Copyright 2002, 2003 Rene Rivera
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
 import regex ;
 
+
 # Characters considered whitespace, as a list.
 .whitespace-chars = " " " " "
 " ;
@@ -12,6 +13,7 @@
 # Characters considered whitespace, as a single string.
 .whitespace = $(.whitespace-chars:J="") ;
 
+
 # Returns the canonical set of whitespace characters, as a list.
 #
 rule whitespace-chars ( )
@@ -19,6 +21,7 @@
     return $(.whitespace-chars) ;
 }
 
+
 # Returns the canonical set of whitespace characters, as a single string.
 #
 rule whitespace ( )
@@ -26,11 +29,12 @@
     return $(.whitespace) ;
 }
 
-# Splits the given string into a list of strings composed
-# of each character of the string in sequence.
+
+# Splits the given string into a list of strings composed of each character of
+# the string in sequence.
 #
 rule chars (
- string # The string to split.
+ string # The string to split.
     )
 {
     local result ;
@@ -40,18 +44,19 @@
         string = $(s[9]) ;
         result += $(s[1-8]) ;
     }
-
- # trim off empty strings
+
+ # Trim off empty strings.
     while $(result[1]) && ! $(result[-1])
     {
         result = $(result[1--2]) ;
     }
-
+
     return $(result) ;
 }
 
-# Apply a set of standard transformations to string to produce an
-# abbreviation no more than 5 characters long
+
+# Apply a set of standard transformations to string to produce an abbreviation
+# no more than 5 characters long.
 #
 rule abbreviate ( string )
 {
@@ -60,22 +65,22 @@
     {
         return $(r) ;
     }
- # Anything less than 4 characters gets no abbreviation
+ # Anything less than 4 characters gets no abbreviation.
     else if ! [ MATCH (....) : $(string) ]
     {
- $(.abbreviated-$(string)) = $(string) ;
+ .abbreviated-$(string) = $(string) ;
         return $(string) ;
     }
     else
     {
- # Separate the initial letter in case it's a vowel
+ # Separate the initial letter in case it's a vowel.
         local s1 = [ MATCH ^(.)(.*) : $(string) ] ;
-
- # drop trailing "ing"
+
+ # Drop trailing "ing".
         local s2 = [ MATCH ^(.*)ing$ : $(s1[2]) ] ;
         s2 ?= $(s1[2]) ;
-
- # Reduce all doubled characters to one
+
+ # Reduce all doubled characters to one.
         local last = "" ;
         for local c in [ chars $(s2) ]
         {
@@ -86,38 +91,40 @@
             }
         }
         s2 = $(r:J="") ;
-
- # Chop all vowels out of the remainder
+
+ # Chop all vowels out of the remainder.
         s2 = [ regex.replace $(s2) [AEIOUaeiou] "" ] ;
 
- # Shorten remaining consonants to 4 characters
+ # Shorten remaining consonants to 4 characters.
         s2 = [ MATCH ^(.?.?.?.?) : $(s2) ] ;
-
- # Glue the initial character back on to the front
+
+ # Glue the initial character back on to the front.
         s2 = $(s1[1])$(s2) ;
-
- $(.abbreviated-$(string)) = $(s2) ;
+
+ .abbreviated-$(string) = $(s2) ;
         return $(s2) ;
     }
 }
 
-# Concatenates the given strings, inserting the given separator
-# between each string.
+
+# Concatenates the given strings, inserting the given separator between each
+# string.
 #
 rule join (
- strings * # The strings to join.
- : separator ? # The optional separator.
+ strings * # The strings to join.
+ : separator ? # The optional separator.
     )
 {
     separator ?= "" ;
     return $(strings:J=$(separator)) ;
 }
 
+
 # Split a string into whitespace separated words.
 #
 rule words (
- string # The string to split.
- : whitespace * # Optional, characters to consider as whitespace.
+ string # The string to split.
+ : whitespace * # Optional, characters to consider as whitespace.
     )
 {
     whitespace = $(whitespace:J="") ;
@@ -135,10 +142,11 @@
     return $(w) ;
 }
 
+
 # Check that the given string is composed entirely of whitespace.
 #
 rule is-whitespace (
- string ? # The string to test.
+ string ? # The string to test.
     )
 {
     if ! $(string) { return true ; }
@@ -151,7 +159,7 @@
 {
     import assert ;
     assert.result a b c : chars abc ;
-
+
     assert.result rntm : abbreviate runtime ;
     assert.result ovrld : abbreviate overload ;
     assert.result dbg : abbreviate debugging ;
@@ -160,20 +168,20 @@
     assert.result aaa : abbreviate aaa ;
     assert.result qck : abbreviate quack ;
     assert.result sttc : abbreviate static ;
-
- # check boundary cases
+
+ # Check boundary cases.
     assert.result a : chars a ;
     assert.result : chars "" ;
     assert.result a b c d e f g h : chars abcdefgh ;
     assert.result a b c d e f g h i : chars abcdefghi ;
     assert.result a b c d e f g h i j : chars abcdefghij ;
     assert.result a b c d e f g h i j k : chars abcdefghijk ;
-
+
     assert.result a//b/c/d : join a "" b c d : / ;
     assert.result abcd : join a "" b c d ;
-
+
     assert.result a b c : words "a b c" ;
-
+
     assert.true is-whitespace " " ;
     assert.false is-whitespace " a b c " ;
     assert.true is-whitespace "" ;

Modified: branches/CMake/release/tools/build/v2/util/utility.jam
==============================================================================
--- branches/CMake/release/tools/build/v2/util/utility.jam (original)
+++ branches/CMake/release/tools/build/v2/util/utility.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -108,7 +108,7 @@
 
 
 
-local rule __test__ ( )
+rule __test__ ( )
 {
     import assert ;
     import "class" : new ;

Modified: branches/CMake/release/tools/inspect/build/Jamfile.v2
==============================================================================
--- branches/CMake/release/tools/inspect/build/Jamfile.v2 (original)
+++ branches/CMake/release/tools/inspect/build/Jamfile.v2 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -14,7 +14,7 @@
 
 exe inspect
     :
- inspect.cpp license_check.cpp link_check.cpp long_name_check.cpp tab_check.cpp crlf_check.cpp unnamed_namespace_check.cpp ascii_check.cpp
+ inspect.cpp license_check.cpp link_check.cpp path_name_check.cpp tab_check.cpp crlf_check.cpp unnamed_namespace_check.cpp ascii_check.cpp
     copyright_check.cpp minmax_check.cpp
     /boost//filesystem/<link>static
     /boost//regex/<link>static

Modified: branches/CMake/release/tools/inspect/copyright_check.hpp
==============================================================================
--- branches/CMake/release/tools/inspect/copyright_check.hpp (original)
+++ branches/CMake/release/tools/inspect/copyright_check.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -31,7 +31,7 @@
         const std::string & contents );
 
       virtual ~copyright_check()
- { std::cout << " " << m_files_with_errors << " files " << desc() << '\n'; }
+ { std::cout << " " << m_files_with_errors << " files " << desc() << line_break(); }
     };
   }
 }

Modified: branches/CMake/release/tools/inspect/crlf_check.hpp
==============================================================================
--- branches/CMake/release/tools/inspect/crlf_check.hpp (original)
+++ branches/CMake/release/tools/inspect/crlf_check.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -23,7 +23,7 @@
     public:
 
       crlf_check();
- virtual const char * name() const { return "*R*"; }
+ virtual const char * name() const { return "*EOL*"; }
       virtual const char * desc() const { return "invalid (cr only) line-ending"; }
 
       virtual void inspect(
@@ -32,7 +32,7 @@
         const std::string & contents );
 
       virtual ~crlf_check()
- { std::cout << " " << m_files_with_errors << " files with invalid line endings\n"; }
+ { std::cout << " " << m_files_with_errors << " files with invalid line endings" << line_break(); }
     };
   }
 }

Modified: branches/CMake/release/tools/inspect/index.html
==============================================================================
--- branches/CMake/release/tools/inspect/index.html (original)
+++ branches/CMake/release/tools/inspect/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -38,10 +38,15 @@
   <li>tab_check.hpp and <a href="tab_check.cpp">
   tab_check.cpp</a></li>
 </ul>
-<p>A Jamfile is provided to build the program.</p>
+<p>A Jamfile is provided to build the program
+using Boost.Build.</p>
+<p>A Microsoft Visual Studio <a href="build/msvc/boost_inspect.suo">solution
+file</a> is provided to aid maintenance. See
+readme.txt
+before using it.</p>
 <hr>
 <p>Revised
-<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->29 December, 2003<!--webbot bot="Timestamp" endspan i-checksum="38523" --></p>
+<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->29 June, 2008<!--webbot bot="Timestamp" endspan i-checksum="19976" --></p>
 
 <p>© Copyright Beman Dawes, 2003</p>
 <p> Distributed under the Boost Software
@@ -51,4 +56,4 @@
 
 </body>
 
-</html>
+</html>
\ No newline at end of file

Modified: branches/CMake/release/tools/inspect/inspect.cpp
==============================================================================
--- branches/CMake/release/tools/inspect/inspect.cpp (original)
+++ branches/CMake/release/tools/inspect/inspect.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -34,7 +34,7 @@
 #include "crlf_check.hpp"
 #include "license_check.hpp"
 #include "link_check.hpp"
-#include "long_name_check.hpp"
+#include "path_name_check.hpp"
 #include "tab_check.hpp"
 #include "ascii_check.hpp"
 #include "minmax_check.hpp"
@@ -46,6 +46,8 @@
 
 namespace fs = boost::filesystem;
 
+using namespace boost::inspect;
+
 namespace
 {
   class inspector_element
@@ -63,6 +65,7 @@
   long file_count = 0;
   long directory_count = 0;
   long error_count = 0;
+ const int max_offenders = 5; // maximum "worst offenders" to display
 
   boost::inspect::string_set content_signatures;
 
@@ -85,6 +88,20 @@
   typedef std::vector< error_msg > error_msg_vector;
   error_msg_vector msgs;
 
+ struct lib_error_count
+ {
+ int error_count;
+ string library;
+
+ bool operator<( const lib_error_count & rhs ) const
+ {
+ return error_count > rhs.error_count;
+ }
+ };
+
+ typedef std::vector< lib_error_count > lib_error_count_vector;
+ lib_error_count_vector libs;
+
 // get info (as a string) if inspect_root is svn working copy --------------//
 
   string info( const fs::path & inspect_root )
@@ -263,11 +280,11 @@
     else
     {
       std::cout
- << " <tr><td><a href=\"#"
+ << " <a href=\"#"
         << current_library // what about malformed for URI refs? [gps]
         << "\">" << current_library
- << "</a></td><td align=\"center\">"
- << err_count << "</td></tr>\n";
+ << "</a> ("
+ << err_count << ")<br>\n";
     }
   }
 
@@ -281,14 +298,9 @@
     }
     else
     {
- std::cout
- << "</pre>\n"
+ std::cout <<
         "<h2>Summary</h2>\n"
- "<table border=\"1\" cellpadding=\"5\" cellspacing=\"0\">\n"
- " <tr>\n"
- " <td><b>Library</b></td>\n"
- " <td><b>Problems</b></td>\n"
- " </tr>\n"
+ "<blockquote>\n"
         ;
     }
 
@@ -308,13 +320,9 @@
     display_summary_helper( current_library, err_count );
 
     if (display_text == display_format)
- {
       std::cout << "\n";
- }
     else
- {
- std::cout << "</table>\n";
- }
+ std::cout << "</blockquote>\n";
   }
 
 
@@ -413,6 +421,83 @@
     }
   }
 
+
+// worst_offenders_count_helper --------------------------------------------------//
+
+ void worst_offenders_count_helper( const string & current_library, int err_count )
+ {
+ lib_error_count lec;
+ lec.library = current_library;
+ lec.error_count = err_count;
+ libs.push_back( lec );
+ }
+// worst_offenders_count -----------------------------------------------------//
+
+ void worst_offenders_count()
+ {
+ string current_library( msgs.begin()->library );
+ int err_count = 0;
+ for ( error_msg_vector::iterator itr ( msgs.begin() );
+ itr != msgs.end(); ++itr )
+ {
+ if ( current_library != itr->library )
+ {
+ worst_offenders_count_helper( current_library, err_count );
+ current_library = itr->library;
+ err_count = 0;
+ }
+ ++err_count;
+ }
+ worst_offenders_count_helper( current_library, err_count );
+ }
+
+// display_worst_offenders -------------------------------------------------//
+
+ void display_worst_offenders()
+ {
+ if (display_text == display_format)
+ {
+ std::cout << "Worst Offenders:\n";
+ }
+ else
+ {
+ std::cout <<
+ "<h2>Worst Offenders</h2>\n"
+ "<blockquote>\n"
+ ;
+ }
+
+ int display_count = 0;
+ int last_error_count = 0;
+ for ( lib_error_count_vector::iterator itr ( libs.begin() );
+ itr != libs.end()
+ && (display_count < max_offenders
+ || itr->error_count == last_error_count);
+ ++itr, ++display_count )
+ {
+ if (display_text == display_format)
+ {
+ std::cout << itr->library << " " << itr->error_count << "\n";
+ }
+ else
+ {
+ std::cout
+ << " <a href=\"#"
+ << itr->library
+ << "\">" << itr->library
+ << "</a> ("
+ << itr->error_count << ")<br>\n";
+ }
+ last_error_count = itr->error_count;
+ }
+
+ if (display_text == display_format)
+ std::cout << "\n";
+ else
+ std::cout << "</blockquote>\n";
+ }
+
+
   const char * options()
   {
     return
@@ -420,7 +505,7 @@
          " -copyright\n"
          " -crlf\n"
          " -link\n"
- " -long_name\n"
+ " -path_name\n"
          " -tab\n"
          " -ascii\n"
          " -minmax\n"
@@ -454,6 +539,14 @@
   namespace inspect
   {
 
+// line_break --------------------------------------------------------------//
+
+ const char * line_break()
+ {
+ return display_format ? "\n" : "<br>\n";
+ }
+
+
 // register_signature ------------------------------------------------------//
 
     void inspector::register_signature( const string & signature )
@@ -581,7 +674,7 @@
   bool copyright_ck = true;
   bool crlf_ck = true;
   bool link_ck = true;
- bool long_name_ck = true;
+ bool path_name_ck = true;
   bool tab_ck = true;
   bool ascii_ck = true;
   bool minmax_ck = true;
@@ -612,7 +705,7 @@
     copyright_ck = false;
     crlf_ck = false;
     link_ck = false;
- long_name_ck = false;
+ path_name_ck = false;
     tab_ck = false;
     ascii_ck = false;
     minmax_ck = false;
@@ -630,10 +723,8 @@
         crlf_ck = true;
     else if ( std::strcmp( argv[1], "-link" ) == 0 )
       link_ck = true;
- else if ( std::strcmp( argv[1], "-long_name" ) == 0 )
- long_name_ck = true;
- else if ( std::strcmp( argv[1], "-long-name" ) == 0 )
- long_name_ck = true;
+ else if ( std::strcmp( argv[1], "-path_name" ) == 0 )
+ path_name_ck = true;
     else if ( std::strcmp( argv[1], "-tab" ) == 0 )
       tab_ck = true;
     else if ( std::strcmp( argv[1], "-ascii" ) == 0 )
@@ -658,9 +749,9 @@
   fs::initial_path();
   
 
- {
+ { // begin reporting block
 
- // note how this is in its own block; reporting will happen
+ // since this is in its own block; reporting will happen
   // automatically, from each registered inspector, when
   // leaving, due to destruction of the inspector_list object
   inspector_list inspectors;
@@ -673,7 +764,7 @@
     inspectors.push_back( inspector_element( new boost::inspect::crlf_check ) );
   if ( link_ck )
     inspectors.push_back( inspector_element( new boost::inspect::link_check ) );
- if ( long_name_ck )
+ if ( path_name_ck )
     inspectors.push_back( inspector_element( new boost::inspect::file_name_check ) );
   if ( tab_ck )
       inspectors.push_back( inspector_element( new boost::inspect::tab_check ) );
@@ -731,6 +822,7 @@
     std::cout
       << "<html>\n"
       "<head>\n"
+ "<style> body { font-family: sans-serif; } </style>\n"
       "<title>Boost Inspection Report</title>\n"
       "</head>\n"
 
@@ -758,38 +850,43 @@
 
 
     std::cout
- << "<h2>Totals</h2>\n<pre>"
- << file_count << " files scanned\n"
- << directory_count << " directories scanned (including root)\n"
- << error_count << " problems reported\n";
+ << "<h2>Totals</h2>\n"
+ << file_count << " files scanned<br>\n"
+ << directory_count << " directories scanned (including root)<br>\n"
+ << error_count << " problems reported\n<p>";
   }
 
   for ( inspector_list::iterator itr = inspectors.begin();
         itr != inspectors.end(); ++itr )
   {
- const string line_break (
- display_text == display_format? "\n" : "<br>\n"); // gps
 
     inspector_keys += static_cast<string>(" ")
         + itr->inspector->name()
         + ' ' + itr->inspector->desc()
- + line_break
+ + line_break()
         ;
   }
 
-
- std::cout
- << "\nProblem counts:\n";
+ if (display_text == display_format)
+ std::cout << "\nProblem counts:\n";
+ else
+ std::cout << "\n<h2>Problem counts</h2>\n<blockquote><p>\n" ;
 
   } // end of block: starts reporting
 
   if (display_text == display_format)
- {
     std::cout << "\n" ;
- }
+ else
+ std::cout << "</blockquote>\n";
 
   std::sort( msgs.begin(), msgs.end() );
 
+ worst_offenders_count();
+ std::stable_sort( libs.begin(), libs.end() );
+
+ if ( !libs.empty() )
+ display_worst_offenders();
+
   if ( !msgs.empty() )
   {
     display_summary();

Modified: branches/CMake/release/tools/inspect/inspector.hpp
==============================================================================
--- branches/CMake/release/tools/inspect/inspector.hpp (original)
+++ branches/CMake/release/tools/inspect/inspector.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -26,6 +26,8 @@
   {
     typedef std::set< string > string_set;
 
+ const char * line_break();
+
     class inspector
     {
     protected:

Modified: branches/CMake/release/tools/inspect/license_check.hpp
==============================================================================
--- branches/CMake/release/tools/inspect/license_check.hpp (original)
+++ branches/CMake/release/tools/inspect/license_check.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -22,7 +22,7 @@
     public:
 
       license_check();
- virtual const char * name() const { return "*L*"; }
+ virtual const char * name() const { return "*Lic*"; }
       virtual const char * desc() const { return "missing Boost license info, or wrong reference text"; }
 
       virtual void inspect(
@@ -32,7 +32,7 @@
 
       virtual ~license_check()
         { std::cout << " "
- << m_files_with_errors << " files missing Boost license info or having wrong reference text\n"; }
+ << m_files_with_errors << " files missing Boost license info or having wrong reference text" << line_break(); }
     };
   }
 }

Modified: branches/CMake/release/tools/inspect/link_check.cpp
==============================================================================
--- branches/CMake/release/tools/inspect/link_check.cpp (original)
+++ branches/CMake/release/tools/inspect/link_check.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,21 +20,27 @@
     "\\s*=\\s*(['\"])(.*?)\\1",
     boost::regbase::normal | boost::regbase::icase);
 
+ // Regular expression for parsing URLS from:
+ // http://tools.ietf.org/html/rfc3986#appendix-B
+ boost::regex url_decompose_regex(
+ "^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$",
+ boost::regbase::normal);
+
   // Decode percent encoded characters and html escapsed ampersands,
   // returns an empty string if there's an error.
   // The urls should really be fully HTML decoded at the beginning.
- std::string decode_url(std::string const& path) {
+ std::string decode_url(std::string const& url_path) {
     std::string::size_type pos = 0, next;
     std::string result;
- result.reserve(path.length());
+ result.reserve(url_path.length());
 
- while((next = path.find_first_of("&%", pos)) != std::string::npos) {
- result.append(path, pos, next - pos);
+ while((next = url_path.find_first_of("&%", pos)) != std::string::npos) {
+ result.append(url_path, pos, next - pos);
       pos = next;
- switch(path[pos]) {
+ switch(url_path[pos]) {
         case '%': {
- if(path.length() - next < 3) return "";
- char hex[3] = { path[next + 1], path[next + 2], '\0' };
+ if(url_path.length() - next < 3) return "";
+ char hex[3] = { url_path[next + 1], url_path[next + 2], '\0' };
           char* end_ptr;
           result += (char) std::strtol(hex, &end_ptr, 16);
           if(*end_ptr) return "";
@@ -42,7 +48,7 @@
           break;
         }
         case '&': {
- if(path.substr(pos, 5) == "&amp;") {
+ if(url_path.substr(pos, 5) == "&amp;") {
             result += '&'; pos += 5;
           }
           else {
@@ -53,7 +59,7 @@
       }
     }
 
- result.append(path, pos, path.length());
+ result.append(url_path, pos, url_path.length());
 
     return result;
   }
@@ -121,66 +127,114 @@
       const path & source_path, bool no_link_errors )
         // precondition: source_path.is_complete()
     {
- if ( url[0] == '#'
- || url.find( "mailto:" ) == 0
- || url.find( "http:" ) == 0
- || url.find( "https:" ) == 0
- || url.find( "ftp:" ) == 0
- || url.find( "news:" ) == 0
- || url.find( "javascript:" ) == 0
- ) return;
-
- if ( url.find( "file:" ) == 0 )
- {
+ boost::smatch m;
+ if(!boost::regex_match(url, m, url_decompose_regex)) {
         if(!no_link_errors) {
           ++m_invalid_errors;
- error( library_name, source_path, string(name()) + " invalid URL (hardwired file): " + url );
+ error( library_name, source_path, string(name()) + " invalid URL: " + url );
+ }
+ return;
+ }
+
+ bool scheme_matched = m[2].matched,
+ authority_matched = m[4].matched,
+ //query_matched = m[7].matched,
+ fragment_matched = m[9].matched;
+
+ std::string scheme(m[2]),
+ authority(m[4]),
+ url_path(m[5]),
+ //query(m[7]),
+ fragment(m[9]);
+
+ // Protocol checks
+ if(scheme_matched) {
+ if(scheme == "http" || scheme == "https") {
+ // All http links should have a hostname. Generally if they don't
+ // it's by mistake. If they shouldn't, then a protocol isn't
+ // required.
+ if(!authority_matched) {
+ if(!no_link_errors) {
+ ++m_invalid_errors;
+ error( library_name, source_path, string(name()) + " no hostname: " + url );
+ }
+ }
+
+ return;
+ }
+ else if(scheme == "file") {
+ if(!no_link_errors) {
+ ++m_invalid_errors;
+ error( library_name, source_path, string(name()) + " invalid URL (hardwired file): " + url );
+ }
+ }
+ else if(!(scheme == "mailto" || scheme == "ftp" || scheme == "news" || scheme == "javascript")) {
+ if(!no_link_errors) {
+ ++m_invalid_errors;
+ error( library_name, source_path, string(name()) + " unknown protocol: " + url );
+ }
         }
+
         return;
       }
 
- // detect characters banned by RFC2396:
+ // Hostname without protocol.
+ if(authority_matched) {
+ if(!no_link_errors) {
+ ++m_invalid_errors;
+ error( library_name, source_path, string(name()) + " invalid URL (hostname without protocol): " + url );
+ }
+ }
+
+ // Check the fragment identifier
+ if(fragment_matched) {
+ if ( !no_link_errors && fragment.find( '#' ) != string::npos )
+ {
+ ++m_bookmark_errors;
+ error( library_name, source_path, string(name()) + " invalid bookmark: " + url );
+ }
+
+ // No more to do if it's just a fragment identifier
+ if(url_path.empty()) return;
+ }
+
+ // Detect characters banned by RFC2396:
       if ( !no_link_errors && url.find_first_of( " <>\"{}|\\^[]'" ) != string::npos )
       {
         ++m_invalid_errors;
         error( library_name, source_path, string(name()) + " invalid character in URL: " + url );
       }
 
- // strip url of bookmarks
- string plain_url( url );
- string::size_type pos( plain_url.find( '#' ) );
- if ( pos != string::npos )
- {
- plain_url.erase( pos );
- // detect characters banned by RFC2396 in bookmark:
- if ( !no_link_errors && url.find( '#', pos+1 ) != string::npos )
- {
- ++m_bookmark_errors;
- error( library_name, source_path, string(name()) + " invalid bookmark: " + url );
+ // Check that we actually have a path.
+ if(url_path.empty()) {
+ if(!no_link_errors) {
+ ++m_invalid_errors;
+ error( library_name, source_path, string(name()) + " invalid URL (empty path in relative url): " + url );
         }
       }
 
- string decoded_url = decode_url(plain_url);
- if(decoded_url.empty()) {
+ // Decode percent and ampersand encoded characters.
+ string decoded_path = decode_url(url_path);
+ if(decoded_path.empty()) {
         if(!no_link_errors) {
           ++m_invalid_errors;
- error( library_name, source_path, string(name()) + " invalid URL: " + url );
+ error( library_name, source_path, string(name()) + " invalid URL (invalid character encodings): " + url );
         }
         return;
       }
 
       // strip url of references to current dir
- if ( decoded_url[0]=='.' && decoded_url[1]=='/' ) decoded_url.erase( 0, 2 );
+ if ( decoded_path[0]=='.' && decoded_path[1]=='/' ) decoded_path.erase( 0, 2 );
 
       // url is relative source_path.branch()
       // convert to target_path, which is_complete()
       path target_path;
- try { target_path = source_path.branch_path() /= path( decoded_url, fs::no_check ); }
+ try { target_path = source_path.branch_path() /= path( decoded_path, fs::no_check ); }
       catch ( const fs::filesystem_error & )
       {
         if(!no_link_errors) {
           ++m_invalid_errors;
- error( library_name, source_path, string(name()) + " invalid URL: " + url );
+ error( library_name, source_path, string(name()) + " invalid URL (error resolving path): " + url );
         }
         return;
       }

Modified: branches/CMake/release/tools/inspect/link_check.hpp
==============================================================================
--- branches/CMake/release/tools/inspect/link_check.hpp (original)
+++ branches/CMake/release/tools/inspect/link_check.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -36,7 +36,7 @@
     public:
 
       link_check();
- virtual const char * name() const { return "*A*"; }
+ virtual const char * name() const { return "*HTML*"; }
       virtual const char * desc() const { return "invalid bookmarks, invalid urls, broken links, unlinked files"; }
 
       virtual void inspect(
@@ -52,10 +52,10 @@
 
       virtual ~link_check()
         {
- std::cout << " " << m_bookmark_errors << " bookmarks with invalid characters\n";
- std::cout << " " << m_invalid_errors << " invalid urls\n";
- std::cout << " " << m_broken_errors << " broken links\n";
- std::cout << " " << m_unlinked_errors << " unlinked files\n";
+ std::cout << " " << m_bookmark_errors << " bookmarks with invalid characters" << line_break();
+ std::cout << " " << m_invalid_errors << " invalid urls" << line_break();
+ std::cout << " " << m_broken_errors << " broken links" << line_break();
+ std::cout << " " << m_unlinked_errors << " unlinked files" << line_break();
         }
     };
   }

Deleted: branches/CMake/release/tools/inspect/long_name_check.cpp
==============================================================================
--- branches/CMake/release/tools/inspect/long_name_check.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,110 +0,0 @@
-// long_name_check implementation ------------------------------------------//
-
-// Copyright Beman Dawes 2002.
-// Copyright Gennaro Prota 2006.
-//
-// Distributed under the Boost Software License, Version 1.0.
-// (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-#include "long_name_check.hpp"
-
-#include "boost/filesystem/operations.hpp"
-#include "boost/lexical_cast.hpp"
-
-#include <locale>
-#include <algorithm>
-
-namespace { namespace aux {
-
-bool starts_with_nonalnum( path const & p )
-{
- const string & x = p.string();
- assert(!x.empty());
-
- const string::value_type first = x[0];
-
- return !std::isalnum( first, std::locale::classic() )
- && first != '_'
- && x != ".cvsignore"
- && x != ".svn"
- ;
-}
-
-}}
-
-
-namespace boost
-{
- namespace inspect
- {
- const char file_name_check::limits::name[] = "ISO 9660:1999 Level 3";
-
- file_name_check::file_name_check() : m_name_errors(0) {}
-
- void file_name_check::inspect(
- const string & library_name,
- const path & full_path )
- {
- std::string const leaf( full_path.leaf() );
-
- if ( *leaf.rbegin() == '.' )
- {
- ++m_name_errors;
- error( library_name, full_path, string(name())
- + " filename ends with the dot character ('.')" );
- }
-
- path const relative_path(
- relative_to( full_path, filesystem::initial_path() )
- , &filesystem::no_check );
-
-
- // checks on the directory name --------------------------- //
-
- if( aux::starts_with_nonalnum( path(leaf)) )
- {
- ++m_name_errors;
- error( library_name, full_path, string(name())
- + " leading character of \""
- + leaf + "\""
- + " is not alphanumeric" );
- }
-
- const unsigned max_relative_path = 207; // ISO 9660:1999 sets this limit
- const string generic_root( "boost_X_XX_X/" );
- if ( relative_path.string().size() >
- ( max_relative_path - generic_root.size() ) )
- {
- ++m_name_errors;
- error( library_name, full_path,
- string(name())
- + " file path will exceed "
- + boost::lexical_cast<string>(max_relative_path)
- + " characters in a directory tree with a root of the form "
- + generic_root + ", and this exceeds ISO 9660:1999 limit of 207" )
- ;
- }
-
- if (relative_path.leaf() != ".cvsignore" && relative_path.leaf() != ".svn")
- {
- try
- {
- path const check_portability( relative_path.string(), &filesystem::portable_name );
- }
- catch ( filesystem::filesystem_error const& )
- {
- ++m_name_errors;
- error( library_name, full_path, string(name()) + " nonportable path" );
- }
- }
- }
-
- file_name_check::~file_name_check()
- {
- std::cout << " " << m_name_errors << " " << desc() << '\n';
- }
-
-
- } // namespace inspect
-} // namespace boost

Deleted: branches/CMake/release/tools/inspect/long_name_check.hpp
==============================================================================
--- branches/CMake/release/tools/inspect/long_name_check.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
+++ (empty file)
@@ -1,57 +0,0 @@
-// long_name_check header --------------------------------------------------//
-// (main class renamed to: file_name_check) - gps
-
-// Copyright Beman Dawes 2002.
-// Copyright Gennaro Prota 2006.
-//
-// Distributed under the Boost Software License, Version 1.0.
-// (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-#ifndef BOOST_FILE_NAME_CHECK_HPP
-#define BOOST_FILE_NAME_CHECK_HPP
-
-#include "inspector.hpp"
-
-namespace boost
-{
- namespace inspect
- {
- class file_name_check : public inspector
- {
- long m_name_errors;
-
- // ISO 9660 Level 3
- //
- struct iso_9660_limits
- {
- static const char name[];
- };
-
- public:
-
- typedef iso_9660_limits limits;
-
- file_name_check();
- virtual ~file_name_check();
-
- virtual const char * name() const { return "*N*"; }
- virtual const char * desc() const { return "file/directory names issues"; }
-
- virtual void inspect(
- const string & library_name,
- const path & full_path );
-
- virtual void inspect(
- const string &, // "filesystem"
- const path &, // "c:/foo/boost/filesystem/path.hpp"
- const string &)
- { /* empty */ }
-
-
-
- };
- }
-}
-
-#endif // BOOST_FILE_NAME_CHECK_HPP

Modified: branches/CMake/release/tools/inspect/minmax_check.hpp
==============================================================================
--- branches/CMake/release/tools/inspect/minmax_check.hpp (original)
+++ branches/CMake/release/tools/inspect/minmax_check.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -36,7 +36,7 @@
 
       virtual ~minmax_check()
       {
- std::cout << " " << m_errors << " violations of the Boost min/max guidelines\n";
+ std::cout << " " << m_errors << " violations of the Boost min/max guidelines" << line_break();
       }
     };
   }

Modified: branches/CMake/release/tools/inspect/tab_check.hpp
==============================================================================
--- branches/CMake/release/tools/inspect/tab_check.hpp (original)
+++ branches/CMake/release/tools/inspect/tab_check.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,7 +20,7 @@
     public:
 
       tab_check();
- virtual const char * name() const { return "*T*"; }
+ virtual const char * name() const { return "*Tab*"; }
       virtual const char * desc() const { return "tabs in file"; }
 
       virtual void inspect(
@@ -29,7 +29,7 @@
         const std::string & contents );
 
       virtual ~tab_check()
- { std::cout << " " << m_files_with_errors << " files with tabs\n"; }
+ { std::cout << " " << m_files_with_errors << " files with tabs" << line_break(); }
     };
   }
 }

Modified: branches/CMake/release/tools/inspect/time_string.hpp
==============================================================================
--- branches/CMake/release/tools/inspect/time_string.hpp (original)
+++ branches/CMake/release/tools/inspect/time_string.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -16,6 +16,8 @@
 #include <string>
 #include <ctime>
 
+#include <boost/config/warning_disable.hpp>
+
 namespace boost {
 
 // Many of the boost tools just need a quick way to obtain

Modified: branches/CMake/release/tools/inspect/unnamed_namespace_check.hpp
==============================================================================
--- branches/CMake/release/tools/inspect/unnamed_namespace_check.hpp (original)
+++ branches/CMake/release/tools/inspect/unnamed_namespace_check.hpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -30,7 +30,7 @@
         const std::string & contents );
 
       virtual ~unnamed_namespace_check()
- { std::cout << " " << m_errors << " usages of unnamed namespaces in headers (including .ipp files)\n"; }
+ { std::cout << " " << m_errors << " usages of unnamed namespaces in headers (including .ipp files)" << line_break(); }
     };
   }
 }

Modified: branches/CMake/release/tools/jam/doc/bjam.qbk
==============================================================================
--- branches/CMake/release/tools/jam/doc/bjam.qbk (original)
+++ branches/CMake/release/tools/jam/doc/bjam.qbk 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,6 +1,6 @@
 [article Boost.Jam
     [quickbook 1.3]
- [version: 3.1.16]
+ [version: 3.1.17]
     [authors [Rivera, Rene], [Abrahams, David], [Prus, Vladimir]]
     [copyright 2003 2004 2005 2006 2007 Rene Rivera, David Abrahams, Vladimir Prus]
     [category tool-build]
@@ -21,7 +21,7 @@
 
 [/ Shortcuts ]
 
-[def :version: 3.1.16]
+[def :version: 3.1.17]
 
 [/ Images ]
 
@@ -116,7 +116,7 @@
 The toolset used to build Boost.Jam is independent of the toolsets used for Boost.Build. Only one version of Boost.Jam is needed to use Boost.Build.
 ]
 
-The supported toolsets, and wether they are auto-detected, are:
+The supported toolsets, and whether they are auto-detected, are:
 
 [table Supported Toolsets
 
@@ -758,7 +758,7 @@
 rule DEPENDS ( /targets1/ * : /targets2/ * )
 ]
 
-Builds a direct dependency: makes each of /targets1/ depend on each of /targets2/. Generally, /targets1/ will be rebuilt if /targets2/ are themselves rebuilt are or are newer than /targets1/.
+Builds a direct dependency: makes each of /targets1/ depend on each of /targets2/. Generally, /targets1/ will be rebuilt if /targets2/ are themselves rebuilt or are newer than /targets1/.
 
 [endsect]
 
@@ -954,7 +954,7 @@
 # It clears the list of targets to update, and
 # Causes the specified targets to be updated.
 
-If no target was specified with the =UPDATE= rule, no targets will be updated. To support changing of the update list in more usefull ways, the rule also returns the targets previously in the update list. This makes it possible to add targets as such:
+If no target was specified with the =UPDATE= rule, no targets will be updated. To support changing of the update list in more useful ways, the rule also returns the targets previously in the update list. This makes it possible to add targets as such:
 
 [pre
 local previous-updates = \[ UPDATE \] ;
@@ -1773,7 +1773,7 @@
 * "Grist" is just a string prefix of the form </characters/>. It is used in Jam to create unique target names based on simpler names. For example, the file name "=test.exe=" may be used by targets in separate subprojects, or for the debug and release variants of the "same" abstract target. Each distinct target bound to a file called "test.exe" has its own unique grist prefix. The Boost build system also takes full advantage of Jam's ability to divide strings on grist boundaries, sometimes concatenating multiple gristed elements at the beginning of a string. Grist is used instead of identifying targets with absolute paths for two reasons:
 
    # The location of targets cannot always be derived solely from what the user puts in a Jamfile, but sometimes depends also on the binding process. Some mechanism to distinctly identify targets with the same name is still needed.
- # Grist allows us to use a uniform abstract identifier for each built target, regardless of target file location (as allowed by setting ALL_LOCATE_TARGET.
+ # Grist allows us to use a uniform abstract identifier for each built target, regardless of target file location (as allowed by setting ALL_LOCATE_TARGET).
 
 * When grist is extracted from a name with $(var:G), the result includes the leading and trailing angle brackets. When grist is added to a name with $(var:G=expr), existing grist is first stripped. Then, if expr is non-empty, leading <s and trailing >s are added if necessary to form an expression of the form <expr2>; <expr2> is then prepended.
 

Modified: branches/CMake/release/tools/jam/src/Jambase
==============================================================================
--- branches/CMake/release/tools/jam/src/Jambase (original)
+++ branches/CMake/release/tools/jam/src/Jambase 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -18,9 +18,10 @@
 }
 SLASH ?= / ;
 
-# Glob for patterns in the directories starting from the given
-# start directory, up to and including the root of the file-system.
-# We stop globbing as soon as we find at least one match.
+
+# Glob for patterns in the directories starting from the given start directory,
+# up to and including the root of the file-system. We stop globbing as soon as
+# we find at least one match.
 #
 rule find-to-root ( dir : patterns + )
 {
@@ -33,6 +34,7 @@
     return $(globs) ;
 }
 
+
 # This global will hold the location of the user's boost-build.jam file.
 .boost-build-file = ;
 
@@ -42,16 +44,16 @@
 # Remember the value of $(BOOST_BUILD_PATH) supplied to us by the user.
 BOOST_BUILD_PATH.user-value = $(BOOST_BUILD_PATH) ;
 
-# On Unix only, when BOOST_BUILD_PATH is not supplied by user, put
-# sensible default value. This allowes Boost.Build to work without
-# any environment variables, which is good in itself and also
-# required by Debian Policy.
+# On Unix only, when BOOST_BUILD_PATH is not supplied by the user, set it to a
+# sensible default value. This allows Boost.Build to work without any
+# environment variables, which is good in itself and also required by the Debian
+# Policy.
 if ! $(BOOST_BUILD_PATH) && $(UNIX)
 {
     BOOST_BUILD_PATH = /usr/share/boost-build ;
 }
 
-
+
 rule _poke ( module-name ? : variables + : value * )
 {
     module $(<)
@@ -60,41 +62,37 @@
     }
 }
 
-# This rule can be invoked from an optional user's boost-build.jam
-# file to both indicate where to find the build system files, and to
-# load them. The path indicated is relative to the location of the
-# boost-build.jam file.
+
+# This rule can be invoked from an optional user's boost-build.jam file to both
+# indicate where to find the build system files, and to load them. The path
+# indicated is relative to the location of the boost-build.jam file.
 #
 rule boost-build ( dir ? )
 {
     if $(.bootstrap-file)
     {
- EXIT "Error: Illegal attempt to re-bootstrap the build system by invoking" ;
+ ECHO "Error: Illegal attempt to re-bootstrap the build system by invoking" ;
         ECHO ;
         ECHO " 'boost-build" $(dir) ";'" ;
         ECHO ;
         EXIT "Please consult the documentation at 'http://www.boost.org'." ;
     }
-
- # Add the given directory to the path so we can find the build
- # system. If dir is empty, has no effect.
- #
+
+ # Add the given directory to the path so we can find the build system. If
+ # dir is empty, has no effect.
     BOOST_BUILD_PATH = $(dir:R=$(.boost-build-file:D)) $(BOOST_BUILD_PATH) ;
-
- # We might have just modified the *global* value of BOOST_BUILD_PATH.
- # The code that loads the rest of Boost.Build, in particular the
- # site-config.jam and user-config.jam files uses os.environ, so we need to
- # update the value there.
+
+ # We might have just modified the *global* value of BOOST_BUILD_PATH. The
+ # code that loads the rest of Boost.Build, in particular the site-config.jam
+ # and user-config.jam configuration files uses os.environ, so we need to
+ # update the value there.
     _poke .ENVIRON : BOOST_BUILD_PATH : $(BOOST_BUILD_PATH) ;
-
+
     # Try to find the build system bootstrap file 'bootstrap.jam'.
- #
- local bootstrap-file =
- [ GLOB $(BOOST_BUILD_PATH) : bootstrap.jam ] ;
+ local bootstrap-file = [ GLOB $(BOOST_BUILD_PATH) : bootstrap.jam ] ;
     .bootstrap-file = $(bootstrap-file[1]) ;
-
- # There is no boost-build.jam we can find, exit with an error
- #
+
+ # There is no bootstrap.jam we can find, exit with an error.
     if ! $(.bootstrap-file)
     {
         ECHO "Unable to load Boost.Build: could not find build system." ;
@@ -108,44 +106,43 @@
         ECHO ;
         EXIT "Please consult the documentation at 'http://www.boost.org'." ;
     }
-
+
     if [ MATCH .*(--debug-configuration).* : $(ARGV) ]
     {
- ECHO "notice: loading Boost.Build from"
- [ NORMALIZE_PATH $(.bootstrap-file:D) ] ;
+ ECHO "notice: loading Boost.Build from"
+ [ NORMALIZE_PATH $(.bootstrap-file:D) ] ;
     }
-
+
     # Load the build system, now that we know where to start from.
- #
     include $(.bootstrap-file) ;
 }
 
 
 if [ MATCH .*(bjam).* : $(ARGV[1]:BL) ]
- || $(BOOST_ROOT) # A temporary measure so Jam works with Boost.Build v1
+ || $(BOOST_ROOT) # A temporary measure so Jam works with Boost.Build v1.
 {
- # We attempt to load "boost-build.jam" by searching from the current invocation directory
- # up to the root of the file-system.
+ # We attempt to load "boost-build.jam" by searching from the current
+ # invocation directory up to the root of the file-system.
     #
- # boost-build.jam is expected to invoke the "boost-build" rule to
- # load the Boost.Build files.
-
+ # boost-build.jam is expected to invoke the "boost-build" rule to load the
+ # Boost.Build files.
+
     local search-path = $(BOOST_BUILD_PATH) $(BOOST_ROOT) ;
-
+
     local boost-build-files =
         [ find-to-root [ PWD ] : boost-build.jam ]
- # Another temporary measure so Jam works with Boost.Build v1
+ # Another temporary measure so Jam works with Boost.Build v1.
         [ GLOB $(search-path) : boost-build.jam ] ;
-
+
     .boost-build-file = $(boost-build-files[1]) ;
-
- # There is no boost-build.jam we can find, exit with an error, and information.
- #
+
+ # There is no boost-build.jam we can find, exit with an error, and
+ # information.
     if ! $(.boost-build-file)
     {
         ECHO "Unable to load Boost.Build: could not find \"boost-build.jam\"" ;
         ECHO --------------------------------------------------------------- ;
-
+
         if ! [ MATCH .*(bjam).* : $(ARGV[1]:BL) ]
         {
             ECHO "BOOST_ROOT must be set, either in the environment, or " ;
@@ -158,23 +155,21 @@
         ECHO "and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: "$(search-path:J=", ")"." ;
         EXIT "Please consult the documentation at 'http://www.boost.org'." ;
     }
-
- if [ MATCH .*(--debug-configuration).* : $(ARGV) ]
+
+ if [ MATCH .*(--debug-configuration).* : $(ARGV) ]
     {
- ECHO "notice: found boost-build.jam at"
- [ NORMALIZE_PATH $(.boost-build-file) ] ;
+ ECHO "notice: found boost-build.jam at"
+ [ NORMALIZE_PATH $(.boost-build-file) ] ;
     }
-
+
     # Now load the boost-build.jam to get the build system loaded. This
     # incidentaly loads the users jamfile and attempts to build targets.
     #
- # We also set it up so we can tell wether we are loading the new V2
- # system or the the old V1 system.
- #
+ # We also set it up so we can tell whether we are loading the new V2 system
+ # or the the old V1 system.
     include $(.boost-build-file) ;
-
+
     # Check that, at minimum, the bootstrap file was found.
- #
     if ! $(.bootstrap-file)
     {
         ECHO "Unable to load Boost.Build" ;
@@ -211,7 +206,7 @@
 # 01/08/95 (seiwald) - Shell now handled with awk, not sed
 # 01/09/95 (seiwald) - Install* now take dest directory as target
 # 01/10/95 (seiwald) - All entries sorted.
-# 01/10/95 (seiwald) - NT support moved in, with LauraW's help.
+# 01/10/95 (seiwald) - NT support moved in, with LauraW's help.
 # 01/10/95 (seiwald) - VMS support moved in.
 # 02/06/95 (seiwald) - ObjectC++Flags and SubDirC++Flags added.
 # 02/07/95 (seiwald) - Iron out when HDRSEARCH uses "" or SEARCH_SOURCE.
@@ -227,14 +222,14 @@
 #
 # all - parent of first, shell, files, lib, exe
 # first - first dependent of 'all', for potential initialization
-# shell - parent of all Shell targets
+# shell - parent of all Shell targets
 # files - parent of all File targets
 # lib - parent of all Library targets
 # exe - parent of all Main targets
 # dirs - parent of all MkDir targets
 # clean - removes all Shell, File, Library, and Main targets
 # uninstall - removes all Install targets
-#
+#
 
 # Rules defined by this file:
 #
@@ -314,7 +309,7 @@
 # EXIT - blurt out targets and exit
 # INCLUDES - marks sources as headers for target (a codependency)
 # NOCARE - don't panic if the target can't be built
-# NOUPDATE - create the target if needed but never update it
+# NOUPDATE - create the target if needed but never update it
 # NOTFILE - ignore the timestamp of the target (it's not a file)
 # TEMPORARY - target need not be present if sources haven't changed
 #
@@ -347,35 +342,35 @@
     #
     local SUPPORTED_TOOLSETS = "BORLANDC" "VC7" "VISUALC" "VISUALC16" "INTELC" "WATCOM"
                                "MINGW" "LCC" ;
-
+
     # this variable holds the current toolset
     #
     TOOLSET = "" ;
-
+
     # if the JAM_TOOLSET environment variable is defined, check that it is
     # one of our supported values
     #
     if $(JAM_TOOLSET)
     {
       local t ;
-
+
       for t in $(SUPPORTED_TOOLSETS)
       {
         $(t) = $($(t):J=" ") ; # reconstitute paths with spaces in them
         if $(t) = $(JAM_TOOLSET) { TOOLSET = $(t) ; }
       }
-
+
       if ! $(TOOLSET)
       {
         ECHO "The JAM_TOOLSET environment variable is defined but its value" ;
         ECHO "is invalid, please use one of the following:" ;
         ECHO ;
-
+
         for t in $(SUPPORTED_TOOLSETS) { ECHO " " $(t) ; }
         EXIT ;
       }
     }
-
+
     # if TOOLSET is empty, we'll try to detect the toolset from other
     # environment variables to remain backwards compatible with Jam 2.3
     #
@@ -469,7 +464,7 @@
     C++FLAGS ?= $(CCFLAGS) ;
     LINK ?= $(CC) ;
     LINKFLAGS ?= $(CCFLAGS) ;
- LINKLIBS ?=
+ LINKLIBS ?=
                 \"$(VISUALC16)\\lib\\mlibce.lib\"
                 \"$(VISUALC16)\\lib\\oldnames.lib\"
                 ;
@@ -582,7 +577,7 @@
     else if $(TOOLSET) = MINGW
     {
         ECHO "Compiler is GCC with Mingw" ;
-
+
         AR ?= ar -ru ;
         CC ?= gcc ;
         CCFLAGS ?= "" ;
@@ -600,7 +595,7 @@
     else if $(TOOLSET) = LCC
     {
         ECHO "Compiler is Win32-LCC" ;
-
+
         AR ?= lcclib ;
         CC ?= lcc ;
         CCFLAGS ?= "" ;
@@ -616,7 +611,7 @@
     {
 #
 # XXX: We need better comments here !!
-#
+#
     EXIT On NT, set BCCROOT, MSVCNT, MINGW or MSVC to the root of the
         Borland or Microsoft directories. ;
     }
@@ -627,18 +622,18 @@
     # the list of supported toolsets on Windows NT and Windows 95/98
     #
     local SUPPORTED_TOOLSETS = "EMX" "WATCOM" ;
-
+
     # this variable holds the current toolset
     #
     TOOLSET = "" ;
-
+
     # if the JAM_TOOLSET environment variable is defined, check that it is
     # one of our supported values
     #
     if $(JAM_TOOLSET)
     {
       local t ;
-
+
       for t in $(SUPPORTED_TOOLSETS)
       {
         $(t) = $($(t):J=" ") ; # reconstitute paths with spaces in them
@@ -650,12 +645,12 @@
         ECHO "The JAM_TOOLSET environment variable is defined but its value" ;
         ECHO "is invalid, please use one of the following:" ;
         ECHO ;
-
+
         for t in $(SUPPORTED_TOOLSETS) { ECHO " " $(t) ; }
         EXIT ;
       }
     }
-
+
     # if TOOLSET is empty, we'll try to detect the toolset from other
     # environment variables to remain backwards compatible with Jam 2.3
     #
@@ -698,7 +693,7 @@
     SUFLIB ?= .lib ;
     SUFOBJ ?= .obj ;
     SUFEXE ?= .exe ;
-
+
     if $(TOOLSET) = WATCOM
     {
        AR ?= wlib ;
@@ -769,7 +764,7 @@
     SUFLIB ?= .olb ;
     SUFOBJ ?= .obj ;
 
- switch $(OS)
+ switch $(OS)
     {
     case OPENVMS : CCFLAGS ?= /stand=vaxc ;
     case VMS : LINKLIBS ?= sys$library:vaxcrtl.olb/lib ;
@@ -778,7 +773,7 @@
 else if $(MAC)
 {
     local OPT ;
-
+
     CW ?= "{CW}" ;
 
     MACHDRS ?=
@@ -790,19 +785,19 @@
         "$(CW):MacOS Support:Universal:Libraries:StubLibraries:Interfacelib"
         "$(CW):MacOS Support:Universal:Libraries:StubLibraries:Mathlib" ;
 
- MPWLIBS ?=
+ MPWLIBS ?=
         "$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL MPWCRuntime.lib"
         "$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC MPW.Lib" ;
 
- MPWNLLIBS ?=
+ MPWNLLIBS ?=
         "$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL MPWCRuntime.lib"
         "$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC MPW(NL).Lib" ;
-
+
     SIOUXHDRS ?= ;
-
- SIOUXLIBS ?=
+
+ SIOUXLIBS ?=
         "$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL RuntimePPC.lib"
- "$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL SIOUX.PPC.Lib"
+ "$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL SIOUX.PPC.Lib"
         "$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC.Lib" ;
 
     C++ ?= mwcppc ;
@@ -814,15 +809,15 @@
     DOTDOT ?= "::" ;
     HDRS ?= $(MACHDRS) $(MPWHDRS) ;
     LINK ?= mwlinkppc ;
- LINKFLAGS ?= -mpwtool -warn ;
- LINKLIBS ?= $(MACLIBS) $(MPWLIBS) ;
+ LINKFLAGS ?= -mpwtool -warn ;
+ LINKLIBS ?= $(MACLIBS) $(MPWLIBS) ;
     MKDIR ?= newfolder ;
     MV ?= rename -y ;
     NOARSCAN ?= true ;
     OPTIM ?= ;
     RM ?= delete -y ;
     SLASH ?= ":" ;
- STDHDRS ?= ;
+ STDHDRS ?= ;
     SUFLIB ?= .lib ;
     SUFOBJ ?= .o ;
 }
@@ -842,7 +837,7 @@
     NOARSCAN ?= true ;
     STDHDRS ?= /boot/develop/headers/posix ;
 }
-else if $(OS) = BEOS
+else if $(OS) = BEOS
 {
     BINDIR ?= /boot/apps ;
     CC ?= gcc ;
@@ -865,7 +860,7 @@
     CC ?= gcc ;
     YACC ?= "bison -y" ;
 
- case CYGWIN :
+ case CYGWIN :
     CC ?= gcc ;
     CCFLAGS += -D__cygwin__ ;
     LEX ?= flex ;
@@ -895,12 +890,12 @@
     C++ ?= gcc ;
     CCFLAGS += -D_POSIX_SOURCE ;
     HDRS += /usr/include ;
- RANLIB ?= "" ;
+ RANLIB ?= "" ;
     NOARSCAN ?= true ;
     NOARUPDATE ?= true ;
 
     case MVS :
- RANLIB ?= "" ;
+ RANLIB ?= "" ;
 
     case NEXT :
     AR ?= libtool -o ;
@@ -1017,7 +1012,7 @@
     YACCFILES ?= ;
     YACCFLAGS ?= ;
 
- HDRPATTERN =
+ HDRPATTERN =
             "^[ ]*#[ ]*include[ ]*[<\"]([^\">]*)[\">].*$" ;
 
     OSFULL = $(OS)$(OSVER)$(OSPLAT) $(OS)$(OSPLAT) $(OS)$(OSVER) $(OS) ;
@@ -1137,7 +1132,7 @@
     DEPENDS $(<) : $(>) ;
 }
 
-rule GenFile
+rule GenFile
 {
     local _t = [ FGristSourceFiles $(<) ] ;
     local _s = [ FAppendSuffix $(>[1]) : $(SUFEXE) ] ;
@@ -1188,11 +1183,11 @@
 
     local s ;
 
- if $(HDRGRIST)
- {
+ if $(HDRGRIST)
+ {
         s = $(>:G=$(HDRGRIST)) ;
- } else {
- s = $(>) ;
+ } else {
+ s = $(>) ;
     }
 
     INCLUDES $(<) : $(s) ;
@@ -1236,14 +1231,14 @@
         Install $(tt) : $(i) ;
         Chmod $(tt) ;
 
- if $(OWNER) && $(CHOWN)
- {
+ if $(OWNER) && $(CHOWN)
+ {
         Chown $(tt) ;
         OWNER on $(tt) = $(OWNER) ;
         }
 
- if $(GROUP) && $(CHGRP)
- {
+ if $(GROUP) && $(CHGRP)
+ {
         Chgrp $(tt) ;
         GROUP on $(tt) = $(GROUP) ;
         }
@@ -1344,11 +1339,11 @@
         MakeLocate $(_l) $(_l)($(_s:BS)) : $(LOCATE_TARGET) ;
     }
 
- if $(NOARSCAN)
- {
+ if $(NOARSCAN)
+ {
         # If we can't scan the library to timestamp its contents,
         # we have to just make the library depend directly on the
- # on-disk object files.
+ # on-disk object files.
 
         DEPENDS $(_l) : $(_s) ;
     }
@@ -1446,12 +1441,12 @@
 
     NOUPDATE $(<) ;
 
- if $(<) != $(DOT) && ! $($(<)-mkdir)
+ if $(<) != $(DOT) && ! $($(<)-mkdir)
     {
         local s ;
 
         # Cheesy gate to prevent multiple invocations on same dir
- # MkDir1 has the actions
+ # MkDir1 has the actions
         # Arrange for jam dirs
 
         $(<)-mkdir = true ;
@@ -1508,7 +1503,7 @@
     # the regexp pattern $(HDRSCAN) and then invokes $(HDRRULE)
     # with the scanned file as the target and the found headers
     # as the sources. HDRSEARCH is the value of SEARCH used for
- # the found header files. Finally, if jam must deal with
+ # the found header files. Finally, if jam must deal with
     # header files of the same name in different directories,
     # they can be distinguished with HDRGRIST.
 
@@ -1603,17 +1598,17 @@
     #
     # SubDir TOP d1 [ ... ]
     #
- # This introduces a Jamfile that is part of a project tree
+ # This introduces a Jamfile that is part of a project tree
     # rooted at $(TOP). It (only once) includes the project-specific
     # rules file $(TOP)/Jamrules and then sets search & locate stuff.
     #
- # If the variable $(TOPRULES) is set (where TOP is the first arg
+ # If the variable $(TOPRULES) is set (where TOP is the first arg
     # to SubDir), that file is included instead of $(TOP)/Jamrules.
     #
- # d1 ... are the directory elements that lead to this directory
+ # d1 ... are the directory elements that lead to this directory
     # from $(TOP). We construct the system dependent path from these
     # directory elements in order to set search&locate stuff.
- #
+ #
 
     if ! $($(<[1]))
     {
@@ -1703,7 +1698,7 @@
     }
 
     _s = [ FDirName $(<[2-]) ] ;
-
+
     include $(JAMFILE:D=$(_s):R=$($(<[1]))) ;
 }
 
@@ -1761,13 +1756,13 @@
     return $(_g) ;
 }
 
-rule FGristFiles
+rule FGristFiles
 {
     if ! $(SOURCE_GRIST)
     {
         return $(<) ;
     }
- else
+ else
     {
         return $(<:G=$(SOURCE_GRIST)) ;
     }
@@ -1775,7 +1770,7 @@
 
 rule FGristSourceFiles
 {
- # Produce source file name name with grist in it,
+ # Produce source file name name with grist in it,
     # if SOURCE_GRIST is set.
 
     # Leave header files alone, because they have a global
@@ -1785,7 +1780,7 @@
     {
         return $(<) ;
     }
- else
+ else
     {
         local _i _o ;
 
@@ -1826,10 +1821,10 @@
     # path (using ../../ etc) back to that root directory.
     # Sets result in $(<)
 
- if ! $(<[1])
+ if ! $(<[1])
     {
         _d = $(DOT) ;
- }
+ }
     else
     {
         _d = $(DOTDOT) ;
@@ -1877,7 +1872,7 @@
     else if $(MAC)
     {
         _s = $(DOT) ;
-
+
         for _i in $(<)
         {
             _s = $(_i:R=$(_s)) ;
@@ -1885,7 +1880,7 @@
     }
     else
     {
- _s = $(<[1]) ;
+ _s = $(<[1]) ;
 
         for _i in $(<[2-])
         {
@@ -1940,7 +1935,7 @@
 rule FAppendSuffix
 {
        # E.g., "FAppendSuffix yacc lex foo.bat : $(SUFEXE) ;"
- # returns (yacc,lex,foo.bat) on Unix and
+ # returns (yacc,lex,foo.bat) on Unix and
        # (yacc.exe,lex.exe,foo.bat) on NT.
 
     if $(>)
@@ -1968,7 +1963,7 @@
 
 rule unmakeDir
 {
- if $(>[1]:D) && $(>[1]:D) != $(>[1]) && $(>[1]:D) != \\\\
+ if $(>[1]:D) && $(>[1]:D) != $(>[1]) && $(>[1]:D) != \\\\
     {
         unmakeDir $(<) : $(>[1]:D) $(>[1]:BS) $(>[2-]) ;
     }
@@ -1982,10 +1977,10 @@
 rule FConvertToSlashes
 {
   local _d, _s, _i ;
-
+
   unmakeDir _d : $(<) ;
-
- _s = $(_d[1]) ;
+
+ _s = $(_d[1]) ;
   for _i in $(_d[2-])
   {
     _s = $(_s)/$(_i) ;
@@ -2064,7 +2059,7 @@
 
 actions Install
 {
- $(CP) $(>) $(<)
+ $(CP) $(>) $(<)
 }
 
 actions Lex
@@ -2079,7 +2074,7 @@
 
 actions Link bind NEEDLIBS
 {
- $(LINK) $(LINKFLAGS) -o $(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)
+ $(LINK) $(LINKFLAGS) -o $(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)
 }
 
 actions MkDir1
@@ -2252,7 +2247,7 @@
   {
     actions together piecemeal Archive
     {
- $(AR) $(<) +-$(>)
+ $(AR) $(<) +-$(>)
     }
 
     actions Cc
@@ -2279,7 +2274,7 @@
   {
     actions together piecemeal Archive
     {
- $(AR) /out:$(<) $(>)
+ $(AR) /out:$(<) $(>)
     }
 
     actions Cc
@@ -2303,13 +2298,13 @@
 # OS2 specific actions
 #
 
-else if $(OS2)
+else if $(OS2)
 {
   if $(TOOLSET) = WATCOM
   {
     actions together piecemeal Archive
     {
- $(AR) $(<) +-$(>)
+ $(AR) $(<) +-$(>)
     }
 
     actions Cc
@@ -2357,19 +2352,19 @@
 
 else if $(VMS)
 {
- actions updated together piecemeal Archive
+ actions updated together piecemeal Archive
     {
     lib/replace $(<) $(>[1]) ,$(>[2-])
     }
 
     actions Cc
- {
- $(CC)/obj=$(<) $(CCFLAGS) $(OPTIM) $(SLASHINC) $(>)
+ {
+ $(CC)/obj=$(<) $(CCFLAGS) $(OPTIM) $(SLASHINC) $(>)
     }
 
     actions C++
- {
- $(C++)/obj=$(<) $(C++FLAGS) $(OPTIM) $(SLASHINC) $(>)
+ {
+ $(C++)/obj=$(<) $(C++FLAGS) $(OPTIM) $(SLASHINC) $(>)
     }
 
     actions piecemeal together existing Clean
@@ -2409,7 +2404,7 @@
 
 else if $(MAC)
 {
- actions together Archive
+ actions together Archive
     {
     $(LINK) -library -o $(<) $(>)
     }
@@ -2417,13 +2412,13 @@
     actions Cc
     {
     set -e MWCincludes $(MACINC)
- $(CC) -o $(<) $(CCFLAGS) $(OPTIM) $(>)
+ $(CC) -o $(<) $(CCFLAGS) $(OPTIM) $(>)
     }
 
     actions C++
- {
+ {
     set -e MWCincludes $(MACINC)
- $(CC) -o $(<) $(C++FLAGS) $(OPTIM) $(>)
+ $(CC) -o $(<) $(C++FLAGS) $(OPTIM) $(>)
     }
 
     actions Link bind NEEDLIBS

Modified: branches/CMake/release/tools/jam/src/boost-jam.spec
==============================================================================
--- branches/CMake/release/tools/jam/src/boost-jam.spec (original)
+++ branches/CMake/release/tools/jam/src/boost-jam.spec 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,64 +1,64 @@
-Name: boost-jam
-Version: 3.1.16
-Summary: Build tool
-Release: 1
-Source: %{name}-%{version}.tgz
-
-License: Boost Software License, Version 1.0
-Group: Development/Tools
-URL: http://www.boost.org
-Packager: Rene Rivera <grafik_at_[hidden]>
-BuildRoot: /var/tmp/%{name}-%{version}.root
-
-%description
-Boost Jam is a build tool based on FTJam, which in turn is based on
-Perforce Jam. It contains significant improvements made to facilitate
-its use in the Boost Build System, but should be backward compatible
-with Perforce Jam.
-
-Authors:
- Perforce Jam : Cristopher Seiwald
- FT Jam : David Turner
- Boost Jam : David Abrahams
-
-Copyright:
- /+\
- +\ Copyright 1993-2002 Christopher Seiwald and Perforce Software, Inc.
- \+/
- License is hereby granted to use this software and distribute it
- freely, as long as this copyright notice is retained and modifications
- are clearly marked.
- ALL WARRANTIES ARE HEREBY DISCLAIMED.
-
-Also:
- Copyright 2001-2006 David Abrahams.
- Copyright 2002-2006 Rene Rivera.
- Copyright 2003-2006 Vladimir Prus.
-
- Distributed under the Boost Software License, Version 1.0.
- (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
-
-%prep
-%setup -n %{name}-%{version}
-
-%build
-LOCATE_TARGET=bin ./build.sh $BOOST_JAM_TOOLSET
-
-%install
-rm -rf $RPM_BUILD_ROOT
-mkdir -p $RPM_BUILD_ROOT%{_bindir}
-mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
-install -m 755 bin/bjam $RPM_BUILD_ROOT%{_bindir}/bjam-%{version}
-ln -sf bjam-%{version} $RPM_BUILD_ROOT%{_bindir}/bjam
-cp -R *.html *.png *.css LICENSE*.txt images jam $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
-
-find $RPM_BUILD_ROOT -name CVS -type d -exec rm -r {} \;
-
-%files
-%defattr(-,root,root)
-%attr(755,root,root) /usr/bin/*
-%doc %{_docdir}/%{name}-%{version}
-
-
-%clean
-rm -rf $RPM_BUILD_ROOT
+Name: boost-jam
+Version: 3.1.17
+Summary: Build tool
+Release: 1
+Source: %{name}-%{version}.tgz
+
+License: Boost Software License, Version 1.0
+Group: Development/Tools
+URL: http://www.boost.org
+Packager: Rene Rivera <grafik_at_[hidden]>
+BuildRoot: /var/tmp/%{name}-%{version}.root
+
+%description
+Boost Jam is a build tool based on FTJam, which in turn is based on
+Perforce Jam. It contains significant improvements made to facilitate
+its use in the Boost Build System, but should be backward compatible
+with Perforce Jam.
+
+Authors:
+ Perforce Jam : Cristopher Seiwald
+ FT Jam : David Turner
+ Boost Jam : David Abrahams
+
+Copyright:
+ /+\
+ +\ Copyright 1993-2002 Christopher Seiwald and Perforce Software, Inc.
+ \+/
+ License is hereby granted to use this software and distribute it
+ freely, as long as this copyright notice is retained and modifications
+ are clearly marked.
+ ALL WARRANTIES ARE HEREBY DISCLAIMED.
+
+Also:
+ Copyright 2001-2006 David Abrahams.
+ Copyright 2002-2006 Rene Rivera.
+ Copyright 2003-2006 Vladimir Prus.
+
+ Distributed under the Boost Software License, Version 1.0.
+ (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+
+%prep
+%setup -n %{name}-%{version}
+
+%build
+LOCATE_TARGET=bin ./build.sh $BOOST_JAM_TOOLSET
+
+%install
+rm -rf $RPM_BUILD_ROOT
+mkdir -p $RPM_BUILD_ROOT%{_bindir}
+mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
+install -m 755 bin/bjam $RPM_BUILD_ROOT%{_bindir}/bjam-%{version}
+ln -sf bjam-%{version} $RPM_BUILD_ROOT%{_bindir}/bjam
+cp -R *.html *.png *.css LICENSE*.txt images jam $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
+
+find $RPM_BUILD_ROOT -name CVS -type d -exec rm -r {} \;
+
+%files
+%defattr(-,root,root)
+%attr(755,root,root) /usr/bin/*
+%doc %{_docdir}/%{name}-%{version}
+
+
+%clean
+rm -rf $RPM_BUILD_ROOT

Modified: branches/CMake/release/tools/jam/src/build.bat
==============================================================================
--- branches/CMake/release/tools/jam/src/build.bat (original)
+++ branches/CMake/release/tools/jam/src/build.bat 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,7 +20,8 @@
 ECHO ### You can specify the toolset as the argument, i.e.:
 ECHO ### .\build.bat msvc
 ECHO ###
-ECHO ### Toolsets supported by this script are: borland, como, gcc, gcc-nocygwin, intel-win32, metrowerks, mingw, msvc, vc7, vc8
+ECHO ### Toolsets supported by this script are: borland, como, gcc, gcc-nocygwin,
+ECHO ### intel-win32, metrowerks, mingw, msvc, vc7, vc8, vc9
 ECHO ###
 set _error_=
 endlocal
@@ -40,7 +41,7 @@
 
 
 :Test_Option
-REM Tests wether the given string is in the form of an option: "--*"
+REM Tests whether the given string is in the form of an option: "--*"
 setlocal & endlocal
 setlocal
 set test=%1

Modified: branches/CMake/release/tools/jam/src/build.jam
==============================================================================
--- branches/CMake/release/tools/jam/src/build.jam (original)
+++ branches/CMake/release/tools/jam/src/build.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,7 +13,7 @@
 ./ ?= "" ;
 
 # Info about what we are building.
-_VERSION_ = 3 1 16 ;
+_VERSION_ = 3 1 17 ;
 NAME = boost-jam ;
 VERSION = $(_VERSION_:J=$(.)) ;
 RELEASE = 1 ;

Modified: branches/CMake/release/tools/jam/src/builtins.c
==============================================================================
--- branches/CMake/release/tools/jam/src/builtins.c (original)
+++ branches/CMake/release/tools/jam/src/builtins.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -66,7 +66,7 @@
 RULE* bind_builtin( char* name, LIST*(*f)(PARSE*, FRAME*), int flags, char** args )
 {
     argument_list* arg_list = 0;
-
+
     if ( args )
     {
         arg_list = args_new();
@@ -130,7 +130,7 @@
         bind_builtin( "REBUILDS" ,
                       builtin_rebuilds, 0, args );
     }
-
+
     duplicate_rule( "Leaves" ,
       bind_builtin( "LEAVES" ,
                     builtin_flags, T_FLAG_LEAVES, 0 ) );
@@ -174,7 +174,7 @@
                     builtin_flags, T_FLAG_FAIL_EXPECTED, 0 );
 
       bind_builtin( "RMOLD" , builtin_flags, T_FLAG_RMOLD, 0 );
-
+
       {
           char * args[] = { "targets", "*", 0 };
           bind_builtin( "UPDATE", builtin_update, 0, args );
@@ -315,7 +315,7 @@
 
 #ifdef HAVE_PYTHON
       {
- char * args[] = { "python-module", ":", "function", ":",
+ char * args[] = { "python-module", ":", "function", ":",
                             "jam-module", ":", "rule-name", 0 };
           bind_builtin( "PYTHON_IMPORT_RULE",
               builtin_python_import_rule, 0, args );
@@ -410,8 +410,8 @@
 /*
  * builtin_depends() - DEPENDS/INCLUDES rule
  *
- * The DEPENDS builtin rule appends each of the listed sources on the
- * dependency list of each of the listed targets. It binds both the
+ * The DEPENDS builtin rule appends each of the listed sources on the
+ * dependency list of each of the listed targets. It binds both the
  * targets and sources as TARGETs.
  */
 
@@ -483,7 +483,7 @@
 /*
  * builtin_echo() - ECHO rule
  *
- * The ECHO builtin rule echoes the targets to the user. No other
+ * The ECHO builtin rule echoes the targets to the user. No other
  * actions are taken.
  */
 
@@ -494,6 +494,7 @@
 {
         list_print( lol_get( frame->args, 0 ) );
         printf( "\n" );
+ fflush( stdout );
         return L0;
 }
 
@@ -559,7 +560,8 @@
         *p = tolower(*p);
     }
 }
-
+
+
 static void
 builtin_glob_back(
     void *closure,
@@ -568,12 +570,12 @@
     time_t time )
 {
     PROFILE_ENTER(BUILTIN_GLOB_BACK);
-
+
     struct globbing *globbing = (struct globbing *)closure;
     LIST *l;
     PATHNAME f;
     string buf[1];
-
+
     /* Null out directory for matching. */
     /* We wish we had file_dirscan() pass up a PATHNAME. */
 
@@ -607,19 +609,19 @@
             break;
         }
     }
-
+
     string_free( buf );
-
+
     PROFILE_EXIT(BUILTIN_GLOB_BACK);
 }
 
 static LIST* downcase_list( LIST *in )
 {
     LIST* result = 0;
-
+
     string s[1];
     string_new( s );
-
+
     while (in)
     {
         string_copy( s, in->string );
@@ -627,7 +629,7 @@
         result = list_append( result, list_new( 0, newstr( s->value ) ) );
         in = in->next;
     }
-
+
     string_free( s );
     return result;
 }
@@ -639,16 +641,16 @@
 {
     LIST *l = lol_get( frame->args, 0 );
     LIST *r = lol_get( frame->args, 1 );
-
+
     struct globbing globbing;
 
     globbing.results = L0;
     globbing.patterns = r;
-
+
     globbing.case_insensitive
 # if defined( OS_NT ) || defined( OS_CYGWIN )
        = l; /* always case-insensitive if any files can be found */
-# else
+# else
        = lol_get( frame->args, 2 );
 # endif
 
@@ -656,7 +658,7 @@
     {
         globbing.patterns = downcase_list( r );
     }
-
+
     for( ; l; l = list_next( l ) )
         file_dirscan( l->string, builtin_glob_back, &globbing );
 
@@ -686,9 +688,10 @@
     if (time > 0)
         return list_new(list, newstr(file));
     else
- return list;
+ return list;
 }
 
+
 LIST* glob1(char* dirname, char* pattern)
 {
     LIST* plist = list_new(L0, pattern);
@@ -696,11 +699,11 @@
 
     globbing.results = L0;
     globbing.patterns = plist;
-
+
     globbing.case_insensitive
 # if defined( OS_NT ) || defined( OS_CYGWIN )
        = plist; /* always case-insensitive if any files can be found */
-# else
+# else
        = L0;
 # endif
 
@@ -708,7 +711,7 @@
     {
         globbing.patterns = downcase_list( plist );
     }
-
+
     file_dirscan( dirname, builtin_glob_back, &globbing );
 
     if ( globbing.case_insensitive )
@@ -731,13 +734,13 @@
     {
         /* No metacharacters. Check if the path exists. */
         result = append_if_exists(result, pattern);
- }
+ }
     else
     {
         /* Have metacharacters in the pattern. Split into dir/name */
         PATHNAME path[1];
- path_parse(pattern, path);
-
+ path_parse(pattern, path);
+
         if (path->f_dir.ptr)
         {
             LIST* dirs = L0;
@@ -746,7 +749,7 @@
             string_new(dirname);
             string_new(basename);
 
- string_append_range(dirname, path->f_dir.ptr,
+ string_append_range(dirname, path->f_dir.ptr,
                                 path->f_dir.ptr + path->f_dir.len);
 
             path->f_grist.ptr = 0;
@@ -763,12 +766,12 @@
             {
                 dirs = list_new(dirs, dirname->value);
             }
-
+
             if (has_wildcards(basename->value))
             {
                 for(; dirs; dirs = dirs->next)
                 {
- result = list_append(result,
+ result = list_append(result,
                                          glob1(dirs->string, basename->value));
                 }
             }
@@ -779,9 +782,9 @@
 
                 /** No wildcard in basename. */
                 for(; dirs; dirs = dirs->next)
- {
+ {
                     path->f_dir.ptr = dirs->string;
- path->f_dir.len = strlen(dirs->string);
+ path->f_dir.len = strlen(dirs->string);
                     path_build(path, file_string, 0);
 
                     result = append_if_exists(result, file_string->value);
@@ -805,6 +808,7 @@
     return result;
 }
 
+
 LIST *
 builtin_glob_recursive(
     PARSE *parse,
@@ -821,6 +825,7 @@
     return result;
 }
 
+
 /*
  * builtin_match() - MATCH rule, regexp matching
  */
@@ -832,7 +837,7 @@
 {
         LIST *l, *r;
         LIST *result = 0;
-
+
         string buf[1];
         string_new(buf);
 
@@ -873,28 +878,30 @@
         return result;
 }
 
+
 LIST *
 builtin_hdrmacro(
     PARSE *parse,
     FRAME *frame )
 {
   LIST* l = lol_get( frame->args, 0 );
-
+
   for ( ; l; l = list_next(l) )
   {
     TARGET* t = bindtarget( l->string );
 
- /* scan file for header filename macro definitions */
+ /* scan file for header filename macro definitions */
     if ( DEBUG_HEADER )
       printf( "scanning '%s' for header file macro definitions\n",
               l->string );
 
     macro_headers( t );
   }
-
+
   return L0;
 }
 
+
 /* builtin_rulenames() - RULENAMES ( MODULE ? )
  *
  * Returns a list of the non-local rule names in the given MODULE. If
@@ -926,6 +933,7 @@
     return result;
 }
 
+
 /* builtin_varnames() - VARNAMES ( MODULE ? )
  *
  * Returns a list of the variable names in the given MODULE. If
@@ -933,6 +941,7 @@
  * global module.
  */
 
+
 /* helper function for builtin_varnames(), below. Used with
  * hashenumerate, will prepend the key of each element to a list
  */
@@ -943,6 +952,7 @@
     *result = list_new( *result, copystr( *(char**)np ) );
 }
 
+
 static struct hash *get_running_module_vars()
 {
     struct hash *dummy, *vars = NULL;
@@ -954,6 +964,7 @@
     return vars;
 }
 
+
 LIST *
 builtin_varnames(
     PARSE *parse,
@@ -965,8 +976,8 @@
 
     /* The running module _always_ has its 'variables' member set to NULL
      * due to the way enter_module and var_hash_swap work */
- struct hash *vars =
- source_module == frame->module ?
+ struct hash *vars =
+ source_module == frame->module ?
             get_running_module_vars() : source_module->variables;
 
     if ( vars )
@@ -974,6 +985,7 @@
     return result;
 }
 
+
 /*
  * builtin_delete_module() - MODULE ?
  *
@@ -992,28 +1004,27 @@
     return result;
 }
 
+
 static void unknown_rule( FRAME *frame, char* key, char *module_name, char *rule_name )
 {
     backtrace_line( frame->prev );
     printf( "%s error: rule \"%s\" unknown in module \"%s\"\n", key, rule_name, module_name );
     backtrace( frame->prev );
     exit(1);
-
 }
 
+
 /*
  * builtin_import() - IMPORT ( SOURCE_MODULE ? : SOURCE_RULES * : TARGET_MODULE ? : TARGET_RULES * : LOCALIZE ? )
  *
- * The IMPORT rule imports rules from the SOURCE_MODULE into the
- * TARGET_MODULE as local rules. If either SOURCE_MODULE or
- * TARGET_MODULE is not supplied, it refers to the global
- * module. SOURCE_RULES specifies which rules from the SOURCE_MODULE
- * to import; TARGET_RULES specifies the names to give those rules in
- * TARGET_MODULE. If SOURCE_RULES contains a name which doesn't
- * correspond to a rule in SOURCE_MODULE, or if it contains a
- * different number of items than TARGET_RULES, an error is issued.
- * if LOCALIZE is specified, the rules will be executed in
- * TARGET_MODULE, with corresponding access to its module local
+ * The IMPORT rule imports rules from the SOURCE_MODULE into the TARGET_MODULE
+ * as local rules. If either SOURCE_MODULE or TARGET_MODULE is not supplied, it
+ * refers to the global module. SOURCE_RULES specifies which rules from the
+ * SOURCE_MODULE to import; TARGET_RULES specifies the names to give those rules
+ * in TARGET_MODULE. If SOURCE_RULES contains a name which doesn't correspond to
+ * a rule in SOURCE_MODULE, or if it contains a different number of items than
+ * TARGET_RULES, an error is issued. If LOCALIZE is specified, the rules will be
+ * executed in TARGET_MODULE, with corresponding access to its module local
  * variables.
  */
 LIST *
@@ -1029,9 +1040,9 @@
 
     module_t* target_module = bindmodule( target_module_list ? target_module_list->string : 0 );
     module_t* source_module = bindmodule( source_module_list ? source_module_list->string : 0 );
-
+
     LIST *source_name, *target_name;
-
+
     for ( source_name = source_rules, target_name = target_rules;
           source_name && target_name;
           source_name = list_next( source_name )
@@ -1039,20 +1050,20 @@
     {
         RULE r_, *r = &r_, *imported;
         r_.name = source_name->string;
-
+
         if ( !source_module->rules
              || !hashcheck( source_module->rules, (HASHDATA**)&r )
             )
         {
             unknown_rule( frame, "IMPORT", source_module->name, r_.name );
         }
-
+
         imported = import_rule( r, target_module, target_name->string );
         if ( localize )
             imported->module = target_module;
         imported->exported = 0; /* this rule is really part of some other module; just refer to it here, but don't let it out */
     }
-
+
     if ( source_name || target_name )
     {
         backtrace_line( frame->prev );
@@ -1086,21 +1097,21 @@
     LIST *rules = lol_get( frame->args, 1 );
 
     module_t* m = bindmodule( module_list ? module_list->string : 0 );
-
-
+
     for ( ; rules; rules = list_next( rules ) )
     {
         RULE r_, *r = &r_;
         r_.name = rules->string;
-
+
         if ( !m->rules || !hashcheck( m->rules, (HASHDATA**)&r ) )
             unknown_rule( frame, "EXPORT", m->name, r_.name );
-
+
         r->exported = 1;
     }
     return L0;
 }
 
+
 /* Retrieve the file and line number that should be indicated for a
  * given procedure in debug output or an error backtrace
  */
@@ -1125,6 +1136,7 @@
     }
 }
 
+
 void print_source_line( PARSE* p )
 {
     char* file;
@@ -1137,6 +1149,7 @@
         printf( "%s:%d:", file, line);
 }
 
+
 /* Print a single line of error backtrace for the given frame */
 void backtrace_line( FRAME *frame )
 {
@@ -1151,6 +1164,7 @@
     }
 }
 
+
 /* Print the entire backtrace from the given frame to the Jambase
  * which invoked it.
  */
@@ -1163,6 +1177,7 @@
     }
 }
 
+
 /* A Jam version of the backtrace function, taking no arguments and
  * returning a list of quadruples: FILENAME LINE MODULE. RULENAME
  * describing each frame. Note that the module-name is always
@@ -1189,6 +1204,7 @@
     return result;
 }
 
+
 /*
  * builtin_caller_module() - CALLER_MODULE ( levels ? )
  *
@@ -1216,19 +1232,20 @@
     else
     {
         LIST* result;
-
+
         string name;
         string_copy( &name, frame->module->name );
         string_pop_back( &name );
 
         result = list_new( L0, newstr(name.value) );
-
+
         string_free( &name );
-
+
         return result;
     }
 }
 
+
 /*
  * Return the current working directory.
  *
@@ -1240,10 +1257,11 @@
     return pwd();
 }
 
+
 /*
  * Adds targets to the list of target that jam will attempt to update.
  */
-LIST*
+LIST*
 builtin_update( PARSE *parse, FRAME *frame)
 {
     LIST* result = list_copy( L0, targets_to_update() );
@@ -1254,6 +1272,7 @@
     return result;
 }
 
+
 LIST*
 builtin_search_for_target( PARSE *parse, FRAME *frame )
 {
@@ -1264,6 +1283,7 @@
     return list_new( L0, t->name );
 }
 
+
 LIST *builtin_import_module( PARSE *parse, FRAME *frame )
 {
     LIST* arg1 = lol_get( frame->args, 0 );
@@ -1285,6 +1305,7 @@
     return imported_modules(source_module);
 }
 
+
 LIST *builtin_instance( PARSE *parse, FRAME *frame )
 {
     LIST* arg1 = lol_get( frame->args, 0 );
@@ -1297,6 +1318,7 @@
     return L0;
 }
 
+
 LIST*
 builtin_sort( PARSE *parse, FRAME *frame )
 {
@@ -1305,113 +1327,131 @@
     return list_sort(arg1);
 }
 
+
 LIST *builtin_normalize_path( PARSE *parse, FRAME *frame )
 {
     LIST* arg = lol_get( frame->args, 0 );
 
- /* First, we iterate over all '/'-separated elements, starting from
- the end of string. If we see '..', we remove previous path elements.
- If we see '.', we remove it.
- The removal is done by putting '\1' in the string. After all the string
- is processed, we do a second pass, removing '\1' characters.
+ /* First, we iterate over all '/'-separated elements, starting from the end
+ of string. If we see a '..', we remove a previous path elements. If we
+ see '.', we remove it. The removal is done by overwriting data using '\1'
+ in the string. After the whole string has been processed, we do a second
+ pass, removing all the entered '\1' characters.
     */
-
- string in[1], out[1], tmp[1];
- char* end; /* Last character of the part of string still to be processed. */
- char* current; /* Working pointer. */
- int dotdots = 0; /* Number of '..' elements seen and not processed yet. */
- int rooted = arg->string[0] == '/';
- char* result;
 
- /* Make a copy of input: we should not change it. */
+ string in[1];
+ string out[1];
+ char * end; /* Last character of the part of string still to be processed. */
+ char * current; /* Working pointer. */
+ int dotdots = 0; /* Number of '..' elements seen and not processed yet. */
+ int rooted = 0;
+ char * result = 0;
+
+ /* Make a copy of input: we should not change it. Prepend a '/' before it as
+ a guard for the algorithm later on and remember whether it was originally
+ rooted or not. */
+
     string_new(in);
- if (!rooted)
- string_push_back(in, '/');
- while (arg)
- {
- string_append(in, arg->string);
- arg = list_next(arg);
- if (arg)
- string_append(in, "/");
+ string_push_back(in, '/');
+ for (; arg; arg = list_next(arg) )
+ {
+ if (arg->string[0] != '\0')
+ {
+ if (in->size == 1)
+ rooted = ( (arg->string[0] == '/' ) || (arg->string[0] == '\\') );
+ else
+ string_append(in, "/");
+ string_append(in, arg->string);
+ }
     }
 
- /* Convert \ into /. On windows, paths using / and \ are equivalent,
- and we want this function to obtain canonic representation. */
- for (current = in->value, end = in->value + in->size;
- current < end; ++current)
+ /* Convert \ into /. On Windows, paths using / and \ are equivalent, and we
+ want this function to obtain a canonic representation. */
+
+ for (current = in->value, end = in->value + in->size;
+ current < end; ++current)
         if (*current == '\\')
             *current = '/';
 
-
- end = in->value + in->size - 1;
- current = end;
-
- for(;end >= in->value;) {
+ /* Now we remove any extra path elements by overwriting them with '\1'
+ characters and cound how many more unused '..' path elements there are
+ remaining. Note that each remaining path element with always starts with
+ a '/' character. */
+
+ for (end = in->value + in->size - 1; end >= in->value; )
+ {
         /* Set 'current' to the next occurence of '/', which always exists. */
- for(current = end; *current != '/'; --current)
+ for (current = end; *current != '/'; --current)
             ;
-
- if (current == end && current != in->value) {
- /* Found a trailing slash. Remove it. */
- *current = '\1';
- } else if (current == end && *(current+1) == '/') {
- /* Found duplicated slash. Remove it. */
+
+ if (current == end)
+ {
+ /* Found a trailing or duplicate '/'. Remove it. */
             *current = '\1';
- } else if (end - current == 1 && strncmp(current, "/.", 2) == 0) {
- /* Found '/.'. Drop them all. */
+ }
+ else if (end - current == 1 && *(current+1) == '.')
+ {
+ /* Found '/.'. Remove them all. */
             *current = '\1';
- *(current+1) = '\1';
- } else if (end - current == 2 && strncmp(current, "/..", 3) == 0) {
- /* Found '/..' */
+ *(current+1) = '\1';
+ }
+ else if (end - current == 2 && *(current+1) == '.' && *(current+2) == '.')
+ {
+ /* Found '/..'. Remove them all. */
             *current = '\1';
- *(current+1) = '\1';
- *(current+2) = '\1';
+ *(current+1) = '\1';
+ *(current+2) = '\1';
             ++dotdots;
- } else if (dotdots) {
- char* p = current;
+ }
+ else if (dotdots)
+ {
             memset(current, '\1', end-current+1);
             --dotdots;
- }
+ }
         end = current-1;
     }
 
-
- string_new(tmp);
- while(dotdots--)
- string_append(tmp, "/..");
- string_append(tmp, in->value);
- string_copy(in, tmp->value);
- string_free(tmp);
-
-
     string_new(out);
- /* The resulting path is either empty or has '/' as the first significant
- element. If the original path was not rooted, we need to drop first '/'.
- If the original path was rooted, and we've got empty path, need to add '/'
- */
- if (!rooted) {
- current = strchr(in->value, '/');
- if (current)
- *current = '\1';
- }
-
+
+ /* Now we know that we need to add exactly dotdots '..' path elements to the
+ front and that our string is either empty or has a '/' as its first
+ significant character. If we have any dotdots remaining then the passed
+ path must not have been rooted or else it is invalid we return an empty
+ list. */
+
+ if (dotdots)
+ {
+ if (rooted) return L0;
+ do
+ string_append(out, "/..");
+ while (--dotdots);
+ }
+
+ /* Now we actually remove all the path characters marked for removal. */
+
     for (current = in->value; *current; ++current)
         if (*current != '\1')
             string_push_back(out, *current);
 
-
- result = newstr(out->size ? out->value : (rooted ? "/" : "."));
- string_free(in);
+ /* Here we know that our string contains no '\1' characters and is either
+ empty or has a '/' as its initial character. If the original path was not
+ rooted and we have a non-empty path we need to drop the initial '/'. If
+ the original path was rooted and we have an empty path we need to add
+ back the '/'. */
+
+ result = newstr( out->size ? out->value + !rooted : (rooted ? "/" : "."));
+
     string_free(out);
+ string_free(in);
 
     return list_new(0, result);
-
 }
 
+
 LIST *builtin_native_rule( PARSE *parse, FRAME *frame )
 {
- LIST* module_name = lol_get( frame->args, 0 );
- LIST* rule_name = lol_get( frame->args, 1 );
+ LIST* module_name = lol_get( frame->args, 0 );
+ LIST* rule_name = lol_get( frame->args, 1 );
 
     module_t* module = bindmodule(module_name->string);
 
@@ -1424,19 +1464,20 @@
     else
     {
         backtrace_line( frame->prev );
- printf( "error: no native rule \"%s\" defined in module \"%s\"\n",
+ printf( "error: no native rule \"%s\" defined in module \"%s\"\n",
                 n.name, module->name);
         backtrace( frame->prev );
         exit(1);
     }
- return L0;
+ return L0;
 }
 
+
 LIST *builtin_has_native_rule( PARSE *parse, FRAME *frame )
 {
- LIST* module_name = lol_get( frame->args, 0 );
- LIST* rule_name = lol_get( frame->args, 1 );
- LIST* version = lol_get( frame->args, 2 );
+ LIST* module_name = lol_get( frame->args, 0 );
+ LIST* rule_name = lol_get( frame->args, 1 );
+ LIST* version = lol_get( frame->args, 2 );
 
     module_t* module = bindmodule(module_name->string);
 
@@ -1448,14 +1489,14 @@
         if (np->version == expected_version)
             return list_new(0, newstr("true"));
     }
- return L0;
+ return L0;
 }
 
 
 LIST *builtin_user_module( PARSE *parse, FRAME *frame )
 {
- LIST* module_name = lol_get( frame->args, 0 );
- for(; module_name; module_name = module_name->next)
+ LIST* module_name = lol_get( frame->args, 0 );
+ for(; module_name; module_name = module_name->next)
     {
         module_t* m = bindmodule( module_name->string);
         m->user_module = 1;
@@ -1466,7 +1507,7 @@
 LIST *builtin_nearest_user_location( PARSE *parse, FRAME *frame )
 {
     LIST* result = 0;
- FRAME* nearest_user_frame =
+ FRAME* nearest_user_frame =
         frame->module->user_module ? frame : frame->prev_user;
 
     if (nearest_user_frame)
@@ -1502,10 +1543,10 @@
 LIST *builtin_python_import_rule( PARSE *parse, FRAME *frame )
 {
     static int first_time = 1;
- char* python_module = lol_get( frame->args, 0 )->string;
- char* python_function = lol_get( frame->args, 1 )->string;
- char* jam_module = lol_get( frame->args, 2 )->string;
- char* jam_rule = lol_get( frame->args, 3 )->string;
+ char* python_module = lol_get( frame->args, 0 )->string;
+ char* python_function = lol_get( frame->args, 1 )->string;
+ char* jam_module = lol_get( frame->args, 2 )->string;
+ char* jam_rule = lol_get( frame->args, 3 )->string;
 
    PyObject *pName, *pModule, *pDict, *pFunc;
 
@@ -1525,9 +1566,9 @@
            exit_module( outer_module );
            enter_module( root_module());
        }
-
+
        extra = var_get("EXTRA_PYTHONPATH");
-
+
        if ( outer_module != root_module())
        {
             exit_module( root_module());
@@ -1541,14 +1582,14 @@
            string_append(buf, "import sys\nsys.path.append(\"");
            string_append(buf, extra->string);
            string_append(buf, "\")\n");
- PyRun_SimpleString(buf->value);
- string_free(buf);
- }
+ PyRun_SimpleString(buf->value);
+ string_free(buf);
+ }
    }
 
 
    pName = PyString_FromString(python_module);
-
+
    pModule = PyImport_Import(pName);
    Py_DECREF(pName);
 
@@ -1587,7 +1628,7 @@
 {
     LIST* l = L0;
     lol_init( lol );
-
+
     while ( elements && *elements )
     {
         if ( !strcmp( *elements, ":" ) )
@@ -1601,7 +1642,7 @@
         }
         ++elements;
     }
-
+
     if ( l != L0 )
         lol_add( lol, l );
 }
@@ -1619,7 +1660,7 @@
     LIST *result;
     PARSE *p;
     char* rulename;
-
+
     /* Build up the list of arg lists */
 
     frame_init( inner );
@@ -1639,7 +1680,7 @@
             PyObject* a = PyTuple_GetItem(args, i);
             if (PyString_Check(a))
             {
- lol_add(inner->args,
+ lol_add(inner->args,
                         list_new(0, newstr(PyString_AsString(a))));
             }
             else if (PySequence_Check(a))
@@ -1661,7 +1702,7 @@
                     Py_DECREF(e);
                 }
                 lol_add(inner->args, l);
- }
+ }
         }
     }
 
@@ -1689,15 +1730,15 @@
 
     if (!PyArg_ParseTuple(args, "ssO:import_rule", &module, &rule, &func))
         return NULL;
-
+
     if (!PyCallable_Check(func))
     {
- PyErr_SetString(PyExc_RuntimeError,
+ PyErr_SetString(PyExc_RuntimeError,
                         "Non-callable object passed to bjam.import_rule");
         return NULL;
     }
-
- m = bindmodule(module);
+
+ m = bindmodule(*module ? module : 0);
     r = bindrule(rule, m);
 
     /* Make pFunc owned */
@@ -1715,7 +1756,7 @@
    - an action body
    - a list of variable that will be bound inside the action
    - integer flags.
- Defines an action on bjam side.
+ Defines an action on bjam side.
 */
 PyObject*
 bjam_define_action(PyObject* self, PyObject *args)
@@ -1729,17 +1770,17 @@
     int n;
     int i;
 
- if (!PyArg_ParseTuple(args, "ssO!i:define_action", &name, &body,
+ if (!PyArg_ParseTuple(args, "ssO!i:define_action", &name, &body,
                           &PyList_Type, &bindlist_python, &flags))
         return NULL;
-
+
     n = PyList_Size (bindlist_python);
     for (i = 0; i < n; ++i)
     {
         PyObject *next = PyList_GetItem(bindlist_python, i);
         if (!PyString_Check(next))
         {
- PyErr_SetString(PyExc_RuntimeError,
+ PyErr_SetString(PyExc_RuntimeError,
                             "bind list has non-string type");
             return NULL;
         }
@@ -1749,7 +1790,7 @@
     new_rule_actions(root_module(), name, newstr(body), bindlist, flags);
 
     Py_INCREF(Py_None);
- return Py_None;
+ return Py_None;
 }
 
 /* Returns the value of a variable in root Jam module. */
@@ -1789,7 +1830,7 @@
         char buf[32];
         get_source_line( f->procedure, &file, &line );
         sprintf( buf, "%d", line );
-
+
         /* PyTuple_SetItem steals reference. */
         PyTuple_SetItem(tuple, 0, PyString_FromString(file));
         PyTuple_SetItem(tuple, 1, PyString_FromString(buf));
@@ -1805,9 +1846,80 @@
 #endif
 
 #ifdef HAVE_POPEN
+
 #if defined(_MSC_VER) || defined(__BORLANDC__)
- #define popen _popen
+ #define popen windows_popen_wrapper
     #define pclose _pclose
+
+ /*
+ * This wrapper is a workaround for a funny _popen() feature on Windows
+ * where it eats external quotes in some cases. The bug seems to be related
+ * to the quote stripping functionality used by the Windows cmd.exe
+ * interpreter when its /S is not specified.
+ *
+ * Cleaned up quote from the cmd.exe help screen as displayed on Windows XP
+ * SP3:
+ *
+ * 1. If all of the following conditions are met, then quote characters on
+ * the command line are preserved:
+ *
+ * - no /S switch
+ * - exactly two quote characters
+ * - no special characters between the two quote characters, where
+ * special is one of: &<>()@^|
+ * - there are one or more whitespace characters between the two quote
+ * characters
+ * - the string between the two quote characters is the name of an
+ * executable file.
+ *
+ * 2. Otherwise, old behavior is to see if the first character is a quote
+ * character and if so, strip the leading character and remove the last
+ * quote character on the command line, preserving any text after the
+ * last quote character.
+ *
+ * This causes some commands containing quotes not to be executed correctly.
+ * For example:
+ *
+ * "\Long folder name\aaa.exe" --name="Jurko" --no-surname
+ *
+ * would get its outermost quotes stripped and would be executed as:
+ *
+ * \Long folder name\aaa.exe" --name="Jurko --no-surname
+ *
+ * which would report an error about '\Long' not being a valid command.
+ *
+ * cmd.exe help seems to indicate it would be enough to add an extra space
+ * character in front of the command to avoid this but this does not work,
+ * most likely due to the shell first stripping all leading whitespace
+ * characters from the command.
+ *
+ * Solution implemented here is to quote the whole command in case it
+ * contains any quote characters. Note thought this will not work correctly
+ * should Windows ever 'fix' this feature.
+ * (03.06.2008.) (Jurko)
+ */
+ static FILE * windows_popen_wrapper( char * command, char * mode )
+ {
+ int extra_command_quotes_needed = ( strchr( command, '"' ) != 0 );
+ string quoted_command;
+ FILE * result;
+
+ if ( extra_command_quotes_needed )
+ {
+ string_new( &quoted_command );
+ string_append( &quoted_command, "\"" );
+ string_append( &quoted_command, command );
+ string_append( &quoted_command, "\"" );
+ command = quoted_command.value;
+ }
+
+ result = _popen( command, "r" );
+
+ if ( extra_command_quotes_needed )
+ string_free( &quoted_command );
+
+ return result;
+ }
 #endif
 
 LIST *builtin_shell( PARSE *parse, FRAME *frame )
@@ -1821,7 +1933,7 @@
     int exit_status = -1;
     int exit_status_opt = 0;
     int no_output_opt = 0;
-
+
     /* Process the variable args options. */
     {
         int a = 1;
@@ -1840,14 +1952,17 @@
         }
     }
 
- string_new( &s );
-
- fflush(NULL);
+ /* The following fflush() call seems to be indicated as a workaround for
+ popen() bug on POSIX implementations realted to synhronizing input stream
+ positions for the called and the calling process. */
+ fflush( NULL );
 
- p = popen(command->string, "r");
+ p = popen( command->string, "r" );
     if ( p == NULL )
         return L0;
 
+ string_new( &s );
+
     while ( (ret = fread(buffer, sizeof(char), sizeof(buffer)-1, p)) > 0 )
     {
         buffer[ret] = 0;
@@ -1857,19 +1972,19 @@
         }
     }
 
- exit_status = pclose(p);
+ exit_status = pclose( p );
 
     /* The command output is returned first. */
     result = list_new( L0, newstr(s.value) );
     string_free(&s);
-
+
     /* The command exit result next. */
     if ( exit_status_opt )
     {
- sprintf (buffer, "%d", exit_status);
+ sprintf( buffer, "%d", exit_status );
         result = list_new( result, newstr( buffer ) );
     }
-
+
     return result;
 }
 

Modified: branches/CMake/release/tools/jam/src/compile.c
==============================================================================
--- branches/CMake/release/tools/jam/src/compile.c (original)
+++ branches/CMake/release/tools/jam/src/compile.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -372,8 +372,9 @@
 
         pushsettings( t->settings );
         /* We don't expect that file to be included is generated by some
- action. Therefore, pass 0 as third argument. */
- t->boundname = search( t->name, &t->time, 0 );
+ action. Therefore, pass 0 as third argument.
+ If the name resolves to directory, let it error out. */
+ t->boundname = search( t->name, &t->time, 0, 0 );
         popsettings( t->settings );
 
         parse_file( t->boundname, frame );
@@ -1117,13 +1118,12 @@
 }
 
 /*
- * Call the given rule with the specified parameters.
- * The parameters should be of LIST* and end with NULL pointer.
- * This differs from the 'evaluate_rule' in that frame
- * for called rule is prepared in 'call_rule'.
+ * Call the given rule with the specified parameters. The parameters should be
+ * of type LIST* and end with a NULL pointer. This differs from 'evaluate_rule'
+ * in that frame for the called rule is prepared inside 'call_rule'.
  *
- * This function is usefull when builtin rule (in C) wants to
- * call another rule, which might be implemented in Jam.
+ * This function is useful when a builtin rule (in C) wants to call another
+ * rule which might be implemented in Jam.
  */
 LIST *call_rule( char *rulename, FRAME* caller_frame, ...)
 {

Modified: branches/CMake/release/tools/jam/src/execnt.c
==============================================================================
--- branches/CMake/release/tools/jam/src/execnt.c (original)
+++ branches/CMake/release/tools/jam/src/execnt.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -479,12 +479,12 @@
     /* wait for a command to complete, while snarfing up any output */
     do
     {
+ /* check for a complete command, briefly */
+ i = try_wait(500);
         /* read in the output of all running commands */
         read_output();
         /* close out pending debug style dialogs */
         close_alerts();
- /* check for a complete command, briefly */
- if ( i < 0 ) i = try_wait(500);
         /* check if a command ran out of time */
         if ( i < 0 ) i = try_kill_one();
     }
@@ -499,7 +499,7 @@
         /* the time data for the command */
         record_times(cmdtab[i].pi.hProcess, &time);
 
- /* Clear the temp file */
+ /* clear the temp file */
         if ( cmdtab[i].tempfile_bat )
         {
             unlink( cmdtab[ i ].tempfile_bat );
@@ -507,6 +507,9 @@
             cmdtab[i].tempfile_bat = NULL;
         }
 
+ /* find out the process exit code */
+ GetExitCodeProcess( cmdtab[i].pi.hProcess, &cmdtab[i].exitcode );
+
         /* the dispossition of the command */
         if( intr )
             rstat = EXEC_CMD_INTR;
@@ -884,43 +887,39 @@
     }
 }
 
-/* waits for a single child process command to complete, or the
- timeout, whichever is first. returns the index of the completed
- command, or -1. */
+/* Waits for a single child process command to complete, or the timeout,
+ whichever comes first. Returns the index of the completed command in the
+ cmdtab array, or -1. */
 static int try_wait(int timeoutMillis)
 {
- int i, num_active, waiting;
+ int i;
+ int num_active;
+ int wait_api_result;
     HANDLE active_handles[MAXJOBS];
     int active_procs[MAXJOBS];
 
- for ( waiting = 1; waiting; )
+ /* prepare a list of all active processes to wait for */
+ for ( num_active = 0, i = 0; i < globs.jobs; ++i )
     {
- /* find the first completed child process */
- for ( num_active = 0, i = 0; i < globs.jobs; ++i )
+ if ( cmdtab[i].pi.hProcess )
         {
- /* if we have an already dead process, return it. */
- cmdtab[i].exitcode = 0;
- if ( GetExitCodeProcess( cmdtab[i].pi.hProcess, &cmdtab[i].exitcode ) )
- {
- if ( STILL_ACTIVE != cmdtab[i].exitcode )
- {
- return i;
- }
- }
- /* it's running, add it to the list to watch for */
             active_handles[num_active] = cmdtab[i].pi.hProcess;
             active_procs[num_active] = i;
- num_active += 1;
- }
-
- /* wait for a child to complete, or for our timeout window to expire */
- if ( waiting )
- {
- WaitForMultipleObjects( num_active, active_handles, FALSE, timeoutMillis );
- waiting = 0;
+ ++num_active;
         }
     }
-
+
+ /* wait for a child to complete, or for our timeout window to expire */
+ wait_api_result = WaitForMultipleObjects( num_active, active_handles,
+ FALSE, timeoutMillis );
+ if ( ( WAIT_OBJECT_0 <= wait_api_result ) &&
+ ( wait_api_result < WAIT_OBJECT_0 + num_active ) )
+ {
+ /* terminated process detected - return its index */
+ return active_procs[ wait_api_result - WAIT_OBJECT_0 ];
+ }
+
+ /* timeout */
     return -1;
 }
 
@@ -941,9 +940,7 @@
                 close_alert(cmdtab[i].pi.hProcess);
                 /* we have a "runaway" job, kill it */
                 kill_process_tree(0,cmdtab[i].pi.hProcess);
- /* and return it as complete, with the failure code */
- GetExitCodeProcess( cmdtab[i].pi.hProcess, &cmdtab[i].exitcode );
- /* mark it as a timeout */
+ /* and return it marked as a timeout */
                 cmdtab[i].exit_reason = EXIT_TIMEOUT;
                 return i;
             }

Modified: branches/CMake/release/tools/jam/src/execunix.c
==============================================================================
--- branches/CMake/release/tools/jam/src/execunix.c (original)
+++ branches/CMake/release/tools/jam/src/execunix.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -25,6 +25,10 @@
 # ifdef USE_EXECUNIX
 # include <sys/times.h>
 
+# if defined(__APPLE__)
+# define NO_VFORK
+# endif
+
 # ifdef NO_VFORK
 # define vfork() fork()
 # endif
@@ -211,6 +215,8 @@
 
         if ((cmdtab[slot].pid = vfork()) == 0)
            {
+ int pid = getpid();
+
             close(out[0]);
             close(err[0]);
 
@@ -239,17 +245,19 @@
                 r_limit.rlim_max = globs.timeout;
                 setrlimit(RLIMIT_CPU, &r_limit);
             }
- setpgid(cmdtab[slot].pid, cmdtab[slot].pid);
-
- execvp( argv[0], argv );
- _exit(127);
- }
+ setpgid(pid,pid);
+ execvp( argv[0], argv );
+ perror( "execvp" );
+ _exit(127);
+ }
         else if( cmdtab[slot].pid == -1 )
         {
             perror( "vfork" );
             exit( EXITBAD );
         }
 
+ setpgid(cmdtab[slot].pid, cmdtab[slot].pid);
+
         /* close write end of pipes */
         close(out[1]);
         close(err[1]);
@@ -458,7 +466,7 @@
                 if (FD_ISSET(cmdtab[i].fd[OUT], &fds))
                     out = read_descriptor(i, OUT);
 
- if (FD_ISSET(cmdtab[i].fd[ERR], &fds))
+ if ((globs.pipe_action != 0) && (FD_ISSET(cmdtab[i].fd[ERR], &fds)))
                     err = read_descriptor(i, ERR);
 
                 /* if feof on either descriptor, then we're done */

Modified: branches/CMake/release/tools/jam/src/expand.c
==============================================================================
--- branches/CMake/release/tools/jam/src/expand.c (original)
+++ branches/CMake/release/tools/jam/src/expand.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -749,7 +749,12 @@
     assert(l != 0);
     assert(list_next(l) == 0);
     # ifdef OS_CYGWIN
- assert( !strcmp( l->string, "c:\\foo\\bar" ) );
+ /* On some installations of cygwin the drive letter is expanded to other case. */
+ /* This has been reported to be the case if cygwin has been installed to C:\ */
+ /* as opposed to C:\cygwin */
+ /* Since case of the drive letter will not matter, we allow for both. */
+ assert( 0 == strcmp( l->string, "c:\\foo\\bar" )
+ || 0 == strcmp( l->string, "C:\\foo\\bar") );
     # else
     assert( !strcmp( l->string, cygpath ) );
     # endif

Modified: branches/CMake/release/tools/jam/src/filent.c
==============================================================================
--- branches/CMake/release/tools/jam/src/filent.c (original)
+++ branches/CMake/release/tools/jam/src/filent.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -87,18 +87,33 @@
         int ret;
         struct _finddata_t finfo[1];
         LIST* files = L0;
+ int d_length = strlen( d->name );
 
         memset( (char *)&f, '\0', sizeof( f ) );
         
         f.f_dir.ptr = d->name;
- f.f_dir.len = strlen(d->name);
-
+ f.f_dir.len = d_length;
+
         /* Now enter contents of directory */
 
- string_copy( filespec, *d->name ? d->name : "." );
- string_append( filespec, "/*" );
+ /* Prepare file search specification for the findfirst() API. */
+ if ( d_length == 0 )
+ string_copy( filespec, ".\\*" );
+ else
+ {
+ /*
+ * We can not simply assume the given folder name will never include
+ * its trailing path separator or otherwise we would not support the
+ * Windows root folder specified without its drive letter, i.e. '\'.
+ */
+ char trailingChar = d->name[ d_length - 1 ] ;
+ string_copy( filespec, d->name );
+ if ( ( trailingChar != '\\' ) && ( trailingChar != '/' ) )
+ string_append( filespec, "\\" );
+ string_append( filespec, "*" );
+ }
 
- if( DEBUG_BINDSCAN )
+ if ( DEBUG_BINDSCAN )
             printf( "scan directory %s\n", dir );
 
         # if defined(__BORLANDC__) && __BORLANDC__ < 0x550

Modified: branches/CMake/release/tools/jam/src/filesys.c
==============================================================================
--- branches/CMake/release/tools/jam/src/filesys.c (original)
+++ branches/CMake/release/tools/jam/src/filesys.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -19,6 +19,7 @@
             printf( "dir = '%.*s' ", f->f_dir.len, f->f_dir.ptr );
         if( f->f_base.len )
             printf( "base = '%.*s' ", f->f_base.len, f->f_base.ptr );
+ printf( "\n" );
     }
         
     /* Start with the grist. If the current grist isn't */

Modified: branches/CMake/release/tools/jam/src/filesys.h
==============================================================================
--- branches/CMake/release/tools/jam/src/filesys.h (original)
+++ branches/CMake/release/tools/jam/src/filesys.h 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -41,8 +41,13 @@
 } ;
 typedef struct file_info_t file_info_t ;
 
+/* Creates a pointer to information about file
+ 'filename', creating it as necessary. If
+ created, the structure will be default initialized. */
 file_info_t * file_info(char * filename);
 
+/* Returns information about a file, queries the OS
+ if needed. */
 file_info_t * file_query(char * filename);
 
 void file_done();

Modified: branches/CMake/release/tools/jam/src/hcache.c
==============================================================================
--- branches/CMake/release/tools/jam/src/hcache.c (original)
+++ branches/CMake/release/tools/jam/src/hcache.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -80,9 +80,11 @@
             TARGET *t = bindtarget( hcachevar->string );
 
             pushsettings( t->settings );
- /* Don't expect cache file to be generated, so pass 0
- as third argument to search. */
- t->boundname = search( t->name, &t->time, 0 );
+ /* Don't expect cache file to be generated, so pass 0
+ as third argument to search.
+ Expect the location to be specified via LOCATE,
+ so pass 0 as fourth arugment. */
+ t->boundname = search( t->name, &t->time, 0, 0 );
             popsettings( t->settings );
 
             if (hcachevar) {

Modified: branches/CMake/release/tools/jam/src/jambase.c
==============================================================================
--- branches/CMake/release/tools/jam/src/jambase.c (original)
+++ branches/CMake/release/tools/jam/src/jambase.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -34,7 +34,7 @@
 "{\n",
 "if $(.bootstrap-file)\n",
 "{\n",
-"EXIT \"Error: Illegal attempt to re-bootstrap the build system by invoking\" ;\n",
+"ECHO \"Error: Illegal attempt to re-bootstrap the build system by invoking\" ;\n",
 "ECHO ;\n",
 "ECHO \" 'boost-build\" $(dir) \";'\" ;\n",
 "ECHO ;\n",
@@ -42,8 +42,7 @@
 "}\n",
 "BOOST_BUILD_PATH = $(dir:R=$(.boost-build-file:D)) $(BOOST_BUILD_PATH) ;\n",
 "_poke .ENVIRON : BOOST_BUILD_PATH : $(BOOST_BUILD_PATH) ;\n",
-"local bootstrap-file =\n",
-"[ GLOB $(BOOST_BUILD_PATH) : bootstrap.jam ] ;\n",
+"local bootstrap-file = [ GLOB $(BOOST_BUILD_PATH) : bootstrap.jam ] ;\n",
 ".bootstrap-file = $(bootstrap-file[1]) ;\n",
 "if ! $(.bootstrap-file)\n",
 "{\n",
@@ -60,13 +59,13 @@
 "}\n",
 "if [ MATCH .*(--debug-configuration).* : $(ARGV) ]\n",
 "{\n",
-"ECHO \"notice: loading Boost.Build from\" \n",
+"ECHO \"notice: loading Boost.Build from\"\n",
 "[ NORMALIZE_PATH $(.bootstrap-file:D) ] ;\n",
 "}\n",
 "include $(.bootstrap-file) ;\n",
 "}\n",
 "if [ MATCH .*(bjam).* : $(ARGV[1]:BL) ]\n",
-"|| $(BOOST_ROOT) # A temporary measure so Jam works with Boost.Build v1\n",
+"|| $(BOOST_ROOT) # A temporary measure so Jam works with Boost.Build v1.\n",
 "{\n",
 "local search-path = $(BOOST_BUILD_PATH) $(BOOST_ROOT) ;\n",
 "local boost-build-files =\n",
@@ -88,9 +87,9 @@
 "ECHO \"and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: \"$(search-path:J=\", \")\".\" ;\n",
 "EXIT \"Please consult the documentation at 'http://www.boost.org'.\" ;\n",
 "}\n",
-"if [ MATCH .*(--debug-configuration).* : $(ARGV) ] \n",
+"if [ MATCH .*(--debug-configuration).* : $(ARGV) ]\n",
 "{\n",
-"ECHO \"notice: found boost-build.jam at\" \n",
+"ECHO \"notice: found boost-build.jam at\"\n",
 "[ NORMALIZE_PATH $(.boost-build-file) ] ;\n",
 "}\n",
 "include $(.boost-build-file) ;\n",
@@ -217,7 +216,7 @@
 "C++FLAGS ?= $(CCFLAGS) ;\n",
 "LINK ?= $(CC) ;\n",
 "LINKFLAGS ?= $(CCFLAGS) ;\n",
-"LINKLIBS ?= \n",
+"LINKLIBS ?=\n",
 "\\\"$(VISUALC16)\\\\lib\\\\mlibce.lib\\\"\n",
 "\\\"$(VISUALC16)\\\\lib\\\\oldnames.lib\\\"\n",
 ";\n",
@@ -478,7 +477,7 @@
 "SUFEXE ?= .exe ;\n",
 "SUFLIB ?= .olb ;\n",
 "SUFOBJ ?= .obj ;\n",
-"switch $(OS) \n",
+"switch $(OS)\n",
 "{\n",
 "case OPENVMS : CCFLAGS ?= /stand=vaxc ;\n",
 "case VMS : LINKLIBS ?= sys$library:vaxcrtl.olb/lib ;\n",
@@ -495,16 +494,16 @@
 "MACLIBS ?=\n",
 "\"$(CW):MacOS Support:Universal:Libraries:StubLibraries:Interfacelib\"\n",
 "\"$(CW):MacOS Support:Universal:Libraries:StubLibraries:Mathlib\" ;\n",
-"MPWLIBS ?= \n",
+"MPWLIBS ?=\n",
 "\"$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL MPWCRuntime.lib\"\n",
 "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC MPW.Lib\" ;\n",
-"MPWNLLIBS ?= \n",
+"MPWNLLIBS ?=\n",
 "\"$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL MPWCRuntime.lib\"\n",
 "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC MPW(NL).Lib\" ;\n",
 "SIOUXHDRS ?= ;\n",
-"SIOUXLIBS ?= \n",
+"SIOUXLIBS ?=\n",
 "\"$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL RuntimePPC.lib\"\n",
-"\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL SIOUX.PPC.Lib\" \n",
+"\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL SIOUX.PPC.Lib\"\n",
 "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC.Lib\" ;\n",
 "C++ ?= mwcppc ;\n",
 "C++FLAGS ?= -w off -nomapcr ;\n",
@@ -515,15 +514,15 @@
 "DOTDOT ?= \"::\" ;\n",
 "HDRS ?= $(MACHDRS) $(MPWHDRS) ;\n",
 "LINK ?= mwlinkppc ;\n",
-"LINKFLAGS ?= -mpwtool -warn ; \n",
-"LINKLIBS ?= $(MACLIBS) $(MPWLIBS) ; \n",
+"LINKFLAGS ?= -mpwtool -warn ;\n",
+"LINKLIBS ?= $(MACLIBS) $(MPWLIBS) ;\n",
 "MKDIR ?= newfolder ;\n",
 "MV ?= rename -y ;\n",
 "NOARSCAN ?= true ;\n",
 "OPTIM ?= ;\n",
 "RM ?= delete -y ;\n",
 "SLASH ?= \":\" ;\n",
-"STDHDRS ?= ; \n",
+"STDHDRS ?= ;\n",
 "SUFLIB ?= .lib ;\n",
 "SUFOBJ ?= .o ;\n",
 "}\n",
@@ -543,7 +542,7 @@
 "NOARSCAN ?= true ;\n",
 "STDHDRS ?= /boot/develop/headers/posix ;\n",
 "}\n",
-"else if $(OS) = BEOS \n",
+"else if $(OS) = BEOS\n",
 "{\n",
 "BINDIR ?= /boot/apps ;\n",
 "CC ?= gcc ;\n",
@@ -564,7 +563,7 @@
 "case AMIGA :\n",
 "CC ?= gcc ;\n",
 "YACC ?= \"bison -y\" ;\n",
-"case CYGWIN : \n",
+"case CYGWIN :\n",
 "CC ?= gcc ;\n",
 "CCFLAGS += -D__cygwin__ ;\n",
 "LEX ?= flex ;\n",
@@ -589,11 +588,11 @@
 "C++ ?= gcc ;\n",
 "CCFLAGS += -D_POSIX_SOURCE ;\n",
 "HDRS += /usr/include ;\n",
-"RANLIB ?= \"\" ; \n",
+"RANLIB ?= \"\" ;\n",
 "NOARSCAN ?= true ;\n",
 "NOARUPDATE ?= true ;\n",
 "case MVS :\n",
-"RANLIB ?= \"\" ; \n",
+"RANLIB ?= \"\" ;\n",
 "case NEXT :\n",
 "AR ?= libtool -o ;\n",
 "RANLIB ?= \"\" ;\n",
@@ -691,7 +690,7 @@
 "YACC ?= ;\n",
 "YACCFILES ?= ;\n",
 "YACCFLAGS ?= ;\n",
-"HDRPATTERN = \n",
+"HDRPATTERN =\n",
 "\"^[ ]*#[ ]*include[ ]*[<\\\"]([^\\\">]*)[\\\">].*$\" ;\n",
 "OSFULL = $(OS)$(OSVER)$(OSPLAT) $(OS)$(OSPLAT) $(OS)$(OSVER) $(OS) ;\n",
 "DEPENDS all : shell files lib exe obj ;\n",
@@ -777,7 +776,7 @@
 "{\n",
 "DEPENDS $(<) : $(>) ;\n",
 "}\n",
-"rule GenFile \n",
+"rule GenFile\n",
 "{\n",
 "local _t = [ FGristSourceFiles $(<) ] ;\n",
 "local _s = [ FAppendSuffix $(>[1]) : $(SUFEXE) ] ;\n",
@@ -803,11 +802,11 @@
 "rule HdrRule\n",
 "{\n",
 "local s ;\n",
-"if $(HDRGRIST) \n",
-"{ \n",
+"if $(HDRGRIST)\n",
+"{\n",
 "s = $(>:G=$(HDRGRIST)) ;\n",
-"} else { \n",
-"s = $(>) ; \n",
+"} else {\n",
+"s = $(>) ;\n",
 "}\n",
 "INCLUDES $(<) : $(s) ;\n",
 "SEARCH on $(s) = $(HDRSEARCH) ;\n",
@@ -831,13 +830,13 @@
 "Depends $(tt) : $(i) ;\n",
 "Install $(tt) : $(i) ;\n",
 "Chmod $(tt) ;\n",
-"if $(OWNER) && $(CHOWN) \n",
-"{ \n",
+"if $(OWNER) && $(CHOWN)\n",
+"{\n",
 "Chown $(tt) ;\n",
 "OWNER on $(tt) = $(OWNER) ;\n",
 "}\n",
-"if $(GROUP) && $(CHGRP) \n",
-"{ \n",
+"if $(GROUP) && $(CHGRP)\n",
+"{\n",
 "Chgrp $(tt) ;\n",
 "GROUP on $(tt) = $(GROUP) ;\n",
 "}\n",
@@ -910,8 +909,8 @@
 "{\n",
 "MakeLocate $(_l) $(_l)($(_s:BS)) : $(LOCATE_TARGET) ;\n",
 "}\n",
-"if $(NOARSCAN) \n",
-"{ \n",
+"if $(NOARSCAN)\n",
+"{\n",
 "DEPENDS $(_l) : $(_s) ;\n",
 "}\n",
 "else\n",
@@ -972,7 +971,7 @@
 "rule MkDir\n",
 "{\n",
 "NOUPDATE $(<) ;\n",
-"if $(<) != $(DOT) && ! $($(<)-mkdir) \n",
+"if $(<) != $(DOT) && ! $($(<)-mkdir)\n",
 "{\n",
 "local s ;\n",
 "$(<)-mkdir = true ;\n",
@@ -1157,13 +1156,13 @@
 "}\n",
 "return $(_g) ;\n",
 "}\n",
-"rule FGristFiles \n",
+"rule FGristFiles\n",
 "{\n",
 "if ! $(SOURCE_GRIST)\n",
 "{\n",
 "return $(<) ;\n",
 "}\n",
-"else \n",
+"else\n",
 "{\n",
 "return $(<:G=$(SOURCE_GRIST)) ;\n",
 "}\n",
@@ -1174,7 +1173,7 @@
 "{\n",
 "return $(<) ;\n",
 "}\n",
-"else \n",
+"else\n",
 "{\n",
 "local _i _o ;\n",
 "for _i in $(<)\n",
@@ -1201,10 +1200,10 @@
 "rule FSubDir\n",
 "{\n",
 "local _i _d ;\n",
-"if ! $(<[1]) \n",
+"if ! $(<[1])\n",
 "{\n",
 "_d = $(DOT) ;\n",
-"} \n",
+"}\n",
 "else\n",
 "{\n",
 "_d = $(DOTDOT) ;\n",
@@ -1245,7 +1244,7 @@
 "}\n",
 "else\n",
 "{\n",
-"_s = $(<[1]) ; \n",
+"_s = $(<[1]) ;\n",
 "for _i in $(<[2-])\n",
 "{\n",
 "_s = $(_i:R=$(_s)) ;\n",
@@ -1301,7 +1300,7 @@
 "}\n",
 "rule unmakeDir\n",
 "{\n",
-"if $(>[1]:D) && $(>[1]:D) != $(>[1]) && $(>[1]:D) != \\\\\\\\ \n",
+"if $(>[1]:D) && $(>[1]:D) != $(>[1]) && $(>[1]:D) != \\\\\\\\\n",
 "{\n",
 "unmakeDir $(<) : $(>[1]:D) $(>[1]:BS) $(>[2-]) ;\n",
 "}\n",
@@ -1314,7 +1313,7 @@
 "{\n",
 "local _d, _s, _i ;\n",
 "unmakeDir _d : $(<) ;\n",
-"_s = $(_d[1]) ; \n",
+"_s = $(_d[1]) ;\n",
 "for _i in $(_d[2-])\n",
 "{\n",
 "_s = $(_s)/$(_i) ;\n",
@@ -1371,7 +1370,7 @@
 "}\n",
 "actions Install\n",
 "{\n",
-"$(CP) $(>) $(<) \n",
+"$(CP) $(>) $(<)\n",
 "}\n",
 "actions Lex\n",
 "{\n",
@@ -1383,7 +1382,7 @@
 "}\n",
 "actions Link bind NEEDLIBS\n",
 "{\n",
-"$(LINK) $(LINKFLAGS) -o $(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS) \n",
+"$(LINK) $(LINKFLAGS) -o $(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n",
 "}\n",
 "actions MkDir1\n",
 "{\n",
@@ -1520,7 +1519,7 @@
 "{\n",
 "actions together piecemeal Archive\n",
 "{\n",
-"$(AR) $(<) +-$(>) \n",
+"$(AR) $(<) +-$(>)\n",
 "}\n",
 "actions Cc\n",
 "{\n",
@@ -1543,7 +1542,7 @@
 "{\n",
 "actions together piecemeal Archive\n",
 "{\n",
-"$(AR) /out:$(<) $(>) \n",
+"$(AR) /out:$(<) $(>)\n",
 "}\n",
 "actions Cc\n",
 "{\n",
@@ -1559,13 +1558,13 @@
 "}\n",
 "}\n",
 "}\n",
-"else if $(OS2) \n",
+"else if $(OS2)\n",
 "{\n",
 "if $(TOOLSET) = WATCOM\n",
 "{\n",
 "actions together piecemeal Archive\n",
 "{\n",
-"$(AR) $(<) +-$(>) \n",
+"$(AR) $(<) +-$(>)\n",
 "}\n",
 "actions Cc\n",
 "{\n",
@@ -1602,17 +1601,17 @@
 "}\n",
 "else if $(VMS)\n",
 "{\n",
-"actions updated together piecemeal Archive \n",
+"actions updated together piecemeal Archive\n",
 "{\n",
 "lib/replace $(<) $(>[1]) ,$(>[2-])\n",
 "}\n",
 "actions Cc\n",
-"{ \n",
-"$(CC)/obj=$(<) $(CCFLAGS) $(OPTIM) $(SLASHINC) $(>) \n",
+"{\n",
+"$(CC)/obj=$(<) $(CCFLAGS) $(OPTIM) $(SLASHINC) $(>)\n",
 "}\n",
 "actions C++\n",
-"{ \n",
-"$(C++)/obj=$(<) $(C++FLAGS) $(OPTIM) $(SLASHINC) $(>) \n",
+"{\n",
+"$(C++)/obj=$(<) $(C++FLAGS) $(OPTIM) $(SLASHINC) $(>)\n",
 "}\n",
 "actions piecemeal together existing Clean\n",
 "{\n",
@@ -1641,19 +1640,19 @@
 "}\n",
 "else if $(MAC)\n",
 "{\n",
-"actions together Archive \n",
+"actions together Archive\n",
 "{\n",
 "$(LINK) -library -o $(<) $(>)\n",
 "}\n",
 "actions Cc\n",
 "{\n",
 "set -e MWCincludes $(MACINC)\n",
-"$(CC) -o $(<) $(CCFLAGS) $(OPTIM) $(>) \n",
+"$(CC) -o $(<) $(CCFLAGS) $(OPTIM) $(>)\n",
 "}\n",
 "actions C++\n",
-"{ \n",
+"{\n",
 "set -e MWCincludes $(MACINC)\n",
-"$(CC) -o $(<) $(C++FLAGS) $(OPTIM) $(>) \n",
+"$(CC) -o $(<) $(C++FLAGS) $(OPTIM) $(>)\n",
 "}\n",
 "actions Link bind NEEDLIBS\n",
 "{\n",

Modified: branches/CMake/release/tools/jam/src/lists.c
==============================================================================
--- branches/CMake/release/tools/jam/src/lists.c (original)
+++ branches/CMake/release/tools/jam/src/lists.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -13,12 +13,12 @@
  *
  * This implementation essentially uses a singly linked list, but
  * guarantees that the head element of every list has a valid pointer
- * to the tail of the list, so the new elements can efficiently and
+ * to the tail of the list, so the new elements can efficiently and
  * properly be appended to the end of a list.
  *
  * To avoid massive allocation, list_free() just tacks the whole freed
  * chain onto freelist and list_new() looks on freelist first for an
- * available list struct. list_free() does not free the strings in the
+ * available list struct. list_free() does not free the strings in the
  * chain: it lazily lets list_new() do so.
  *
  * 08/23/94 (seiwald) - new list_append()
@@ -32,7 +32,7 @@
  */
 
 LIST *
-list_append(
+list_append(
         LIST *l,
         LIST *nl )
 {
@@ -59,7 +59,7 @@
  */
 
 LIST *
-list_new(
+list_new(
         LIST *head,
         char *string )
 {
@@ -102,7 +102,7 @@
  */
 
 LIST *
-list_copy(
+list_copy(
         LIST *l,
         LIST *nl )
 {
@@ -117,7 +117,7 @@
  */
 
 LIST *
-list_sublist(
+list_sublist(
         LIST *l,
         int start,
         int count )
@@ -133,82 +133,42 @@
         return nl;
 }
 
+static int str_ptr_compare(const void *va, const void *vb)
+{
+ char* a = *( (char**)va );
+ char* b = *( (char**)vb );
+ return strcmp(a, b);
+}
+
 LIST *
 list_sort(
     LIST *l)
 {
-
- LIST* first = 0;
- LIST* second = 0;
- LIST* merged = l;
- LIST* result;
+ int len, ii;
+ char** strings;
+ LIST* listp;
+ LIST* result = 0;
 
     if (!l)
         return L0;
 
- for(;;) {
-
- /* Split the list in two */
- LIST** dst = &first;
- LIST* src = merged;
-
- for(;;) {
-
- *dst = list_append(*dst, list_new(0, src->string));
-
- if (!src->next)
- break;
-
- if (strcmp(src->string, src->next->string) > 0)
- {
- if (dst == &first)
- dst = &second;
- else
- dst = &first;
- }
-
- src = src->next;
- }
+ len = list_length(l);
+ strings = (char**)BJAM_MALLOC( len * sizeof(char*) );
 
- if (merged != l)
- list_free( merged );
- merged = 0;
-
- if (second == 0) {
- result = first;
- break;
- }
+ listp = l;
+ for (ii = 0; ii < len; ++ii) {
+ strings[ii] = listp->string;
+ listp = listp->next;
+ }
 
-
- /* Merge lists 'first' and 'second' into 'merged' and free
- 'first'/'second'. */
- {
- LIST* f = first;
- LIST* s = second;
+ qsort(strings, len, sizeof(char*), str_ptr_compare);
 
- while(f && s)
- {
- if (strcmp(f->string, s->string) < 0)
- {
- merged = list_append( merged, list_new(0, f->string ));
- f = f->next;
- }
- else
- {
- merged = list_append( merged, list_new(0, s->string ));
- s = s->next;
- }
- }
-
- merged = list_copy( merged, f );
- merged = list_copy( merged, s );
- list_free( first );
- list_free( second );
- first = 0;
- second = 0;
- }
+ for (ii = 0; ii < len; ++ii) {
+ result = list_append( result, list_new(0, strings[ii]) );
     }
 
+ BJAM_FREE(strings);
+
     return result;
 }
 
@@ -251,12 +211,12 @@
 void
 list_print( LIST *l )
 {
- LIST *p = 0;
+ LIST *p = 0;
         for( ; l; p = l, l = list_next( l ) )
- if ( p )
+ if ( p )
                 printf( "%s ", p->string );
         if ( p )
- printf( "%s", p->string );
+ printf( "%s", p->string );
 }
 
 /*
@@ -274,7 +234,7 @@
         return n;
 }
 
-int
+int
 list_in(LIST* l, char* value)
 {
     for(; l; l = l->next)
@@ -283,7 +243,7 @@
     return 0;
 }
 
-LIST *
+LIST *
 list_unique( LIST *sorted_list)
 {
     LIST* result = 0;
@@ -297,7 +257,7 @@
             last_added = sorted_list;
         }
     }
- return result;
+ return result;
 }
 
 
@@ -316,7 +276,7 @@
  */
 
 void
-lol_add(
+lol_add(
         LOL *lol,
         LIST *l )
 {
@@ -344,7 +304,7 @@
  */
 
 LIST *
-lol_get(
+lol_get(
         LOL *lol,
         int i )
 {

Modified: branches/CMake/release/tools/jam/src/make.c
==============================================================================
--- branches/CMake/release/tools/jam/src/make.c (original)
+++ branches/CMake/release/tools/jam/src/make.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -289,7 +289,8 @@
         if( t->binding == T_BIND_UNBOUND && !( t->flags & T_FLAG_NOTFILE ) )
         {
             char* another_target;
- t->boundname = search( t->name, &t->time, &another_target );
+ t->boundname = search( t->name, &t->time, &another_target,
+ (t->flags & T_FLAG_ISFILE));
             /* If it was detected that this target refers to an already
                existing and bound one, we add include dependency, so that
                every target which depends on us will depend on that other

Modified: branches/CMake/release/tools/jam/src/make1.c
==============================================================================
--- branches/CMake/release/tools/jam/src/make1.c (original)
+++ branches/CMake/release/tools/jam/src/make1.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -687,7 +687,7 @@
         FRAME frame[1];
         frame_init( frame );
 
- /* args * :: $(__ACTION_RULE__[2-]) */
+ /* args * :: $(__TIMING_RULE__[2-]) */
         lol_add( frame->args, list_copy( L0, timing_rule->next ) );
 
         /* target :: the name of the target */
@@ -1145,7 +1145,8 @@
             return;
 
         pushsettings( t->settings );
- t->boundname = search( t->name, &t->time, 0 );
+ t->boundname = search( t->name, &t->time, 0,
+ (t->flags & T_FLAG_ISFILE) );
         t->binding = t->time ? T_BIND_EXISTS : T_BIND_MISSING;
         popsettings( t->settings );
 }

Modified: branches/CMake/release/tools/jam/src/modules/property-set.c
==============================================================================
--- branches/CMake/release/tools/jam/src/modules/property-set.c (original)
+++ branches/CMake/release/tools/jam/src/modules/property-set.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -15,12 +15,12 @@
     char* end = strchr(f, '>');
     string s[1];
     LIST* result;
-
+
     string_new(s);
 
     string_append_range(s, f, end+1);
     result = list_new(0, newstr(s->value));
-
+
     string_free(s);
     return result;
 }
@@ -28,22 +28,22 @@
 /*
 rule create ( raw-properties * )
 {
- raw-properties = [ sequence.unique
+ raw-properties = [ sequence.unique
         [ sequence.insertion-sort $(raw-properties) ] ] ;
-
+
     local key = $(raw-properties:J=-:E=) ;
-
- if ! $(.ps.$(key))
+
+ if ! $(.ps.$(key))
     {
         .ps.$(key) = [ new property-set $(raw-properties) ] ;
     }
- return $(.ps.$(key)) ;
+ return $(.ps.$(key)) ;
 }
 */
 
 LIST *property_set_create( PARSE *parse, FRAME *frame )
 {
- LIST* properties = lol_get( frame->args, 0 );
+ LIST* properties = lol_get( frame->args, 0 );
     LIST* sorted = 0;
     LIST* order_sensitive = 0;
     LIST* unique;
@@ -63,7 +63,7 @@
         }
         list_free(att);
     }
-
+
     sorted = list_sort(sorted);
     sorted = list_append(sorted, order_sensitive);
     unique = list_unique(sorted);
@@ -73,24 +73,24 @@
 
     string_new(var);
     string_append(var, ".ps.");
-
+
     for(tmp = unique; tmp; tmp = tmp->next) {
         string_append(var, tmp->string);
         string_push_back(var, '-');
     }
     val = var_get(var->value);
- if (val == 0)
- {
- val = call_rule("new", frame,
- list_append(list_new(0, "property-set"), unique), 0);
-
+ if (val == 0)
+ {
+ val = call_rule("new", frame,
+ list_append(list_new(0, "property-set"), unique), 0);
+
         var_set(newstr(var->value), list_copy(0, val), VAR_SET);
     }
     else
     {
         val = list_copy(0, val);
     }
-
+
     string_free(var);
     /* The 'unique' variable is freed in 'call_rule'. */
     list_free(sorted);
@@ -105,5 +105,4 @@
         char* args[] = { "raw-properties", "*", 0 };
         declare_native_rule("property-set", "create", args, property_set_create, 1);
     }
-
 }

Modified: branches/CMake/release/tools/jam/src/native.c
==============================================================================
--- branches/CMake/release/tools/jam/src/native.c (original)
+++ branches/CMake/release/tools/jam/src/native.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,15 +9,14 @@
 # define C0 (char *)0
 
 
-void declare_native_rule(char* module, char* rule, char** args,
+void declare_native_rule(char* module, char* rule, char** args,
                          LIST*(*f)(PARSE*, FRAME*), int version)
-
 {
     module_t* m = bindmodule(module);
     if (m->native_rules == 0) {
         m->native_rules = hashinit( sizeof( native_rule_t ), "native rules");
     }
-
+
     {
         native_rule_t n, *np = &n;
         n.name = rule;
@@ -25,14 +24,13 @@
         {
             n.arguments = args_new();
             lol_build( n.arguments->data, args );
- }
+ }
         else
         {
             n.arguments = 0;
         }
- n.procedure = parse_make( f, P0, P0, P0, C0, C0, 0 );
+ n.procedure = parse_make( f, P0, P0, P0, C0, C0, 0 );
         n.version = version;
         hashenter(m->native_rules, (HASHDATA**)&np);
     }
 }
-

Modified: branches/CMake/release/tools/jam/src/patchlevel.h
==============================================================================
--- branches/CMake/release/tools/jam/src/patchlevel.h (original)
+++ branches/CMake/release/tools/jam/src/patchlevel.h 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -9,9 +9,9 @@
 
 #define VERSION_MAJOR 3
 #define VERSION_MINOR 1
-#define VERSION_PATCH 16
+#define VERSION_PATCH 17
 #define VERSION_MAJOR_SYM "03"
 #define VERSION_MINOR_SYM "1"
-#define VERSION_PATCH_SYM "16"
-#define VERSION "3.1.16"
+#define VERSION_PATCH_SYM "17"
+#define VERSION "3.1.17"
 #define JAMVERSYM "JAMVERSION=3.1"

Modified: branches/CMake/release/tools/jam/src/rules.c
==============================================================================
--- branches/CMake/release/tools/jam/src/rules.c (original)
+++ branches/CMake/release/tools/jam/src/rules.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -137,6 +137,9 @@
             targethash = hashinit( sizeof( TARGET ), "targets" );
 
     /* Perforce added const everywhere. No time to merge that change. */
+#ifdef NT
+ targetname = short_path_to_long_path( (char*)targetname );
+#endif
         t->name = (char*)targetname;
 
         if( hashenter( targethash, (HASHDATA **)&t ) )
@@ -165,7 +168,7 @@
                 /* We're binding a target with explicit LOCATE. So
                    third argument is of now use: nothing will be returned
                    through it. */
- t->boundname = search( t->name, &t->time, 0 );
+ t->boundname = search( t->name, &t->time, 0, 0 );
                 popsettings(t->settings);
                 break;
             }

Modified: branches/CMake/release/tools/jam/src/search.c
==============================================================================
--- branches/CMake/release/tools/jam/src/search.c (original)
+++ branches/CMake/release/tools/jam/src/search.c 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -20,6 +20,7 @@
 # include "compile.h"
 # include "strings.h"
 # include "hash.h"
+# include "filesys.h"
 # include <string.h>
 
 typedef struct _binding {
@@ -89,7 +90,8 @@
 search(
     char *target,
     time_t *time,
- char **another_target
+ char **another_target,
+ int file
 )
 {
         PATHNAME f[1];
@@ -135,6 +137,7 @@
         while( varlist )
         {
             BINDING b, *ba = &b;
+ file_info_t *ff;
 
             f->f_root.ptr = varlist->string;
             f->f_root.len = strlen( varlist->string );
@@ -145,6 +148,7 @@
             if( DEBUG_SEARCH )
                 printf( "search %s: %s\n", target, buf->value );
 
+ ff = file_query(buf->value);
             timestamp( buf->value, time );
 
             b.binding = buf->value;
@@ -159,10 +163,13 @@
                 found = 1;
                 break;
             }
- else if( *time )
+ else if( ff && ff->time )
             {
- found = 1;
- break;
+ if (!file || ff->is_file)
+ {
+ found = 1;
+ break;
+ }
             }
 
             varlist = list_next( varlist );

Modified: branches/CMake/release/tools/jam/src/search.h
==============================================================================
--- branches/CMake/release/tools/jam/src/search.h (original)
+++ branches/CMake/release/tools/jam/src/search.h 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -8,4 +8,4 @@
  * search.h - find a target along $(SEARCH) or $(LOCATE)
  */
 
-char *search( char *target, time_t *time, char **another_target );
+char *search( char *target, time_t *time, char **another_target, int file );

Modified: branches/CMake/release/tools/jam/test/action_status.jam
==============================================================================
--- branches/CMake/release/tools/jam/test/action_status.jam (original)
+++ branches/CMake/release/tools/jam/test/action_status.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -6,23 +6,22 @@
 {
     ECHO --- Testing \"actions status results\"... ;
 
- assert "" 0 : (==) : [ SHELL "$(ARGV[1]) -f action_status.jam -sBJAM_SUBTEST=1" : exit-status : no-output ] ;
+ assert "" 0 : (==) : [ SHELL "\"$(ARGV[1])\" -f action_status.jam -sBJAM_SUBTEST=1" : exit-status : no-output ] ;
     if $(NT)
     {
- assert "" 0 : (==) : [ SHELL "$(ARGV[1]) -f action_status.jam -sBJAM_SUBTEST=1 \"-sACTION=;\"" : exit-status : no-output ] ;
+ assert "" 0 : (==) : [ SHELL "\"$(ARGV[1])\" -f action_status.jam -sBJAM_SUBTEST=1 \"-sACTION=;\"" : exit-status : no-output ] ;
     }
- assert "" 0 : (!=) : [ SHELL "$(ARGV[1]) -f action_status.jam -sBJAM_SUBTEST=1 -sACTION=invalid" : exit-status : no-output ] ;
+ assert "" 0 : (!=) : [ SHELL "\"$(ARGV[1])\" -f action_status.jam -sBJAM_SUBTEST=1 -sACTION=invalid" : exit-status : no-output ] ;
 }
 else
 {
- #~ actions .a. { $(ACTION) }
     actions quietly .a. { $(ACTION) }
-
+
     rule .a.
     {
         DEPENDS $(<) : $(>) ;
     }
-
+
     NOTFILE subtest ;
     .a. subtest_a : subtest ;
     DEPENDS all : subtest_a ;

Modified: branches/CMake/release/tools/jam/test/actions_quietly.jam
==============================================================================
--- branches/CMake/release/tools/jam/test/actions_quietly.jam (original)
+++ branches/CMake/release/tools/jam/test/actions_quietly.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -27,12 +27,12 @@
 [subtest_b] 1
 [subtest_b] 2
 ...updated 2 targets...
-" : (==) : [ SHELL "$(ARGV[1]) -f actions_quietly.jam -sBJAM_SUBTEST=1 -d2" ] ;
+" : (==) : [ SHELL "\"$(ARGV[1])\" -f actions_quietly.jam -sBJAM_SUBTEST=1 -d2" ] ;
 
     assert "...found 4 targets...
 ...updating 2 targets...
 ...updated 2 targets...
-" : (==) : [ SHELL "$(ARGV[1]) -f actions_quietly.jam -sBJAM_SUBTEST=1" ] ;
+" : (==) : [ SHELL "\"$(ARGV[1])\" -f actions_quietly.jam -sBJAM_SUBTEST=1" ] ;
 }
 else
 {

Modified: branches/CMake/release/tools/jam/test/builtin_shell.jam
==============================================================================
--- branches/CMake/release/tools/jam/test/builtin_shell.jam (original)
+++ branches/CMake/release/tools/jam/test/builtin_shell.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -2,16 +2,30 @@
 #~ Distributed under the Boost Software License, Version 1.0.
 #~ (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
+# TODO: Here we should test for the Windows popen() command unquoting bug but
+# that test will have to wait until a better testing framework is implemented.
+# To reproduce the bug try executing any command with its first parameter quoted
+# and containing spaces and having at least one other quote in the command
+# string.
+#
+# For example:
+#
+# "\Long folder name\aaa.exe" --name="Jurko" --no-surname
+#
+# would get its outermost quotes stripped and would be executed as:
+#
+# \Long folder name\aaa.exe" --name="Jurko --no-surname
+
 ECHO --- Testing SHELL builtin... ;
 
 local c = "date" ;
 if $(NT) { c = "PATH" ; }
 
-assert "" : (!=) : [ SHELL $(c) ] ;
-assert "" : (==) : [ SHELL $(c) : no-output ] ;
-assert "" 0 : (!=) : [ SHELL $(c) : exit-status ] ;
-assert "" 0 : (==) : [ SHELL $(c) : no-output : exit-status ] ;
-assert "" : (!=) : [ COMMAND $(c) ] ;
-assert "" : (==) : [ COMMAND $(c) : no-output ] ;
-assert "" 0 : (!=) : [ COMMAND $(c) : exit-status ] ;
-assert "" 0 : (==) : [ COMMAND $(c) : no-output : exit-status ] ;
+assert "" : (!=) : [ SHELL $(c) ] ;
+assert "" : (==) : [ SHELL $(c) : no-output ] ;
+assert "" 0 : (!=) : [ SHELL $(c) : exit-status ] ;
+assert "" 0 : (==) : [ SHELL $(c) : no-output : exit-status ] ;
+assert "" : (!=) : [ COMMAND $(c) ] ;
+assert "" : (==) : [ COMMAND $(c) : no-output ] ;
+assert "" 0 : (!=) : [ COMMAND $(c) : exit-status ] ;
+assert "" 0 : (==) : [ COMMAND $(c) : no-output : exit-status ] ;

Modified: branches/CMake/release/tools/jam/test/option_d2.jam
==============================================================================
--- branches/CMake/release/tools/jam/test/option_d2.jam (original)
+++ branches/CMake/release/tools/jam/test/option_d2.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -27,7 +27,7 @@
 [subtest_b] 1
 [subtest_b] 2
 ...updated 2 targets...
-" : (==) : [ SHELL "$(ARGV[1]) -f option_d2.jam -sBJAM_SUBTEST=1 -d2" ] ;
+" : (==) : [ SHELL "\"$(ARGV[1])\" -f option_d2.jam -sBJAM_SUBTEST=1 -d2" ] ;
 }
 else
 {

Modified: branches/CMake/release/tools/jam/test/option_l.jam
==============================================================================
--- branches/CMake/release/tools/jam/test/option_l.jam (original)
+++ branches/CMake/release/tools/jam/test/option_l.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,6 +5,7 @@
 if ! $(BJAM_SUBTEST)
 {
     ECHO --- Testing -l option... ;
+
     assert "...found 2 targets...
 ...updating 1 target...
 .a. sleeper
@@ -17,7 +18,7 @@
 
 ...failed .a. sleeper...
 ...failed updating 1 target...
-" : (==) : [ SHELL "$(ARGV[1]) -f option_l.jam -sBJAM_SUBTEST=1 -l2" ] ;
+" : (==) : [ SHELL "\"$(ARGV[1])\" -f option_l.jam -sBJAM_SUBTEST=1 -l2" ] ;
 }
 else
 {

Modified: branches/CMake/release/tools/jam/test/option_n.jam
==============================================================================
--- branches/CMake/release/tools/jam/test/option_n.jam (original)
+++ branches/CMake/release/tools/jam/test/option_n.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -21,7 +21,7 @@
 echo [subtest_b] 2
     
 ...updated 2 targets...
-" : (==) : [ SHELL "$(ARGV[1]) -f option_n.jam -sBJAM_SUBTEST=1 -n" ] ;
+" : (==) : [ SHELL "\"$(ARGV[1])\" -f option_n.jam -sBJAM_SUBTEST=1 -n" ] ;
 }
 else
 {

Modified: branches/CMake/release/tools/jam/test/parallel_actions.jam
==============================================================================
--- branches/CMake/release/tools/jam/test/parallel_actions.jam (original)
+++ branches/CMake/release/tools/jam/test/parallel_actions.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -41,7 +41,7 @@
 [.b] 1
 [.b] 2
 ...updated 8 targets...
-" : (==) : [ SHELL "$(ARGV[1]) -f parallel_actions.jam -sBJAM_SUBTEST=1 -j4" ] ;
+" : (==) : [ SHELL "\"$(ARGV[1])\" -f parallel_actions.jam -sBJAM_SUBTEST=1 -j4" ] ;
 }
 else
 {

Modified: branches/CMake/release/tools/jam/test/parallel_multifile_actions.jam
==============================================================================
--- branches/CMake/release/tools/jam/test/parallel_multifile_actions.jam (original)
+++ branches/CMake/release/tools/jam/test/parallel_multifile_actions.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,6 +5,7 @@
 if ! $(BJAM_SUBTEST)
 {
     ECHO --- Testing -jN parallel execution of multi-file actions... ;
+
     assert "...found 6 targets...
 ...updating 4 targets...
 .gen. g1.generated
@@ -15,7 +16,7 @@
 .use.2 u2.user
 004
 ...updated 4 targets...
-" : (==) : [ SHELL "$(ARGV[1]) -f parallel_multifile_actions.jam -sBJAM_SUBTEST=1 -j2" ] ;
+" : (==) : [ SHELL "\"$(ARGV[1])\" -f parallel_multifile_actions.jam -sBJAM_SUBTEST=1 -j2" ] ;
 }
 else
 {
@@ -41,7 +42,4 @@
     NOTFILE root ;
     DEPENDS g1.generated g2.generated : root ;
     DEPENDS all : u1.user u2.user ;
- #~ Work around... Remove when fixed...
- #~ DEPENDS g2.generated : g1.generated ;
- #~ INCLUDES g2.generated : g1.generated ;
 }

Modified: branches/CMake/release/tools/jam/test/test.jam
==============================================================================
--- branches/CMake/release/tools/jam/test/test.jam (original)
+++ branches/CMake/release/tools/jam/test/test.jam 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -5,16 +5,21 @@
 fail-count = 0 ;
 pass-count = 0 ;
 
+
 rule message ( message * )
 {
     local b = [ BACKTRACE ] ;
     ECHO "$(b[-4]):$(b[-3]):" $(message) ;
 }
+
+
 rule fail ( message * )
 {
     fail-count = [ CALC $(fail-count) + 1 ] ;
     message "error:" [FAILED] $(message) ;
 }
+
+
 rule pass ( message * )
 {
     pass-count = [ CALC $(pass-count) + 1 ] ;
@@ -23,6 +28,8 @@
         message "info:" [PASSED] $(message) ;
     }
 }
+
+
 rule assert ( expected * : test ? : obtained * )
 {
     test ?= "(==)" ;
@@ -41,8 +48,10 @@
     }
 }
 
+
 include action_status.jam ;
 include actions_quietly.jam ;
+include builtin_normalize_path.jam ;
 include builtin_shell.jam ;
 include builtin_w32_getregnames.jam ;
 include option_d2.jam ;

Modified: branches/CMake/release/tools/quickbook/detail/actions.cpp
==============================================================================
--- branches/CMake/release/tools/quickbook/detail/actions.cpp (original)
+++ branches/CMake/release/tools/quickbook/detail/actions.cpp 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,6 +12,7 @@
 #include <functional>
 #include <boost/bind.hpp>
 #include <boost/filesystem/convenience.hpp>
+#include <boost/filesystem/fstream.hpp>
 #include <boost/lexical_cast.hpp>
 #include "./actions.hpp"
 #include "./utils.hpp"
@@ -324,7 +325,11 @@
         temp.swap(str);
         phrase.swap(save);
 
- out << "<programlisting>\n";
+ //
+ // We must not place a \n after the <programlisting> tag
+ // otherwise PDF output starts code blocks with a blank line:
+ //
+ out << "<programlisting>";
         out << str;
         out << "</programlisting>\n";
     }
@@ -376,9 +381,73 @@
     {
         fs::path const img_path(std::string(first, last));
 
+ std::string attr_text;
+ if(fs::extension(img_path) == ".svg")
+ {
+ //
+ // SVG's need special handling:
+ //
+ // 1) We must set the "format" attribute, otherwise
+ // HTML generation produces code that will not display
+ // the image at all.
+ // 2) We need to set the "contentwidth" and "contentdepth"
+ // attributes, otherwise the image will be displayed inside
+ // a tiny box with scrollbars (Firefox), or else cropped to
+ // fit in a tiny box (IE7).
+ //
+ attr_text = " format=\"SVG\"";
+ //
+ // Image paths are relative to the html subdirectory:
+ //
+ fs::path img;
+ if(img_path.root_path().empty())
+ img = "html" / img_path; // relative path
+ else
+ img = img_path; // absolute path
+ //
+ // Now load the SVG file:
+ //
+ std::string svg_text;
+ fs::ifstream fs(img);
+ char c;
+ while(fs.get(c) && fs.good())
+ svg_text.push_back(c);
+ //
+ // Extract the svg header from the file:
+ //
+ std::string::size_type a, b;
+ a = svg_text.find("<svg");
+ b = svg_text.find('>', a);
+ svg_text = (a == std::string::npos) ? "" : svg_text.substr(a, b - a);
+ //
+ // Now locate the "width" and "height" attributes
+ // and borrow their values:
+ //
+ a = svg_text.find("width");
+ a = svg_text.find('=', a);
+ a = svg_text.find('\"', a);
+ b = svg_text.find('\"', a + 1);
+ if(a != std::string::npos)
+ {
+ attr_text.append(" contentwidth=");
+ attr_text.append(svg_text.begin() + a, svg_text.begin() + b + 1);
+ }
+ a = svg_text.find("height");
+ a = svg_text.find('=', a);
+ a = svg_text.find('\"', a);
+ b = svg_text.find('\"', a + 1);
+ if(a != std::string::npos)
+ {
+ attr_text.append(" contentdepth=");
+ attr_text.append(svg_text.begin() + a, svg_text.begin() + b + 1);
+ }
+ }
+
         phrase << "<inlinemediaobject>";
 
- phrase << "<imageobject><imagedata fileref=\"";
+ phrase << "<imageobject><imagedata ";
+ phrase << attr_text;
+ phrase << " fileref=\"";
         while (first != last)
             detail::print_char(*first++, phrase.get());
         phrase << "\"></imagedata></imageobject>";
@@ -615,7 +684,11 @@
             {
                 boost::spirit::file_position const pos = first.get_position();
                 detail::outerr(pos.file,pos.line)
- << "Expanding template" << std::endl;
+ << "Expanding template:" << template_info[0] << std::endl
+ << "------------------begin------------------" << std::endl
+ << body
+ << "------------------end--------------------" << std::endl
+ << std::endl;
                 actions.pop(); // restore the actions' states
                 --actions.template_depth;
                 return;
@@ -992,7 +1065,7 @@
         fs::path include_search(fs::path const & current, std::string const & name)
         {
             fs::path path(name,fs::native);
-
+
             // If the path is relative, try and resolve it.
             if (!path.is_complete())
             {
@@ -1001,7 +1074,7 @@
                 {
                     return current / path;
                 }
-
+
                 // Search in each of the include path locations.
                 BOOST_FOREACH(std::string const & p, include_path)
                 {
@@ -1013,7 +1086,7 @@
                     }
                 }
             }
-
+
             return path;
         }
     }

Modified: branches/CMake/release/tools/quickbook/doc/html/index.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/index.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/index.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,9 +3,9 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Quickbook 1.4</title>
 <link rel="stylesheet" href="../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="index.html" title="Quickbook 1.4">
-<link rel="next" href="quickbook/intro.html" title="Introduction">
+<link rel="next" href="quickbook/intro.html" title=" Introduction">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -34,7 +34,7 @@
 <div><p class="copyright">Copyright © 2002, 2004, 2006 Joel de Guzman,
       Eric Niebler</p></div>
 <div><div class="legalnotice">
-<a name="id2625934"></a><p>
+<a name="id385774"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -70,7 +70,7 @@
 </div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: March 15, 2008 at 14:07:42 GMT</small></p></td>
+<td align="left"><p><small>Last revised: May 21, 2008 at 03:54:31 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/change_log.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/change_log.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/change_log.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Change Log</title>
+<title> Change Log</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../index.html" title="Quickbook 1.4">
 <link rel="up" href="../index.html" title="Quickbook 1.4">
-<link rel="prev" href="intro.html" title="Introduction">
-<link rel="next" href="syntax.html" title="Syntax Summary">
+<link rel="prev" href="intro.html" title=" Introduction">
+<link rel="next" href="syntax.html" title=" Syntax Summary">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,12 +24,11 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="quickbook.change_log"></a><a class="link" href="change_log.html" title="Change Log"> Change Log</a>
-</h2></div></div></div>
-<a name="quickbook.change_log.version_1_3"></a><h4>
-<a name="id2586434"></a>
- <a class="link" href="change_log.html#quickbook.change_log.version_1_3">Version 1.3</a>
- </h4>
+<a name="quickbook.change_log"></a> Change Log</h2></div></div></div>
+<a name="quickbook.change_log.version_1_3"></a><h3>
+<a name="id386592"></a>
+ Version 1.3
+ </h3>
 <div class="itemizedlist"><ul type="disc">
 <li>
         Quickbook file inclusion [include].
@@ -66,7 +65,7 @@
 </li>
 <li>
         Fully qualified section and headers. Subsection names are concatenated to
- the ID to avoid clashing. Example: <code class="computeroutput"><span class="identifier">doc_name</span><span class="special">.</span><span class="identifier">sect_name</span><span class="special">.</span><span class="identifier">sub_sect_name</span><span class="special">.</span><span class="identifier">sub_sub_sect_name</span></code>
+ the ID to avoid clashing. Example: <tt class="computeroutput"><span class="identifier">doc_name</span><span class="special">.</span><span class="identifier">sect_name</span><span class="special">.</span><span class="identifier">sub_sect_name</span><span class="special">.</span><span class="identifier">sub_sub_sect_name</span></tt>
 </li>
 <li>
         Better &amp;nbsp; and whitespace handling in code snippets.
@@ -94,10 +93,10 @@
         Replaceable, with the [~replacement] syntax.
       </li>
 </ul></div>
-<a name="quickbook.change_log.version_1_4"></a><h4>
-<a name="id2585329"></a>
- <a class="link" href="change_log.html#quickbook.change_log.version_1_4">Version 1.4</a>
- </h4>
+<a name="quickbook.change_log.version_1_4"></a><h3>
+<a name="id387357"></a>
+ Version 1.4
+ </h3>
 <div class="itemizedlist"><ul type="disc">
 <li>
         Generic Headers
@@ -116,7 +115,7 @@
       </li>
 <li>
         Allow escape of spaces. The escaped space is removed from the output. Syntax:
- <code class="computeroutput"><span class="special">\</span> </code>.
+ <tt class="computeroutput"><span class="special">\</span> </tt>.
       </li>
 <li>
         Nested comments are now allowed.
@@ -125,7 +124,7 @@
         Quickbook blocks can nest inside comments.
       </li>
 <li>
-<a class="link" href="syntax/block.html#quickbook.syntax.block.import" title="Import">Import</a> facility.
+Import facility.
       </li>
 <li>
         Callouts on imported code
@@ -134,21 +133,21 @@
         Simple markups can now span a whole block.
       </li>
 <li>
-<a class="link" href="syntax/block.html#quickbook.syntax.block.blurbs" title="Blurbs">Blurbs</a>, <a class="link" href="syntax/block.html#quickbook.syntax.block.admonitions" title="Admonitions">Admonitions</a>
- and table cells (see <a class="link" href="syntax/block.html#quickbook.syntax.block.tables" title="Tables">Tables</a>)
+Blurbs, Admonitions
+ and table cells (see Tables)
         may now contain paragraphs.
       </li>
 <li>
-<code class="computeroutput"><span class="special">\</span><span class="identifier">n</span></code>
- and <code class="computeroutput"><span class="special">[</span><span class="identifier">br</span><span class="special">]</span></code> are now deprecated.
+<tt class="computeroutput"><span class="special">\</span><span class="identifier">n</span></tt>
+ and <tt class="computeroutput"><span class="special">[</span><span class="identifier">br</span><span class="special">]</span></tt> are now deprecated.
       </li>
 <li>
-<a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.cond" title="Conditional Generation">Conditional Generation</a>.
+Conditional Generation.
         Ala C++ #ifdef.
       </li>
 <li>
         Searching of included and imported files in an extensible search path with
- <code class="computeroutput"><span class="special">--</span><span class="identifier">include</span><span class="special">-</span><span class="identifier">path</span></code> (<code class="computeroutput"><span class="special">-</span><span class="identifier">I</span></code>) option.
+ <tt class="computeroutput"><span class="special">--</span><span class="identifier">include</span><span class="special">-</span><span class="identifier">path</span></tt> (<tt class="computeroutput"><span class="special">-</span><span class="identifier">I</span></tt>) option.
       </li>
 </ul></div>
 </div>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/editors.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/editors.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/editors.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Editor Support</title>
+<title> Editor Support</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../index.html" title="Quickbook 1.4">
 <link rel="up" href="../index.html" title="Quickbook 1.4">
-<link rel="prev" href="install/linux.html" title="Debian, Ubuntu">
-<link rel="next" href="editors/scite.html" title="Scintilla Text Editor">
+<link rel="prev" href="install/linux.html" title=" Debian, Ubuntu">
+<link rel="next" href="editors/scite.html" title=" Scintilla Text Editor">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,8 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="quickbook.editors"></a><a class="link" href="editors.html" title="Editor Support"> Editor Support</a>
-</h2></div></div></div>
+<a name="quickbook.editors"></a> Editor Support</h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"> Scintilla Text Editor</span></dt>
 <dt><span class="section">KDE Support</span></dt>
@@ -35,14 +34,11 @@
       The following sections list the settings for some editors which can help make
       editing quickbook files a bit easier.
     </p>
-<div class="sidebar">
-<p class="title"><b></b></p>
-<p>
+<div class="sidebar"><p>
       <span class="inlinemediaobject"><img src="../images/note.png" alt="note"></span> You may submit your settings, tips, and suggestions to
       the authors, or through the <a href="https://lists.sourceforge.net/lists/listinfo/boost-" target="_top">docs
       Boost Docs mailing list</a>.
- </p>
-</div>
+ </p></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/editors/kde_support.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/editors/kde_support.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/editors/kde_support.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,11 +3,11 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>KDE Support</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../../index.html" title="Quickbook 1.4">
-<link rel="up" href="../editors.html" title="Editor Support">
-<link rel="prev" href="scite.html" title="Scintilla Text Editor">
-<link rel="next" href="../faq.html" title="Frequently Asked Questions">
+<link rel="up" href="../editors.html" title=" Editor Support">
+<link rel="prev" href="scite.html" title=" Scintilla Text Editor">
+<link rel="next" href="../faq.html" title=" Frequently Asked Questions">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,12 +24,11 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="quickbook.editors.kde_support"></a><a class="link" href="kde_support.html" title="KDE Support">KDE Support</a>
-</h3></div></div></div>
-<a name="quickbook.editors.kde_support.boost__hs__quickbook"></a><h5>
-<a name="id2644180"></a>
- <a class="link" href="kde_support.html#quickbook.editors.kde_support.boost__hs__quickbook">boost::hs::quickbook</a>
- </h5>
+<a name="quickbook.editors.kde_support"></a>KDE Support</h3></div></div></div>
+<a name="quickbook.editors.kde_support.boost__hs__quickbook"></a><h4>
+<a name="id466336"></a>
+ boost::hs::quickbook
+ </h4>
 <p>
         boost::hs::quickbook is a syntax highlighting designed to work with Katepart.
         It can be used in KWrite, Kate, Konqueror and KDevelop, and supports all
@@ -49,11 +48,11 @@
 </dl>
 </div>
 <p>
- <span class="bold"><strong>html generated from this .qbk file</strong></span>
+ <span class="bold"><b>html generated from this .qbk file</b></span>
       </p>
 <div class="table">
-<a name="id2644266"></a><p class="title"><b>Table 7. Code examples</b></p>
-<div class="table-contents"><table class="table" summary="Code examples">
+<a name="id466438"></a><p class="title"><b>Table 7. Code examples</b></p>
+<table class="table" summary="Code examples">
 <colgroup>
 <col>
 <col>
@@ -85,8 +84,8 @@
             </td>
 <td>
             <p>
- <code class="computeroutput"> <span class="keyword">for</span><span class="special">(</span><span class="identifier">int</span> <span class="identifier">k</span><span class="special">=</span><span class="number">0</span><span class="special">;</span>
- <span class="identifier">k</span><span class="special">&lt;</span><span class="number">10</span><span class="special">;</span> <span class="identifier">k</span><span class="special">++)</span> <span class="identifier">v</span><span class="special">+=</span><span class="identifier">k</span><span class="special">;</span> </code>
+ <tt class="computeroutput"> <span class="keyword">for</span><span class="special">(</span><span class="identifier">int</span> <span class="identifier">k</span><span class="special">=</span><span class="number">0</span><span class="special">;</span>
+ <span class="identifier">k</span><span class="special">&lt;</span><span class="number">10</span><span class="special">;</span> <span class="identifier">k</span><span class="special">++)</span> <span class="identifier">v</span><span class="special">+=</span><span class="identifier">k</span><span class="special">;</span> </tt>
             </p>
             </td>
 <td>
@@ -103,12 +102,12 @@
             </td>
 <td>
             <p>
- <code class="computeroutput"> <span class="special">{</span> <span class="identifier">int</span>
+ <tt class="computeroutput"> <span class="special">{</span> <span class="identifier">int</span>
               <span class="identifier">k</span><span class="special">;</span>
               <span class="keyword">while</span><span class="special">(</span>
               <span class="identifier">k</span> <span class="special">&lt;</span>
               <span class="number">10</span> <span class="special">)</span>
- <span class="special">{</span> <span class="identifier">v</span><span class="special">+=</span><span class="identifier">k</span><span class="special">;</span> <span class="identifier">k</span><span class="special">++</span> <span class="special">}</span> <span class="special">}</span> </code>
+ <span class="special">{</span> <span class="identifier">v</span><span class="special">+=</span><span class="identifier">k</span><span class="special">;</span> <span class="identifier">k</span><span class="special">++</span> <span class="special">}</span> <span class="special">}</span> </tt>
             </p>
             </td>
 <td>
@@ -125,10 +124,10 @@
             </td>
 <td>
             <p>
- <code class="computeroutput"> <span class="keyword">while</span><span class="special">(</span>
+ <tt class="computeroutput"> <span class="keyword">while</span><span class="special">(</span>
               <span class="identifier">true</span> <span class="special">)</span>
               <span class="special">{</span> <span class="identifier">v</span><span class="special">+=</span><span class="number">1</span><span class="special">;</span>
- <span class="special">}</span> </code>
+ <span class="special">}</span> </tt>
             </p>
             </td>
 <td>
@@ -138,34 +137,34 @@
             </td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><a name="quickbook.editors.kde_support.code_folding_"></a><h5>
-<a name="id2644614"></a>
- <a class="link" href="kde_support.html#quickbook.editors.kde_support.code_folding_">Code Folding
+<a name="quickbook.editors.kde_support.code_folding_"></a><h4>
+<a name="id466844"></a>
+ <a href="kde_support.html#quickbook.editors.kde_support.code_folding_">Code Folding
         </a>
- </h5>
+ </h4>
 <p>
         boost::hs goes far beyond simple coloring. One useful thing you can get the
         editor to do is to mark regions. They appear in a small grey line and each
         region can be folded or unfolded independently.
       </p>
-<a name="quickbook.editors.kde_support.auto_comment___uncomment_"></a><h5>
-<a name="id2644639"></a>
- <a class="link" href="kde_support.html#quickbook.editors.kde_support.auto_comment___uncomment_">Auto
+<a name="quickbook.editors.kde_support.auto_comment___uncomment_"></a><h4>
+<a name="id466877"></a>
+ <a href="kde_support.html#quickbook.editors.kde_support.auto_comment___uncomment_">Auto
         Comment / Uncomment </a>
- </h5>
+ </h4>
 <p>
         Another important feature is the possibility to auto-comment or uncomment
         some piece of code (<span class="emphasis"><em>Tools - Comment</em></span>). Commented regions
         can be uncommented simple calling the <span class="emphasis"><em>uncomment</em></span> command
         while being in it.
       </p>
-<a name="quickbook.editors.kde_support.styles_reference_"></a><h5>
-<a name="id2644672"></a>
- <a class="link" href="kde_support.html#quickbook.editors.kde_support.styles_reference_">Styles reference
+<a name="quickbook.editors.kde_support.styles_reference_"></a><h4>
+<a name="id466918"></a>
+ <a href="kde_support.html#quickbook.editors.kde_support.styles_reference_">Styles reference
         </a>
- </h5>
+ </h4>
 <div class="informaltable"><table class="table">
 <colgroup>
 <col>
@@ -193,7 +192,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>plain text</strong></span>
+ <span class="bold"><b>plain text</b></span>
               </p>
               </td>
 <td>
@@ -210,7 +209,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>formatted text</strong></span>
+ <span class="bold"><b>formatted text</b></span>
               </p>
               </td>
 <td>
@@ -227,7 +226,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>structure</strong></span>
+ <span class="bold"><b>structure</b></span>
               </p>
               </td>
 <td>
@@ -245,7 +244,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>macros</strong></span>
+ <span class="bold"><b>macros</b></span>
               </p>
               </td>
 <td>
@@ -263,7 +262,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>templates</strong></span>
+ <span class="bold"><b>templates</b></span>
               </p>
               </td>
 <td>
@@ -280,7 +279,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>anchors</strong></span>
+ <span class="bold"><b>anchors</b></span>
               </p>
               </td>
 <td>
@@ -297,7 +296,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>comments</strong></span>
+ <span class="bold"><b>comments</b></span>
               </p>
               </td>
 <td>
@@ -314,7 +313,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>tables</strong></span>
+ <span class="bold"><b>tables</b></span>
               </p>
               </td>
 <td>
@@ -331,7 +330,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>variable lists</strong></span>
+ <span class="bold"><b>variable lists</b></span>
               </p>
               </td>
 <td>
@@ -348,7 +347,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>c++ code</strong></span>
+ <span class="bold"><b>c++ code</b></span>
               </p>
               </td>
 <td>
@@ -365,7 +364,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>paths</strong></span>
+ <span class="bold"><b>paths</b></span>
               </p>
               </td>
 <td>
@@ -382,7 +381,7 @@
 <tr>
 <td>
               <p>
- <span class="bold"><strong>IDE specific</strong></span>
+ <span class="bold"><b>IDE specific</b></span>
               </p>
               </td>
 <td>
@@ -398,10 +397,10 @@
 </tr>
 </tbody>
 </table></div>
-<a name="quickbook.editors.kde_support.about_boost__hs"></a><h5>
-<a name="id2645064"></a>
- <a class="link" href="kde_support.html#quickbook.editors.kde_support.about_boost__hs">About boost::hs</a>
- </h5>
+<a name="quickbook.editors.kde_support.about_boost__hs"></a><h4>
+<a name="id467367"></a>
+ About boost::hs
+ </h4>
 <p>
         <span class="inlinemediaobject"><img src="../../images/extra/katepart/boost.hs.logo.png" alt="boost.hs.logo"></span>
       </p>
@@ -415,15 +414,15 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../doc/html/images/note.png"></td>
 <th align="left">Note</th>
 </tr>
-<tr><td align="left" valign="top"><p>
+<tr><td colspan="2" align="left" valign="top"><p>
           boost::hs::cpp support QuickBook code import comments style!
         </p></td></tr>
 </table></div>
-<a name="quickbook.editors.kde_support.installing_boost__hs"></a><h5>
-<a name="id2645119"></a>
- <a class="link" href="kde_support.html#quickbook.editors.kde_support.installing_boost__hs">Installing
+<a name="quickbook.editors.kde_support.installing_boost__hs"></a><h4>
+<a name="id467435"></a>
+ <a href="kde_support.html#quickbook.editors.kde_support.installing_boost__hs">Installing
         boost::hs</a>
- </h5>
+ </h4>
 <p>
         There exist an ongoing effort to push boost::hs upstream to the KatePart
         project. In a few months KDE may have native Quickbook support! For the moment
@@ -437,13 +436,13 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../doc/html/images/note.png"></td>
 <th align="left">Note</th>
 </tr>
-<tr><td align="left" valign="top"><p>
- A copy of boost::hs::quickbook and boost::hs::cpp is available in <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">tools</span><span class="special">/</span><span class="identifier">quickbook</span><span class="special">/</span><span class="identifier">extra</span><span class="special">/</span><span class="identifier">katepart</span></code>.
+<tr><td colspan="2" align="left" valign="top"><p>
+ A copy of boost::hs::quickbook and boost::hs::cpp is available in <tt class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">tools</span><span class="special">/</span><span class="identifier">quickbook</span><span class="special">/</span><span class="identifier">extra</span><span class="special">/</span><span class="identifier">katepart</span></tt>.
         </p></td></tr>
 </table></div>
 <p>
- In order to install it you must copy the content in the folder <span class="bold"><strong>katepart/syntax/</strong></span> to the appropriate katepart syntax
- folder in your machine. In general this folder will be in <span class="bold"><strong>/usr/share/apps/katepart/syntax</strong></span>.
+ In order to install it you must copy the content in the folder <span class="bold"><b>katepart/syntax/</b></span> to the appropriate katepart syntax
+ folder in your machine. In general this folder will be in <span class="bold"><b>/usr/share/apps/katepart/syntax</b></span>.
         A bash script named <span class="emphasis"><em>install.sh</em></span> is included that copy
         the files to this folder.
       </p>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/editors/scite.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/editors/scite.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/editors/scite.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,12 +1,12 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Scintilla Text Editor</title>
+<title> Scintilla Text Editor</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../../index.html" title="Quickbook 1.4">
-<link rel="up" href="../editors.html" title="Editor Support">
-<link rel="prev" href="../editors.html" title="Editor Support">
+<link rel="up" href="../editors.html" title=" Editor Support">
+<link rel="prev" href="../editors.html" title=" Editor Support">
 <link rel="next" href="kde_support.html" title="KDE Support">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -24,8 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="quickbook.editors.scite"></a><a class="link" href="scite.html" title="Scintilla Text Editor"> Scintilla Text Editor</a>
-</h3></div></div></div>
+<a name="quickbook.editors.scite"></a> Scintilla Text Editor</h3></div></div></div>
 <div class="blockquote"><blockquote class="blockquote">
 <p>
           </p>
@@ -39,12 +38,9 @@
         The Scintilla Text Editor (SciTE) is a free source code editor for Win32
         and X. It uses the SCIntilla source code editing component.
       </p>
-<div class="sidebar">
-<p class="title"><b></b></p>
-<p>
+<div class="sidebar"><p>
         <span class="inlinemediaobject"><img src="../../images/tip.png" alt="tip"></span> SciTE can be downloaded from http://www.scintilla.org/SciTE.html
- </p>
-</div>
+ </p></div>
 <p>
         You can use the following settings to highlight quickbook tags when editing
         quickbook files.
@@ -61,12 +57,9 @@
 comment.box.middle.props=
 comment.box.end.props=]
 </pre>
-<div class="sidebar">
-<p class="title"><b></b></p>
-<p>
+<div class="sidebar"><p>
         <span class="inlinemediaobject"><img src="../../images/note.png" alt="note"></span> Thanks to Rene Rivera for the above SciTE settings.
- </p>
-</div>
+ </p></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/faq.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/faq.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/faq.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Frequently Asked Questions</title>
+<title> Frequently Asked Questions</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../index.html" title="Quickbook 1.4">
 <link rel="up" href="../index.html" title="Quickbook 1.4">
 <link rel="prev" href="editors/kde_support.html" title="KDE Support">
-<link rel="next" href="ref.html" title="Quick Reference">
+<link rel="next" href="ref.html" title=" Quick Reference">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,13 +24,12 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="quickbook.faq"></a><a class="link" href="faq.html" title="Frequently Asked Questions"> Frequently Asked Questions</a>
-</h2></div></div></div>
-<a name="quickbook.faq.can_i_use_quickbook_for_non_boost_documentation_"></a><h4>
-<a name="id2645242"></a>
- <a class="link" href="faq.html#quickbook.faq.can_i_use_quickbook_for_non_boost_documentation_">Can
+<a name="quickbook.faq"></a> Frequently Asked Questions</h2></div></div></div>
+<a name="quickbook.faq.can_i_use_quickbook_for_non_boost_documentation_"></a><h3>
+<a name="id467587"></a>
+ <a href="faq.html#quickbook.faq.can_i_use_quickbook_for_non_boost_documentation_">Can
       I use QuickBook for non-Boost documentation?</a>
- </h4>
+ </h3>
 <p>
       QuickBook can be used for non-Boost documentation with a little extra work.
     </p>
@@ -61,18 +60,18 @@
     :
         my_doc
     :
- &lt;xsl:param&gt;boost.image.src<code class="literal">images/my_project_logo.png
- &lt;xsl:param&gt;boost.image.alt</code>"\"My Project\""
+ &lt;xsl:param&gt;boost.image.src<tt class="literal">images/my_project_logo.png
+ &lt;xsl:param&gt;boost.image.alt</tt>"\"My Project\""
         &lt;xsl:param&gt;boost.image.w=100
         &lt;xsl:param&gt;boost.image.h=50
         &lt;xsl:param&gt;nav.layout=none
     ;
 </pre>
-<a name="quickbook.faq.is_there_an_easy_way_to_convert_boostbook_docs_to_quickbook_"></a><h4>
-<a name="id2645314"></a>
- <a class="link" href="faq.html#quickbook.faq.is_there_an_easy_way_to_convert_boostbook_docs_to_quickbook_">Is
+<a name="quickbook.faq.is_there_an_easy_way_to_convert_boostbook_docs_to_quickbook_"></a><h3>
+<a name="id467675"></a>
+ <a href="faq.html#quickbook.faq.is_there_an_easy_way_to_convert_boostbook_docs_to_quickbook_">Is
       there an easy way to convert BoostBook docs to QuickBook?</a>
- </h4>
+ </h3>
 <p>
       There's a stylesheet that allows Boostbook generated HTML to be viewed as quickbook
       source, see http://svn.boost.org/trac/boost/wiki/QuickbookSourceStylesheetProject,

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/install.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/install.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/install.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Installation and configuration</title>
+<title> Installation and configuration</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../index.html" title="Quickbook 1.4">
 <link rel="up" href="../index.html" title="Quickbook 1.4">
-<link rel="prev" href="syntax/block.html" title="Block Level Elements">
-<link rel="next" href="install/macosx.html" title="Mac OS X">
+<link rel="prev" href="syntax/block.html" title=" Block Level Elements">
+<link rel="next" href="install/macosx.html" title=" Mac OS X">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,8 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="quickbook.install"></a><a class="link" href="install.html" title="Installation and configuration"> Installation and configuration</a>
-</h2></div></div></div>
+<a name="quickbook.install"></a> Installation and configuration</h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"> Mac OS X</span></dt>
 <dt><span class="section"> Windows 2000, XP, 2003, Vista</span></dt>
@@ -38,8 +37,8 @@
 <p>
       Before continuing, it is very important that you keep this in mind: if you
       try to build some documents and the process breaks due to misconfiguration,
- be absolutely sure to delete any <code class="computeroutput"><span class="identifier">bin</span></code>
- and <code class="computeroutput"><span class="identifier">bin</span><span class="special">.</span><span class="identifier">v2</span></code> directories generated by the build before
+ be absolutely sure to delete any <tt class="computeroutput"><span class="identifier">bin</span></tt>
+ and <tt class="computeroutput"><span class="identifier">bin</span><span class="special">.</span><span class="identifier">v2</span></tt> directories generated by the build before
       trying again. Otherwise your configuration fixes will not take any effect.
     </p>
 </div>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/install/linux.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/install/linux.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/install/linux.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Debian, Ubuntu</title>
+<title> Debian, Ubuntu</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../../index.html" title="Quickbook 1.4">
-<link rel="up" href="../install.html" title="Installation and configuration">
-<link rel="prev" href="windows.html" title="Windows 2000, XP, 2003, Vista">
-<link rel="next" href="../editors.html" title="Editor Support">
+<link rel="up" href="../install.html" title=" Installation and configuration">
+<link rel="prev" href="windows.html" title=" Windows 2000, XP, 2003, Vista">
+<link rel="next" href="../editors.html" title=" Editor Support">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,30 +24,29 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="quickbook.install.linux"></a><a class="link" href="linux.html" title="Debian, Ubuntu"> Debian, Ubuntu</a>
-</h3></div></div></div>
+<a name="quickbook.install.linux"></a> Debian, Ubuntu</h3></div></div></div>
 <p>
         The following instructions apply to Debian and its derivatives. They are
         based on a Ubuntu Edgy install but should work on other Debian based systems.
       </p>
 <p>
- First install the <code class="computeroutput"><span class="identifier">bjam</span></code>,
- <code class="computeroutput"><span class="identifier">xsltproc</span></code>, <code class="computeroutput"><span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xsl</span></code> and
- <code class="computeroutput"><span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xml</span></code> packages. For example, using <code class="computeroutput"><span class="identifier">apt</span><span class="special">-</span><span class="identifier">get</span></code>:
+ First install the <tt class="computeroutput"><span class="identifier">bjam</span></tt>,
+ <tt class="computeroutput"><span class="identifier">xsltproc</span></tt>, <tt class="computeroutput"><span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xsl</span></tt> and
+ <tt class="computeroutput"><span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xml</span></tt> packages. For example, using <tt class="computeroutput"><span class="identifier">apt</span><span class="special">-</span><span class="identifier">get</span></tt>:
       </p>
 <pre class="programlisting">
 <span class="identifier">sudo</span> <span class="identifier">apt</span><span class="special">-</span><span class="identifier">get</span> <span class="identifier">install</span> <span class="identifier">xsltproc</span> <span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xsl</span> <span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xml</span>
 </pre>
 <p>
         If you're planning on building boost's documentation, you'll also need to
- install the <code class="computeroutput"><span class="identifier">doxygen</span></code> package
+ install the <tt class="computeroutput"><span class="identifier">doxygen</span></tt> package
         as well.
       </p>
 <p>
         Next, we need to configure Boost Build to compile BoostBook files. Add the
- following to your <code class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></code> file, which should be in your home
+ following to your <tt class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></tt> file, which should be in your home
         directory. If you don't have one, create a file containing this text. For
- more information on setting up <code class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></code>, see
+ more information on setting up <tt class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></tt>, see
         the <a href="http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html" target="_top">Boost
         Build documentation</a>.
       </p>
@@ -68,19 +67,19 @@
       </p>
 <div class="orderedlist"><ol type="1">
 <li>
- Go to Quickbook's source directory (<code class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">/</span><span class="identifier">tools</span><span class="special">/</span><span class="identifier">quickbook</span></code>).
+ Go to Quickbook's source directory (<tt class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">/</span><span class="identifier">tools</span><span class="special">/</span><span class="identifier">quickbook</span></tt>).
         </li>
 <li>
- Build the utility by issuing <code class="computeroutput"><span class="identifier">bjam</span>
- <span class="special">--</span><span class="identifier">v2</span></code>.
+ Build the utility by issuing <tt class="computeroutput"><span class="identifier">bjam</span>
+ <span class="special">--</span><span class="identifier">v2</span></tt>.
         </li>
 <li>
- Copy the resulting <code class="computeroutput"><span class="identifier">quickbook</span></code>
- binary (located under the <code class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">/</span><span class="identifier">bin</span><span class="special">.</span><span class="identifier">v2</span></code> hierarchy)
- to a safe place. The traditional location is <code class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span><span class="special">/</span><span class="identifier">bin</span></code>.
+ Copy the resulting <tt class="computeroutput"><span class="identifier">quickbook</span></tt>
+ binary (located under the <tt class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">/</span><span class="identifier">bin</span><span class="special">.</span><span class="identifier">v2</span></tt> hierarchy)
+ to a safe place. The traditional location is <tt class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span><span class="special">/</span><span class="identifier">bin</span></tt>.
         </li>
 <li>
- Add the following to your <code class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></code>
+ Add the following to your <tt class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></tt>
           file, using the full path of the quickbook executable:
         </li>
 </ol></div>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/install/macosx.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/install/macosx.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/install/macosx.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Mac OS X</title>
+<title> Mac OS X</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../../index.html" title="Quickbook 1.4">
-<link rel="up" href="../install.html" title="Installation and configuration">
-<link rel="prev" href="../install.html" title="Installation and configuration">
-<link rel="next" href="windows.html" title="Windows 2000, XP, 2003, Vista">
+<link rel="up" href="../install.html" title=" Installation and configuration">
+<link rel="prev" href="../install.html" title=" Installation and configuration">
+<link rel="next" href="windows.html" title=" Windows 2000, XP, 2003, Vista">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,8 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="quickbook.install.macosx"></a><a class="link" href="macosx.html" title="Mac OS X"> Mac OS X</a>
-</h3></div></div></div>
+<a name="quickbook.install.macosx"></a> Mac OS X</h3></div></div></div>
 <div class="blockquote"><blockquote class="blockquote">
 <p>
           </p>
@@ -45,13 +44,13 @@
 <p>
         The text below assumes you want to install all the necessary utilities in
         a system-wide location, allowing any user in the machine to have access to
- them. Therefore, all files will be put in the <code class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span></code>
+ them. Therefore, all files will be put in the <tt class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span></tt>
         hierarchy. If you do not want this, you can choose any other prefix such
- as <code class="computeroutput"><span class="special">~/</span><span class="identifier">Applications</span></code>
+ as <tt class="computeroutput"><span class="special">~/</span><span class="identifier">Applications</span></tt>
         for a single-user installation.
       </p>
 <p>
- Mac OS X comes with <code class="computeroutput"><span class="identifier">xsltproc</span></code>
+ Mac OS X comes with <tt class="computeroutput"><span class="identifier">xsltproc</span></tt>
         and all related libraries preinstalled, so you do not need to take any extra
         steps to set them up. It is probable that future versions will include them
         too, but these instructions may not apply to older versions.
@@ -62,16 +61,16 @@
 <div class="orderedlist"><ol type="1">
 <li>
           Download <a href="http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip" target="_top">Docbook
- XML 4.2</a> and unpack it inside <code class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span><span class="special">/</span><span class="identifier">share</span><span class="special">/</span><span class="identifier">xml</span><span class="special">/</span><span class="identifier">docbook</span><span class="special">/</span><span class="number">4.2</span></code>.
+ XML 4.2</a> and unpack it inside <tt class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span><span class="special">/</span><span class="identifier">share</span><span class="special">/</span><span class="identifier">xml</span><span class="special">/</span><span class="identifier">docbook</span><span class="special">/</span><span class="number">4.2</span></tt>.
         </li>
 <li>
           Download the latest <a href="http://sourceforge.net/project/showfiles.php?group_id=21935&amp;package_id=16608" target="_top">Docbook
- XSL</a> version and unpack it. Put the results in <code class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span><span class="special">/</span><span class="identifier">share</span><span class="special">/</span><span class="identifier">xsl</span><span class="special">/</span><span class="identifier">docbook</span></code>, thus effectively removing the
+ XSL</a> version and unpack it. Put the results in <tt class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span><span class="special">/</span><span class="identifier">share</span><span class="special">/</span><span class="identifier">xsl</span><span class="special">/</span><span class="identifier">docbook</span></tt>, thus effectively removing the
           version number from the directory name (for simplicity).
         </li>
 <li>
- Add the following to your <code class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></code>
- file, which should live in your home directory (<code class="computeroutput"><span class="special">/</span><span class="identifier">Users</span><span class="special">/&lt;</span><span class="identifier">your_username</span><span class="special">&gt;</span></code>).
+ Add the following to your <tt class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></tt>
+ file, which should live in your home directory (<tt class="computeroutput"><span class="special">/</span><span class="identifier">Users</span><span class="special">/&lt;</span><span class="identifier">your_username</span><span class="special">&gt;</span></tt>).
           You must already have it somewhere or otherwise you could not be building
           Boost (i.e. missing tools configuration).
         </li>
@@ -91,20 +90,20 @@
       </p>
 <div class="orderedlist"><ol type="1">
 <li>
- Go to Quickbook's source directory (<code class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">/</span><span class="identifier">tools</span><span class="special">/</span><span class="identifier">quickbook</span></code>).
+ Go to Quickbook's source directory (<tt class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">/</span><span class="identifier">tools</span><span class="special">/</span><span class="identifier">quickbook</span></tt>).
         </li>
 <li>
- Build the utility by issuing <code class="computeroutput"><span class="identifier">bjam</span>
- <span class="special">--</span><span class="identifier">v2</span></code>.
+ Build the utility by issuing <tt class="computeroutput"><span class="identifier">bjam</span>
+ <span class="special">--</span><span class="identifier">v2</span></tt>.
         </li>
 <li>
- Copy the resulting <code class="computeroutput"><span class="identifier">quickbook</span></code>
- binary (located under the <code class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">/</span><span class="identifier">bin</span><span class="special">.</span><span class="identifier">v2</span></code> hierarchy)
+ Copy the resulting <tt class="computeroutput"><span class="identifier">quickbook</span></tt>
+ binary (located under the <tt class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">/</span><span class="identifier">bin</span><span class="special">.</span><span class="identifier">v2</span></tt> hierarchy)
           to a safe place. Following our previous example, you can install it into:
- <code class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span><span class="special">/</span><span class="identifier">bin</span></code>.
+ <tt class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span><span class="special">/</span><span class="identifier">bin</span></tt>.
         </li>
 <li>
- Add the following to your <code class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></code>
+ Add the following to your <tt class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></tt>
           file:
         </li>
 </ol></div>
@@ -120,14 +119,14 @@
 <div class="orderedlist"><ol type="1">
 <li>
           Go to the <a href="http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc" target="_top">downloads
- section</a> and get the disk image (<code class="computeroutput"><span class="identifier">dmg</span></code>
+ section</a> and get the disk image (<tt class="computeroutput"><span class="identifier">dmg</span></tt>
           file) for Mac OS X.
         </li>
 <li>
- Open the disk image and drag the Doxygen application to your <code class="computeroutput"><span class="identifier">Applications</span></code> folder to install it.
+ Open the disk image and drag the Doxygen application to your <tt class="computeroutput"><span class="identifier">Applications</span></tt> folder to install it.
         </li>
 <li>
- Add the following to your <code class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></code>
+ Add the following to your <tt class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></tt>
           file:
         </li>
 </ol></div>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/install/windows.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/install/windows.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/install/windows.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Windows 2000, XP, 2003, Vista</title>
+<title> Windows 2000, XP, 2003, Vista</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../../index.html" title="Quickbook 1.4">
-<link rel="up" href="../install.html" title="Installation and configuration">
-<link rel="prev" href="macosx.html" title="Mac OS X">
-<link rel="next" href="linux.html" title="Debian, Ubuntu">
+<link rel="up" href="../install.html" title=" Installation and configuration">
+<link rel="prev" href="macosx.html" title=" Mac OS X">
+<link rel="next" href="linux.html" title=" Debian, Ubuntu">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,8 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="quickbook.install.windows"></a><a class="link" href="windows.html" title="Windows 2000, XP, 2003, Vista"> Windows 2000, XP, 2003, Vista</a>
-</h3></div></div></div>
+<a name="quickbook.install.windows"></a> Windows 2000, XP, 2003, Vista</h3></div></div></div>
 <p>
       </p>
 <div class="blockquote"><blockquote class="blockquote">
@@ -45,39 +44,39 @@
       </p>
 <div class="orderedlist"><ol type="1">
 <li>
- First of all you need to have a copy of <code class="computeroutput"><span class="identifier">xsltproc</span></code>
+ First of all you need to have a copy of <tt class="computeroutput"><span class="identifier">xsltproc</span></tt>
           for Windows. There are many ways to get this tool, but to keep things simple,
           use the binary packages
           made by Igor Zlatkovic. At the very least, you need to download the following
- packages: <code class="computeroutput"><span class="identifier">iconv</span></code>, <code class="computeroutput"><span class="identifier">zlib</span></code>, <code class="computeroutput"><span class="identifier">libxml2</span></code>
- and <code class="computeroutput"><span class="identifier">libxslt</span></code>.
+ packages: <tt class="computeroutput"><span class="identifier">iconv</span></tt>, <tt class="computeroutput"><span class="identifier">zlib</span></tt>, <tt class="computeroutput"><span class="identifier">libxml2</span></tt>
+ and <tt class="computeroutput"><span class="identifier">libxslt</span></tt>.
         </li>
 <li>
           Unpack all these packages in the same directory so that you get unique
- <code class="computeroutput"><span class="identifier">bin</span></code>, <code class="computeroutput"><span class="identifier">include</span></code>
- and <code class="computeroutput"><span class="identifier">lib</span></code> directories within
- the hierarchy. These instructions use <code class="computeroutput"><span class="identifier">C</span><span class="special">:\</span><span class="identifier">Users</span><span class="special">\</span><span class="identifier">example</span><span class="special">\</span><span class="identifier">Documents</span><span class="special">\</span><span class="identifier">boost</span><span class="special">\</span><span class="identifier">xml</span></code>
+ <tt class="computeroutput"><span class="identifier">bin</span></tt>, <tt class="computeroutput"><span class="identifier">include</span></tt>
+ and <tt class="computeroutput"><span class="identifier">lib</span></tt> directories within
+ the hierarchy. These instructions use <tt class="computeroutput"><span class="identifier">C</span><span class="special">:\</span><span class="identifier">Users</span><span class="special">\</span><span class="identifier">example</span><span class="special">\</span><span class="identifier">Documents</span><span class="special">\</span><span class="identifier">boost</span><span class="special">\</span><span class="identifier">xml</span></tt>
           as the root for all files.
         </li>
 <li>
- From the command line, go to the <code class="computeroutput"><span class="identifier">bin</span></code>
- directory and launch <code class="computeroutput"><span class="identifier">xsltproc</span><span class="special">.</span><span class="identifier">exe</span></code>
+ From the command line, go to the <tt class="computeroutput"><span class="identifier">bin</span></tt>
+ directory and launch <tt class="computeroutput"><span class="identifier">xsltproc</span><span class="special">.</span><span class="identifier">exe</span></tt>
           to ensure it works. You should get usage information on screen.
         </li>
 <li>
           Download <a href="http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip" target="_top">Docbook
           XML 4.2</a> and unpack it in the same directory used above. That is:
- <code class="computeroutput"><span class="identifier">C</span><span class="special">:\</span><span class="identifier">Users</span><span class="special">\</span><span class="identifier">example</span><span class="special">\</span><span class="identifier">Documents</span><span class="special">\</span><span class="identifier">boost</span><span class="special">\</span><span class="identifier">xml</span><span class="special">\</span><span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xml</span></code>.
+ <tt class="computeroutput"><span class="identifier">C</span><span class="special">:\</span><span class="identifier">Users</span><span class="special">\</span><span class="identifier">example</span><span class="special">\</span><span class="identifier">Documents</span><span class="special">\</span><span class="identifier">boost</span><span class="special">\</span><span class="identifier">xml</span><span class="special">\</span><span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xml</span></tt>.
         </li>
 <li>
           Download the latest <a href="http://sourceforge.net/project/showfiles.php?group_id=21935&amp;package_id=16608" target="_top">Docbook
           XSL</a> version and unpack it, again in the same directory used before.
           To make things easier, rename the directory created during the extraction
- to <code class="computeroutput"><span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xsl</span></code> (bypassing the version name): <code class="computeroutput"><span class="identifier">C</span><span class="special">:\</span><span class="identifier">Users</span><span class="special">\</span><span class="identifier">example</span><span class="special">\</span><span class="identifier">Documents</span><span class="special">\</span><span class="identifier">boost</span><span class="special">\</span><span class="identifier">xml</span><span class="special">\</span><span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xsl</span></code>.
+ to <tt class="computeroutput"><span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xsl</span></tt> (bypassing the version name): <tt class="computeroutput"><span class="identifier">C</span><span class="special">:\</span><span class="identifier">Users</span><span class="special">\</span><span class="identifier">example</span><span class="special">\</span><span class="identifier">Documents</span><span class="special">\</span><span class="identifier">boost</span><span class="special">\</span><span class="identifier">xml</span><span class="special">\</span><span class="identifier">docbook</span><span class="special">-</span><span class="identifier">xsl</span></tt>.
         </li>
 <li>
- Add the following to your <code class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></code>
- file, which should live in your home directory (<code class="computeroutput"><span class="special">%</span><span class="identifier">HOMEDRIVE</span><span class="special">%%</span><span class="identifier">HOMEPATH</span><span class="special">%</span></code>).
+ Add the following to your <tt class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></tt>
+ file, which should live in your home directory (<tt class="computeroutput"><span class="special">%</span><span class="identifier">HOMEDRIVE</span><span class="special">%%</span><span class="identifier">HOMEPATH</span><span class="special">%</span></tt>).
           You must already have it somewhere or otherwise you could not be building
           Boost (i.e. missing tools configuration).
         </li>
@@ -98,20 +97,20 @@
       </p>
 <div class="orderedlist"><ol type="1">
 <li>
- Go to Quickbook's source directory (<code class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">\</span><span class="identifier">tools</span><span class="special">\</span><span class="identifier">quickbook</span></code>).
+ Go to Quickbook's source directory (<tt class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">\</span><span class="identifier">tools</span><span class="special">\</span><span class="identifier">quickbook</span></tt>).
         </li>
 <li>
- Build the utility by issuing <code class="computeroutput"><span class="identifier">bjam</span>
- <span class="special">--</span><span class="identifier">v2</span></code>.
+ Build the utility by issuing <tt class="computeroutput"><span class="identifier">bjam</span>
+ <span class="special">--</span><span class="identifier">v2</span></tt>.
         </li>
 <li>
- Copy the resulting <code class="computeroutput"><span class="identifier">quickbook</span><span class="special">.</span><span class="identifier">exe</span></code>
- binary (located under the <code class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">\</span><span class="identifier">bin</span><span class="special">.</span><span class="identifier">v2</span></code> hierarchy)
+ Copy the resulting <tt class="computeroutput"><span class="identifier">quickbook</span><span class="special">.</span><span class="identifier">exe</span></tt>
+ binary (located under the <tt class="computeroutput"><span class="identifier">BOOST_ROOT</span><span class="special">\</span><span class="identifier">bin</span><span class="special">.</span><span class="identifier">v2</span></tt> hierarchy)
           to a safe place. Following our previous example, you can install it into:
- <code class="computeroutput"><span class="identifier">C</span><span class="special">:\</span><span class="identifier">Users</span><span class="special">\</span><span class="identifier">example</span><span class="special">\</span><span class="identifier">Documents</span><span class="special">\</span><span class="identifier">boost</span><span class="special">\</span><span class="identifier">xml</span><span class="special">\</span><span class="identifier">bin</span></code>.
+ <tt class="computeroutput"><span class="identifier">C</span><span class="special">:\</span><span class="identifier">Users</span><span class="special">\</span><span class="identifier">example</span><span class="special">\</span><span class="identifier">Documents</span><span class="special">\</span><span class="identifier">boost</span><span class="special">\</span><span class="identifier">xml</span><span class="special">\</span><span class="identifier">bin</span></tt>.
         </li>
 <li>
- Add the following to your <code class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></code>
+ Add the following to your <tt class="computeroutput"><span class="identifier">user</span><span class="special">-</span><span class="identifier">config</span><span class="special">.</span><span class="identifier">jam</span></tt>
           file:
         </li>
 </ol></div>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/intro.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/intro.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/intro.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Introduction</title>
+<title> Introduction</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../index.html" title="Quickbook 1.4">
 <link rel="up" href="../index.html" title="Quickbook 1.4">
 <link rel="prev" href="../index.html" title="Quickbook 1.4">
-<link rel="next" href="change_log.html" title="Change Log">
+<link rel="next" href="change_log.html" title=" Change Log">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,14 +24,13 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="quickbook.intro"></a><a class="link" href="intro.html" title="Introduction"> Introduction</a>
-</h2></div></div></div>
+<a name="quickbook.intro"></a> Introduction</h2></div></div></div>
 <div class="blockquote"><blockquote class="blockquote">
 <p>
         </p>
 <p>
- <span class="bold"><strong><span class="emphasis"><em>&#8220;<span class="quote">Why program by hand in five days
- what you can spend five years of your life automating?</span>&#8221;</em></span></strong></span>
+ <span class="bold"><b><span class="emphasis"><em>&#8220;<span class="quote">Why program by hand in five days
+ what you can spend five years of your life automating?</span>&#8221;</em></span></b></span>
         </p>
 <p>
         </p>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/ref.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/ref.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/ref.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,12 +1,12 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Quick Reference</title>
+<title> Quick Reference</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../index.html" title="Quickbook 1.4">
 <link rel="up" href="../index.html" title="Quickbook 1.4">
-<link rel="prev" href="faq.html" title="Frequently Asked Questions">
+<link rel="prev" href="faq.html" title=" Frequently Asked Questions">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -23,13 +23,12 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="quickbook.ref"></a><a class="link" href="ref.html" title="Quick Reference"> Quick Reference</a>
-</h2></div></div></div>
+<a name="quickbook.ref"></a> Quick Reference</h2></div></div></div>
 <p>
     </p>
 <div class="table">
-<a name="id2645360"></a><p class="title"><b>Table 8. Syntax Compendium</b></p>
-<div class="table-contents"><table class="table" summary="Syntax Compendium">
+<a name="id467737"></a><p class="title"><b>Table 8. Syntax Compendium</b></p>
+<table class="table" summary="Syntax Compendium">
 <colgroup>
 <col>
 <col>
@@ -61,12 +60,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[/ some comment]</code>
+ <tt class="literal">[/ some comment]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/comments.html" title="Comments">Comments</a>
+ Comments
           </p>
           </td>
 </tr>
@@ -78,13 +77,13 @@
           </td>
 <td>
           <p>
- <code class="literal">['italics] or /italics/</code>
+ <tt class="literal">['italics] or /italics/</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.font_styles" title="Font Styles">Font Styles</a>
- and <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple
+ Font Styles
+ and <a href="syntax/phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple
             formatting</a>
           </p>
           </td>
@@ -92,18 +91,18 @@
 <tr>
 <td>
           <p>
- <span class="bold"><strong>bold</strong></span>
+ <span class="bold"><b>bold</b></span>
           </p>
           </td>
 <td>
           <p>
- <code class="literal">[*bold] or *bold*</code>
+ <tt class="literal">[*bold] or *bold*</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.font_styles" title="Font Styles">Font Styles</a>
- and <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple
+ Font Styles
+ and <a href="syntax/phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple
             formatting</a>
           </p>
           </td>
@@ -116,13 +115,13 @@
           </td>
 <td>
           <p>
- <code class="literal">[_underline] or _underline_</code>
+ <tt class="literal">[_underline] or _underline_</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.font_styles" title="Font Styles">Font Styles</a>
- and <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple
+ Font Styles
+ and <a href="syntax/phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple
             formatting</a>
           </p>
           </td>
@@ -130,18 +129,18 @@
 <tr>
 <td>
           <p>
- <code class="literal">teletype</code>
+ <tt class="literal">teletype</tt>
           </p>
           </td>
 <td>
           <p>
- <code class="literal">[^teletype] or =teletype=</code>
+ <tt class="literal">[^teletype] or =teletype=</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.font_styles" title="Font Styles">Font Styles</a>
- and <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple
+ Font Styles
+ and <a href="syntax/phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple
             formatting</a>
           </p>
           </td>
@@ -154,13 +153,13 @@
           </td>
 <td>
           <p>
- <code class="literal">[-strikethrough]</code>
+ <tt class="literal">[-strikethrough]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.font_styles" title="Font Styles">Font Styles</a>
- and <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple
+ Font Styles
+ and <a href="syntax/phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple
             formatting</a>
           </p>
           </td>
@@ -168,19 +167,19 @@
 <tr>
 <td>
           <p>
- <em class="replaceable"><code>
+ <i class="replaceable"><tt>
               replaceable
- </code></em>
+ </tt></i>
           </p>
           </td>
 <td>
           <p>
- <code class="literal">[~replaceable]</code>
+ <tt class="literal">[~replaceable]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.replaceable" title="Replaceable">Replaceble</a>
+ Replaceble
           </p>
           </td>
 </tr>
@@ -192,12 +191,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[c++]</code> or <code class="literal">[python]</code>
+ <tt class="literal">[c++]</tt> or <tt class="literal">[python]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.source_mode" title="Source Mode">Source Mode</a>
+ Source Mode
           </p>
           </td>
 </tr>
@@ -209,12 +208,12 @@
           </td>
 <td>
           <p>
- <code class="literal">`int main();`</code>
+ <tt class="literal">`int main();`</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.inline_code" title="Inline code">Inline code</a>
+ Inline code
           </p>
           </td>
 </tr>
@@ -226,12 +225,12 @@
           </td>
 <td>
           <p>
- <code class="literal">``int main();``</code>
+ <tt class="literal">``int main();``</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.code" title="Code">Code</a>
+ Code
           </p>
           </td>
 </tr>
@@ -243,12 +242,13 @@
           </td>
 <td>
           <p>
- <code class="literal">``from c++ to QuickBook``</code>
+ <tt class="literal">``from c++ to QuickBook``</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.escape_back" title="Escaping Back To QuickBook">Escaping Back To QuickBook</a>
+ <a href="syntax/block.html#quickbook.syntax.block.escape_back" title=" Escaping Back
+ To QuickBook">Escaping Back To QuickBook</a>
           </p>
           </td>
 </tr>
@@ -260,13 +260,13 @@
           </td>
 <td>
           <p>
- <code class="literal">[br] or \n</code>
+ <tt class="literal">[br] or \n</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.line_break" title="line-break">line-break</a>
- <span class="bold"><strong>DEPRECATED</strong></span>
+ line-break
+ <span class="bold"><b>DEPRECATED</b></span>
           </p>
           </td>
 </tr>
@@ -278,12 +278,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[#anchor]</code>
+ <tt class="literal">[#anchor]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.anchors" title="Anchors">Anchors</a>
+ Anchors
           </p>
           </td>
 </tr>
@@ -295,12 +295,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[@http://www.boost.org Boost]</code>
+ <tt class="literal">[@http://www.boost.org Boost]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.links" title="Links">Links</a>
+ Links
           </p>
           </td>
 </tr>
@@ -312,12 +312,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[link section.anchor Link text]</code>
+ <tt class="literal">[link section.anchor Link text]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.anchor_links" title="Anchor links">Anchor links</a>
+ Anchor links
           </p>
           </td>
 </tr>
@@ -329,12 +329,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[link xml.refentry Link text]</code>
+ <tt class="literal">[link xml.refentry Link text]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.refentry_links" title="refentry links">refentry links</a>
+ refentry links
           </p>
           </td>
 </tr>
@@ -346,12 +346,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[funcref fully::qualified::function_name Link text]</code>
+ <tt class="literal">[funcref fully::qualified::function_name Link text]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title="Code Links">function, class, member,
+ <a href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title=" Code Links">function, class, member,
             enum, macro, concept or header links</a>
           </p>
           </td>
@@ -364,12 +364,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[classref fully::qualified::class_name Link text]</code>
+ <tt class="literal">[classref fully::qualified::class_name Link text]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title="Code Links">function, class, member,
+ <a href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title=" Code Links">function, class, member,
             enum, macro, concept or header links</a>
           </p>
           </td>
@@ -382,12 +382,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[memberref fully::qualified::member_name Link text]</code>
+ <tt class="literal">[memberref fully::qualified::member_name Link text]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title="Code Links">function, class, member,
+ <a href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title=" Code Links">function, class, member,
             enum, macro, concept or header links</a>
           </p>
           </td>
@@ -400,12 +400,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[enumref fully::qualified::enum_name Link text]</code>
+ <tt class="literal">[enumref fully::qualified::enum_name Link text]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title="Code Links">function, class, member,
+ <a href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title=" Code Links">function, class, member,
             enum, macro, concept or header links</a>
           </p>
           </td>
@@ -418,12 +418,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[macroref MACRO_NAME Link text]</code>
+ <tt class="literal">[macroref MACRO_NAME Link text]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title="Code Links">function, class, member,
+ <a href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title=" Code Links">function, class, member,
             enum, macro, concept or header links</a>
           </p>
           </td>
@@ -436,12 +436,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[conceptref ConceptName Link text]</code>
+ <tt class="literal">[conceptref ConceptName Link text]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title="Code Links">function, class, member,
+ <a href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title=" Code Links">function, class, member,
             enum, macro, concept or header links</a>
           </p>
           </td>
@@ -454,12 +454,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[headerref path/to/header.hpp Link text]</code>
+ <tt class="literal">[headerref path/to/header.hpp Link text]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title="Code Links">function, class, member,
+ <a href="syntax/phrase.html#quickbook.syntax.phrase.code_links" title=" Code Links">function, class, member,
             enum, macro, concept or header links</a>
           </p>
           </td>
@@ -472,12 +472,12 @@
           </td>
 <td>
           <p>
- <code class="literal">'''escaped text (no processing/formatting)'''</code>
+ <tt class="literal">'''escaped text (no processing/formatting)'''</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.escape" title="Escape">Escape</a>
+ Escape
           </p>
           </td>
 </tr>
@@ -489,12 +489,13 @@
           </td>
 <td>
           <p>
- <code class="literal">\c</code>
+ <tt class="literal">\c</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.single_char_escape" title="Single char escape">Single char
+ <a href="syntax/phrase.html#quickbook.syntax.phrase.single_char_escape" title="Single
+ char escape">Single char
             escape</a>
           </p>
           </td>
@@ -507,12 +508,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[$image.jpg]</code>
+ <tt class="literal">[$image.jpg]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.images" title="Images">Images</a>
+ Images
           </p>
           </td>
 </tr>
@@ -524,12 +525,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[section The Section Title]</code>
+ <tt class="literal">[section The Section Title]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.section" title="Section">Section</a>
+ Section
           </p>
           </td>
 </tr>
@@ -541,12 +542,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[endsect]</code>
+ <tt class="literal">[endsect]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.section" title="Section">Section</a>
+ Section
           </p>
           </td>
 </tr>
@@ -564,7 +565,7 @@
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.paragraphs" title="Paragraphs">Paragraphs</a>
+ Paragraphs
           </p>
           </td>
 </tr>
@@ -587,7 +588,8 @@
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.lists.ordered_lists" title="Ordered lists">Ordered lists</a>
+ <a href="syntax/block.html#quickbook.syntax.block.lists.ordered_lists" title="Ordered
+ lists">Ordered lists</a>
           </p>
           </td>
 </tr>
@@ -610,7 +612,8 @@
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.lists.unordered_lists" title="Unordered lists">Unordered
+ <a href="syntax/block.html#quickbook.syntax.block.lists.unordered_lists" title="Unordered
+ lists">Unordered
             lists</a>
           </p>
           </td>
@@ -628,7 +631,7 @@
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.code" title="Code">Code</a>
+ Code
           </p>
           </td>
 </tr>
@@ -640,12 +643,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[pre preformatted]</code>
+ <tt class="literal">[pre preformatted]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.preformatted" title="Preformatted">Preformatted</a>
+ Preformatted
           </p>
           </td>
 </tr>
@@ -657,12 +660,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[:sometext...]</code>
+ <tt class="literal">[:sometext...]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.blockquote" title="Blockquote">Blockquote</a>
+ Blockquote
           </p>
           </td>
 </tr>
@@ -674,12 +677,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[h1 Heading 1]</code>
+ <tt class="literal">[h1 Heading 1]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.headings" title="Headings">Heading</a>
+ Heading
           </p>
           </td>
 </tr>
@@ -691,12 +694,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[h2 Heading 2]</code>
+ <tt class="literal">[h2 Heading 2]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.headings" title="Headings">Heading</a>
+ Heading
           </p>
           </td>
 </tr>
@@ -708,12 +711,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[h3 Heading 3]</code>
+ <tt class="literal">[h3 Heading 3]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.headings" title="Headings">Heading</a>
+ Heading
           </p>
           </td>
 </tr>
@@ -725,12 +728,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[h4 Heading 4]</code>
+ <tt class="literal">[h4 Heading 4]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.headings" title="Headings">Heading</a>
+ Heading
           </p>
           </td>
 </tr>
@@ -742,12 +745,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[h5 Heading 5]</code>
+ <tt class="literal">[h5 Heading 5]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.headings" title="Headings">Heading</a>
+ Heading
           </p>
           </td>
 </tr>
@@ -759,12 +762,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[h6 Heading 6]</code>
+ <tt class="literal">[h6 Heading 6]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.headings" title="Headings">Heading</a>
+ Heading
           </p>
           </td>
 </tr>
@@ -776,12 +779,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[def macro_identifier some text]</code>
+ <tt class="literal">[def macro_identifier some text]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.macros" title="Macros">Macros</a>
+ Macros
           </p>
           </td>
 </tr>
@@ -793,12 +796,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[template[a b] [a] body [b]]</code>
+ <tt class="literal">[template[a b] [a] body [b]]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.templates" title="Templates">Templates</a>
+ Templates
           </p>
           </td>
 </tr>
@@ -810,12 +813,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[blurb advertisement or note...]</code>
+ <tt class="literal">[blurb advertisement or note...]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.blurbs" title="Blurbs">Blurbs</a>
+ Blurbs
           </p>
           </td>
 </tr>
@@ -827,12 +830,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[warning Warning text...]</code>
+ <tt class="literal">[warning Warning text...]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.admonitions" title="Admonitions">Admonitions</a>
+ Admonitions
           </p>
           </td>
 </tr>
@@ -856,7 +859,7 @@
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.tables" title="Tables">Tables</a>
+ Tables
           </p>
           </td>
 </tr>
@@ -880,7 +883,7 @@
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.variable_lists" title="Variable Lists">Variable Lists</a>
+ Variable Lists
           </p>
           </td>
 </tr>
@@ -892,12 +895,12 @@
           </td>
 <td>
           <p>
- <code class="literal">[include someother.qbk]</code>
+ <tt class="literal">[include someother.qbk]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/block.html#quickbook.syntax.block.include" title="Include">Include</a>
+ Include
           </p>
           </td>
 </tr>
@@ -909,19 +912,18 @@
           </td>
 <td>
           <p>
- <code class="literal">[? symbol phrase]</code>
+ <tt class="literal">[? symbol phrase]</tt>
           </p>
           </td>
 <td>
           <p>
- <a class="link" href="syntax/phrase.html#quickbook.syntax.phrase.cond" title="Conditional Generation">Conditional Generation</a>
+ Conditional Generation
           </p>
           </td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break">
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,12 +1,12 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Syntax Summary</title>
+<title> Syntax Summary</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../index.html" title="Quickbook 1.4">
 <link rel="up" href="../index.html" title="Quickbook 1.4">
-<link rel="prev" href="change_log.html" title="Change Log">
+<link rel="prev" href="change_log.html" title=" Change Log">
 <link rel="next" href="syntax/comments.html" title="Comments">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -24,8 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="quickbook.syntax"></a><a class="link" href="syntax.html" title="Syntax Summary"> Syntax Summary</a>
-</h2></div></div></div>
+<a name="quickbook.syntax"></a> Syntax Summary</h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section">Comments</span></dt>
 <dt><span class="section"> Phrase Level Elements</span></dt>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/block.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/block.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/block.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Block Level Elements</title>
+<title> Block Level Elements</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../../index.html" title="Quickbook 1.4">
-<link rel="up" href="../syntax.html" title="Syntax Summary">
-<link rel="prev" href="phrase.html" title="Phrase Level Elements">
-<link rel="next" href="../install.html" title="Installation and configuration">
+<link rel="up" href="../syntax.html" title=" Syntax Summary">
+<link rel="prev" href="phrase.html" title=" Phrase Level Elements">
+<link rel="next" href="../install.html" title=" Installation and configuration">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,8 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="quickbook.syntax.block"></a><a class="link" href="block.html" title="Block Level Elements"> Block Level Elements</a>
-</h3></div></div></div>
+<a name="quickbook.syntax.block"></a> Block Level Elements</h3></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section">Document</span></dt>
 <dt><span class="section">Section</span></dt>
@@ -52,8 +51,7 @@
 </dl></div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.document"></a><a class="link" href="block.html#quickbook.syntax.block.document" title="Document">Document</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.document"></a>Document</h4></div></div></div>
 <p>
           Every document must begin with a Document Info section, which should look
           like this:
@@ -114,22 +112,21 @@
           for. In its absence, version 1.1 is assumed.
         </p>
 <p>
- <code class="literal">version</code>, <code class="literal">id</code>, <code class="literal">dirname</code>,
- <code class="literal">copyright</code>, <code class="literal">purpose</code>, <code class="literal">category</code>,
- <code class="literal">authors</code>, <code class="literal">license</code>, <code class="literal">last-revision</code>
- and <code class="literal">source-mode</code> are optional information.
+ <tt class="literal">version</tt>, <tt class="literal">id</tt>, <tt class="literal">dirname</tt>,
+ <tt class="literal">copyright</tt>, <tt class="literal">purpose</tt>, <tt class="literal">category</tt>,
+ <tt class="literal">authors</tt>, <tt class="literal">license</tt>, <tt class="literal">last-revision</tt>
+ and <tt class="literal">source-mode</tt> are optional information.
         </p>
 <p>
- <code class="literal">source-type</code> is a lowercase string setting the initial
- <a class="link" href="phrase.html#quickbook.syntax.phrase.source_mode" title="Source Mode">Source Mode</a>.
- If the <code class="literal">source-mode</code> field is omitted, a default value
- of <code class="literal">c++</code> will be used.
+ <tt class="literal">source-type</tt> is a lowercase string setting the initial
+ Source Mode.
+ If the <tt class="literal">source-mode</tt> field is omitted, a default value
+ of <tt class="literal">c++</tt> will be used.
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.section"></a><a class="link" href="block.html#quickbook.syntax.block.section" title="Section">Section</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.section"></a>Section</h4></div></div></div>
 <p>
           Starting a new section is accomplished with:
         </p>
@@ -138,8 +135,8 @@
 <p>
           where <span class="emphasis"><em>id</em></span> is optional. id will be the filename of the
           generated section. If it is not present, "The Section Title"
- will be normalized and become the id. Valid characters are <code class="literal">a-Z</code>,
- <code class="literal">A-Z</code>, <code class="literal">0-9</code> and <code class="literal">_</code>.
+ will be normalized and become the id. Valid characters are <tt class="literal">a-Z</tt>,
+ <tt class="literal">A-Z</tt>, <tt class="literal">0-9</tt> and <tt class="literal">_</tt>.
           All non-valid characters are converted to underscore and all upper-case
           are converted to lower case. Thus: "The Section Title" will be
           normalized to "the_section_title".
@@ -155,8 +152,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.xinclude"></a><a class="link" href="block.html#quickbook.syntax.block.xinclude" title="xinclude">xinclude</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.xinclude"></a>xinclude</h4></div></div></div>
 <p>
           You can include another XML file with:
         </p>
@@ -169,8 +165,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.paragraphs"></a><a class="link" href="block.html#quickbook.syntax.block.paragraphs" title="Paragraphs">Paragraphs</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.paragraphs"></a>Paragraphs</h4></div></div></div>
 <p>
           Paragraphs start left-flushed and are terminated by two or more newlines.
           No markup is needed for paragraphs. QuickBook automatically detects paragraphs
@@ -184,8 +179,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.lists"></a><a class="link" href="block.html#quickbook.syntax.block.lists" title="Lists">Lists</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.lists"></a>Lists</h4></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"><a href="block.html#quickbook.syntax.block.lists.ordered_lists">Ordered
           lists</a></span></dt>
@@ -199,9 +193,9 @@
 </dl></div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="quickbook.syntax.block.lists.ordered_lists"></a><a class="link" href="block.html#quickbook.syntax.block.lists.ordered_lists" title="Ordered lists">Ordered
- lists</a>
-</h5></div></div></div>
+<a name="quickbook.syntax.block.lists.ordered_lists"></a><a href="block.html#quickbook.syntax.block.lists.ordered_lists" title="Ordered
+ lists">Ordered
+ lists</a></h5></div></div></div>
 <pre class="programlisting"># One
 # Two
 # Three
@@ -223,9 +217,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="quickbook.syntax.block.lists.list_hierarchies"></a><a class="link" href="block.html#quickbook.syntax.block.lists.list_hierarchies" title="List Hierarchies">List
- Hierarchies</a>
-</h5></div></div></div>
+<a name="quickbook.syntax.block.lists.list_hierarchies"></a><a href="block.html#quickbook.syntax.block.lists.list_hierarchies" title="List
+ Hierarchies">List
+ Hierarchies</a></h5></div></div></div>
 <p>
             List hierarchies are supported. Example:
           </p>
@@ -286,9 +280,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="quickbook.syntax.block.lists.long_list_lines"></a><a class="link" href="block.html#quickbook.syntax.block.lists.long_list_lines" title="Long List Lines">Long
- List Lines</a>
-</h5></div></div></div>
+<a name="quickbook.syntax.block.lists.long_list_lines"></a><a href="block.html#quickbook.syntax.block.lists.long_list_lines" title="Long
+ List Lines">Long
+ List Lines</a></h5></div></div></div>
 <p>
             Long lines will be wrapped appropriately. Example:
           </p>
@@ -317,9 +311,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="quickbook.syntax.block.lists.unordered_lists"></a><a class="link" href="block.html#quickbook.syntax.block.lists.unordered_lists" title="Unordered lists">Unordered
- lists</a>
-</h5></div></div></div>
+<a name="quickbook.syntax.block.lists.unordered_lists"></a><a href="block.html#quickbook.syntax.block.lists.unordered_lists" title="Unordered
+ lists">Unordered
+ lists</a></h5></div></div></div>
 <pre class="programlisting">* First
 * Second
 * Third
@@ -341,8 +335,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="quickbook.syntax.block.lists.mixed_lists"></a><a class="link" href="block.html#quickbook.syntax.block.lists.mixed_lists" title="Mixed lists">Mixed lists</a>
-</h5></div></div></div>
+<a name="quickbook.syntax.block.lists.mixed_lists"></a>Mixed lists</h5></div></div></div>
 <p>
             Mixed lists (ordered and unordered) are supported. Example:
           </p>
@@ -453,11 +446,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.code"></a><a class="link" href="block.html#quickbook.syntax.block.code" title="Code">Code</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.code"></a>Code</h4></div></div></div>
 <p>
           Preformatted code starts with a space or a tab. The code will be syntax
- highlighted according to the current <a class="link" href="phrase.html#quickbook.syntax.phrase.source_mode" title="Source Mode">Source
+ highlighted according to the current <a href="phrase.html#quickbook.syntax.phrase.source_mode" title="Source Mode">Source
           Mode</a>:
         </p>
 <p>
@@ -501,9 +493,9 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.escape_back"></a><a class="link" href="block.html#quickbook.syntax.block.escape_back" title="Escaping Back To QuickBook"> Escaping Back
- To QuickBook</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.escape_back"></a><a href="block.html#quickbook.syntax.block.escape_back" title=" Escaping Back
+ To QuickBook"> Escaping Back
+ To QuickBook</a></h4></div></div></div>
 <p>
           Inside code, code blocks and inline code, QuickBook does not allow any
           markup to avoid conflicts with the target syntax (e.g. c++). In case you
@@ -531,11 +523,10 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.preformatted"></a><a class="link" href="block.html#quickbook.syntax.block.preformatted" title="Preformatted">Preformatted</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.preformatted"></a>Preformatted</h4></div></div></div>
 <p>
           Sometimes, you don't want some preformatted text to be parsed as C++. In
- such cases, use the <code class="literal">[pre ... ]</code> markup block.
+ such cases, use the <tt class="literal">[pre ... ]</tt> markup block.
         </p>
 <pre class="programlisting">[pre
 
@@ -552,22 +543,21 @@
           level markup, pre (and Code) are the only ones that allow multiple newlines.
           The markup above will generate:
         </p>
-<pre class="programlisting">Some <span class="bold"><strong>preformatted</strong></span> text Some <span class="bold"><strong>preformatted</strong></span> text
+<pre class="programlisting">Some <span class="bold"><b>preformatted</b></span> text Some <span class="bold"><b>preformatted</b></span> text
 
- Some <span class="bold"><strong>preformatted</strong></span> text Some <span class="bold"><strong>preformatted</strong></span> text
+ Some <span class="bold"><b>preformatted</b></span> text Some <span class="bold"><b>preformatted</b></span> text
 
- Some <span class="bold"><strong>preformatted</strong></span> text Some <span class="bold"><strong>preformatted</strong></span> text
+ Some <span class="bold"><b>preformatted</b></span> text Some <span class="bold"><b>preformatted</b></span> text
 
 </pre>
 <p>
           Notice that unlike Code, phrase markup such as font style is still permitted
- inside <code class="literal">pre</code> blocks.
+ inside <tt class="literal">pre</tt> blocks.
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.blockquote"></a><a class="link" href="block.html#quickbook.syntax.block.blockquote" title="Blockquote">Blockquote</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.blockquote"></a>Blockquote</h4></div></div></div>
 <pre class="programlisting">[:sometext...]
 </pre>
 <div class="blockquote"><blockquote class="blockquote">
@@ -582,8 +572,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.admonitions"></a><a class="link" href="block.html#quickbook.syntax.block.admonitions" title="Admonitions">Admonitions</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.admonitions"></a>Admonitions</h4></div></div></div>
 <pre class="programlisting">[note This is a note]
 [tip This is a tip]
 [important This is important]
@@ -598,7 +587,7 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../doc/html/images/note.png"></td>
 <th align="left">Note</th>
 </tr>
-<tr><td align="left" valign="top"><p>
+<tr><td colspan="2" align="left" valign="top"><p>
             This is a note
           </p></td></tr>
 </table></div>
@@ -607,7 +596,7 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="../../../../../../doc/html/images/tip.png"></td>
 <th align="left">Tip</th>
 </tr>
-<tr><td align="left" valign="top"><p>
+<tr><td colspan="2" align="left" valign="top"><p>
             This is a tip
           </p></td></tr>
 </table></div>
@@ -616,7 +605,7 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../../../doc/html/images/important.png"></td>
 <th align="left">Important</th>
 </tr>
-<tr><td align="left" valign="top"><p>
+<tr><td colspan="2" align="left" valign="top"><p>
             This is important
           </p></td></tr>
 </table></div>
@@ -625,7 +614,7 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../../../../doc/html/images/caution.png"></td>
 <th align="left">Caution</th>
 </tr>
-<tr><td align="left" valign="top"><p>
+<tr><td colspan="2" align="left" valign="top"><p>
             This is a caution
           </p></td></tr>
 </table></div>
@@ -634,20 +623,19 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="../../../../../../doc/html/images/warning.png"></td>
 <th align="left">Warning</th>
 </tr>
-<tr><td align="left" valign="top"><p>
+<tr><td colspan="2" align="left" valign="top"><p>
             This is a warning
           </p></td></tr>
 </table></div>
 <p>
           These are the only admonitions supported by DocBook.
- So, for example <code class="literal">[information This is some information]</code>
+ So, for example <tt class="literal">[information This is some information]</tt>
           is unlikely to produce the desired effect.
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.headings"></a><a class="link" href="block.html#quickbook.syntax.block.headings" title="Headings">Headings</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.headings"></a>Headings</h4></div></div></div>
 <pre class="programlisting">[h1 Heading 1]
 [h2 Heading 2]
 [h3 Heading 3]
@@ -655,51 +643,50 @@
 [h5 Heading 5]
 [h6 Heading 6]
 </pre>
-<a name="quickbook.syntax.block.headings.heading_1"></a><h2>
-<a name="id2638745"></a>
- <a class="link" href="block.html#quickbook.syntax.block.headings.heading_1">Heading 1</a>
+<a name="quickbook.syntax.block.headings.heading_1"></a><h1>
+<a name="id459731"></a>
+ Heading 1
+ </h1>
+<a name="quickbook.syntax.block.headings.heading_2"></a><h2>
+<a name="id459755"></a>
+ Heading 2
         </h2>
-<a name="quickbook.syntax.block.headings.heading_2"></a><h3>
-<a name="id2638762"></a>
- <a class="link" href="block.html#quickbook.syntax.block.headings.heading_2">Heading 2</a>
+<a name="quickbook.syntax.block.headings.heading_3"></a><h3>
+<a name="id459780"></a>
+ Heading 3
         </h3>
-<a name="quickbook.syntax.block.headings.heading_3"></a><h4>
-<a name="id2638780"></a>
- <a class="link" href="block.html#quickbook.syntax.block.headings.heading_3">Heading 3</a>
+<a name="quickbook.syntax.block.headings.heading_4"></a><h4>
+<a name="id459804"></a>
+ Heading 4
         </h4>
-<a name="quickbook.syntax.block.headings.heading_4"></a><h5>
-<a name="id2638798"></a>
- <a class="link" href="block.html#quickbook.syntax.block.headings.heading_4">Heading 4</a>
+<a name="quickbook.syntax.block.headings.heading_5"></a><h5>
+<a name="id459829"></a>
+ Heading 5
         </h5>
-<a name="quickbook.syntax.block.headings.heading_5"></a><h6>
-<a name="id2638816"></a>
- <a class="link" href="block.html#quickbook.syntax.block.headings.heading_5">Heading 5</a>
- </h6>
 <a name="quickbook.syntax.block.headings.heading_6"></a><h5>
-<a name="id2638833"></a>
- <a class="link" href="block.html#quickbook.syntax.block.headings.heading_6">Heading 6</a>
+<a name="id459854"></a>
+ Heading 6
         </h5>
 <p>
           Headings 1-3 [h1 h2 and h3] will automatically have anchors with normalized
- names with <code class="literal">name="section_id.normalized_header_text"</code>
- (i.e. valid characters are <code class="literal">a-z</code>, <code class="literal">A-Z</code>,
- <code class="literal">0-9</code> and <code class="literal">_</code>. All non-valid characters
+ names with <tt class="literal">name="section_id.normalized_header_text"</tt>
+ (i.e. valid characters are <tt class="literal">a-z</tt>, <tt class="literal">A-Z</tt>,
+ <tt class="literal">0-9</tt> and <tt class="literal">_</tt>. All non-valid characters
           are converted to underscore and all upper-case are converted to lower-case.
- For example: Heading 1 in section Section 2 will be normalized to <code class="literal">section_2.heading_1</code>).
+ For example: Heading 1 in section Section 2 will be normalized to <tt class="literal">section_2.heading_1</tt>).
           You can use:
         </p>
 <pre class="programlisting">[link section_id.normalized_header_text The link text]
 </pre>
 <p>
- to link to them. See <a class="link" href="phrase.html#quickbook.syntax.phrase.anchor_links" title="Anchor links">Anchor
- links</a> and <a class="link" href="block.html#quickbook.syntax.block.section" title="Section">Section</a>
+ to link to them. See <a href="phrase.html#quickbook.syntax.phrase.anchor_links" title="Anchor links">Anchor
+ links</a> and Section
           for more info.
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.generic_heading"></a><a class="link" href="block.html#quickbook.syntax.block.generic_heading" title="Generic Heading">Generic Heading</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.generic_heading"></a>Generic Heading</h4></div></div></div>
 <p>
           In cases when you don't want to care about the heading level (1 to 6),
           you can use the <span class="emphasis"><em>Generic Heading</em></span>:
@@ -746,8 +733,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.macros"></a><a class="link" href="block.html#quickbook.syntax.block.macros" title="Macros">Macros</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.macros"></a>Macros</h4></div></div></div>
 <pre class="programlisting">[def macro_identifier some text]
 </pre>
 <p>
@@ -771,19 +757,19 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="../../../../../../doc/html/images/tip.png"></td>
 <th align="left">Tip</th>
 </tr>
-<tr><td align="left" valign="top"><p>
+<tr><td colspan="2" align="left" valign="top"><p>
             It's a good idea to use macro identifiers that are distinguishable. For
             instance, in this document, macro identifiers have two leading and trailing
- underscores (e.g. <code class="literal">__spirit__</code>). The reason is to avoid unwanted
+ underscores (e.g. <tt class="literal">__spirit__</tt>). The reason is to avoid unwanted
             macro replacement.
           </p></td></tr>
 </table></div>
 <p>
- Links (URLS) and images are good candidates for macros. <span class="bold"><strong>1</strong></span>)
+ Links (URLS) and images are good candidates for macros. <span class="bold"><b>1</b></span>)
           They tend to change a lot. It is a good idea to place all links and images
- in one place near the top to make it easy to make changes. <span class="bold"><strong>2</strong></span>)
- The syntax is not pretty. It's easier to read and write, e.g. <code class="literal">__spirit__</code>
- than <code class="literal">[@http://spirit.sourceforge.net Spirit]</code>.
+ in one place near the top to make it easy to make changes. <span class="bold"><b>2</b></span>)
+ The syntax is not pretty. It's easier to read and write, e.g. <tt class="literal">__spirit__</tt>
+ than <tt class="literal">[@http://spirit.sourceforge.net Spirit]</tt>.
         </p>
 <p>
           Some more examples:
@@ -792,8 +778,8 @@
 [def __spirit__ [@http://spirit.sourceforge.net Spirit]]
 </pre>
 <p>
- (See <a class="link" href="phrase.html#quickbook.syntax.phrase.images" title="Images">Images</a> and
- <a class="link" href="phrase.html#quickbook.syntax.phrase.links" title="Links">Links</a>)
+ (See Images and
+ Links)
         </p>
 <p>
           Invoking these macros:
@@ -809,15 +795,15 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.predefined_macros"></a><a class="link" href="block.html#quickbook.syntax.block.predefined_macros" title="Predefined Macros">Predefined
- Macros</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.predefined_macros"></a><a href="block.html#quickbook.syntax.block.predefined_macros" title="Predefined
+ Macros">Predefined
+ Macros</a></h4></div></div></div>
 <p>
           Quickbook has some predefined macros that you can already use.
         </p>
 <div class="table">
-<a name="id2639211"></a><p class="title"><b>Table 3. Predefined Macros</b></p>
-<div class="table-contents"><table class="table" summary="Predefined Macros">
+<a name="id460310"></a><p class="title"><b>Table 3. Predefined Macros</b></p>
+<table class="table" summary="Predefined Macros">
 <colgroup>
 <col>
 <col>
@@ -854,7 +840,7 @@
               </td>
 <td>
               <p>
- 2008-Mar-15
+ 2008-May-21
               </p>
               </td>
 </tr>
@@ -871,7 +857,7 @@
               </td>
 <td>
               <p>
- 02:07:42 PM
+ 11:54:31 AM
               </p>
               </td>
 </tr>
@@ -888,19 +874,17 @@
               </td>
 <td>
               <p>
- /home/daniel/boost/branches/release/tools/quickbook/doc/quickbook.qbk
+ C:\dev\boost\tools\quickbook\doc\quickbook.qbk
               </p>
               </td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break">
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.templates"></a><a class="link" href="block.html#quickbook.syntax.block.templates" title="Templates">Templates</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.templates"></a>Templates</h4></div></div></div>
 <p>
           Templates provide a more versatile text substitution mechanism. Templates
           come in handy when you need to create parameterizable, multi-line, boilerplate
@@ -918,11 +902,11 @@
 
 ]
 </pre>
-<a name="quickbook.syntax.block.templates.template_identifier"></a><h6>
-<a name="id2639367"></a>
- <a class="link" href="block.html#quickbook.syntax.block.templates.template_identifier">Template
+<a name="quickbook.syntax.block.templates.template_identifier"></a><h5>
+<a name="id460490"></a>
+ <a href="block.html#quickbook.syntax.block.templates.template_identifier">Template
           Identifier</a>
- </h6>
+ </h5>
 <p>
           Template identifiers can either consist of:
         </p>
@@ -936,11 +920,11 @@
             A single character punctuation (a non-alphanumeric printable character)
           </li>
 </ul></div>
-<a name="quickbook.syntax.block.templates.formal_template_arguments"></a><h6>
-<a name="id2639406"></a>
- <a class="link" href="block.html#quickbook.syntax.block.templates.formal_template_arguments">Formal
+<a name="quickbook.syntax.block.templates.formal_template_arguments"></a><h5>
+<a name="id460537"></a>
+ <a href="block.html#quickbook.syntax.block.templates.formal_template_arguments">Formal
           Template Arguments</a>
- </h6>
+ </h5>
 <p>
           Template formal arguments are identifiers consisting of an initial alphabetic
           character or the underscore, followed by zero or more alphanumeric characters
@@ -948,19 +932,19 @@
         </p>
 <p>
           A template formal argument temporarily hides a template of the same name
- at the point where the <a class="link" href="block.html#quickbook.syntax.block.templates.template_expansion">template
- is expanded</a>. Note that the body of the <code class="literal">person</code>
- template above refers to <code class="literal">name</code> <code class="literal">age</code>
- and <code class="literal">what</code> as <code class="literal">[name]</code> <code class="literal">[age]</code>
- and <code class="literal">[what]</code>. <code class="literal">name</code> <code class="literal">age</code>
- and <code class="literal">what</code> are actually templates that exist in the duration
+ at the point where the <a href="block.html#quickbook.syntax.block.templates.template_expansion">template
+ is expanded</a>. Note that the body of the <tt class="literal">person</tt>
+ template above refers to <tt class="literal">name</tt> <tt class="literal">age</tt>
+ and <tt class="literal">what</tt> as <tt class="literal">[name]</tt> <tt class="literal">[age]</tt>
+ and <tt class="literal">[what]</tt>. <tt class="literal">name</tt> <tt class="literal">age</tt>
+ and <tt class="literal">what</tt> are actually templates that exist in the duration
           of the template call.
         </p>
-<a name="quickbook.syntax.block.templates.template_body"></a><h6>
-<a name="id2639501"></a>
- <a class="link" href="block.html#quickbook.syntax.block.templates.template_body">Template
+<a name="quickbook.syntax.block.templates.template_body"></a><h5>
+<a name="id460656"></a>
+ <a href="block.html#quickbook.syntax.block.templates.template_body">Template
           Body</a>
- </h6>
+ </h5>
 <p>
           The template body can be just about any QuickBook block or phrase. There
           are actually two forms. Templates may be phrase or block level. Phrase
@@ -981,11 +965,11 @@
           Phrase templates are typically expanded as part of phrases. Like macros,
           block level elements are not allowed in phrase templates.
         </p>
-<a name="quickbook.syntax.block.templates.template_expansion"></a><h6>
-<a name="id2639554"></a>
- <a class="link" href="block.html#quickbook.syntax.block.templates.template_expansion">Template
+<a name="quickbook.syntax.block.templates.template_expansion"></a><h5>
+<a name="id460715"></a>
+ <a href="block.html#quickbook.syntax.block.templates.template_expansion">Template
           Expansion</a>
- </h6>
+ </h5>
 <p>
           You expand a template this way:
         </p>
@@ -1018,7 +1002,7 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../../../../doc/html/images/caution.png"></td>
 <th align="left">Caution</th>
 </tr>
-<tr><td align="left" valign="top"><p>
+<tr><td colspan="2" align="left" valign="top"><p>
             A word of caution: Templates are recursive. A template can call another
             template or even itself, directly or indirectly. There are no control
             structures in QuickBook (yet) so this will always mean infinite recursion.
@@ -1028,15 +1012,15 @@
 </table></div>
 <p>
           Each actual argument can be a word, a text fragment or just about any
- <a class="link" href="phrase.html" title="Phrase Level Elements">QuickBook phrase</a>. Arguments
- are separated by the double dot <code class="literal">".."</code> and terminated
+ QuickBook phrase. Arguments
+ are separated by the double dot <tt class="literal">".."</tt> and terminated
           by the close parenthesis.
         </p>
-<a name="quickbook.syntax.block.templates.nullary_templates"></a><h6>
-<a name="id2639643"></a>
- <a class="link" href="block.html#quickbook.syntax.block.templates.nullary_templates">Nullary
+<a name="quickbook.syntax.block.templates.nullary_templates"></a><h5>
+<a name="id460822"></a>
+ <a href="block.html#quickbook.syntax.block.templates.nullary_templates">Nullary
           Templates</a>
- </h6>
+ </h5>
 <p>
           Nullary templates look and act like simple macros. Example:
         </p>
@@ -1051,14 +1035,14 @@
           We have:
         </p>
 <p>
- Some squiggles...<span class="bold"><strong>&#945;&#946;</strong></span>
+ Some squiggles...<span class="bold"><b>&#945;&#946;</b></span>
         </p>
 <p>
           The difference with macros are
         </p>
 <div class="itemizedlist"><ul type="disc">
 <li>
- The explicit <a class="link" href="block.html#quickbook.syntax.block.templates.template_expansion">template
+ The explicit <a href="block.html#quickbook.syntax.block.templates.template_expansion">template
             expansion syntax</a>. This is an advantage because, now, we don't
             have to use obscure naming conventions like double underscores (e.g.
             __alpha__) to avoid unwanted macro replacement.
@@ -1071,7 +1055,7 @@
           </li>
 </ul></div>
 <p>
- The empty brackets after the template identifier (<code class="literal">alpha[]</code>)
+ The empty brackets after the template identifier (<tt class="literal">alpha[]</tt>)
           indicates no arguments. If the template body does not look like a template
           argument list, we can elide the empty brackets. Example:
         </p>
@@ -1087,15 +1071,15 @@
           We have:
         </p>
 <p>
- Here's a quote from Aristotle: <span class="bold"><strong><span class="emphasis"><em>Education
- is the best provision for the journey to old age.</em></span></strong></span>.
+ Here's a quote from Aristotle: <span class="bold"><b><span class="emphasis"><em>Education
+ is the best provision for the journey to old age.</em></span></b></span>.
         </p>
 <p>
           The disadvantage is that you can't avoid the space between the template
- identifier, <code class="computeroutput"><span class="identifier">aristotle_quote</span></code>,
+ identifier, <tt class="computeroutput"><span class="identifier">aristotle_quote</span></tt>,
           and the template body "Aristotle...". This space will be part
           of the template body. If that space is unwanted, use empty brackets or
- use the space escape: "<code class="computeroutput"><span class="special">\</span> </code>".
+ use the space escape: "<tt class="computeroutput"><span class="special">\</span> </tt>".
           Example:
         </p>
 <pre class="programlisting">[template tag\ _tag]
@@ -1109,26 +1093,26 @@
           We have:
         </p>
 <p>
- <code class="computeroutput"><span class="keyword">struct</span></code> x_tag;
+ <tt class="computeroutput"><span class="keyword">struct</span></tt> x_tag;
         </p>
 <p>
           You have a couple of ways to do it. I personally prefer the explicit empty
           brackets, though.
         </p>
-<a name="quickbook.syntax.block.templates.simple_arguments"></a><h6>
-<a name="id2639840"></a>
- <a class="link" href="block.html#quickbook.syntax.block.templates.simple_arguments">Simple
+<a name="quickbook.syntax.block.templates.simple_arguments"></a><h5>
+<a name="id461056"></a>
+ <a href="block.html#quickbook.syntax.block.templates.simple_arguments">Simple
           Arguments</a>
- </h6>
+ </h5>
 <p>
- As mentioned, arguments are separated by the double dot <code class="literal">".."</code>.
+ As mentioned, arguments are separated by the double dot <tt class="literal">".."</tt>.
           If there are less arguments passed than expected, QuickBook attempts to
           break the last argument into two or more arguments following this logic:
         </p>
 <div class="itemizedlist"><ul type="disc">
 <li>
- Break the last argument into two, at the first space found (<code class="literal">'',
- '\n', \t' or '\r'</code>).
+ Break the last argument into two, at the first space found (<tt class="literal">'',
+ '\n', \t' or '\r'</tt>).
           </li>
 <li>
             Repeat until there are enough arguments or if there are no more spaces
@@ -1149,8 +1133,8 @@
         </p>
 <p>
           "w x y z" is initially treated as a single argument because we
- didn't supply any <code class="literal">".."</code> separators. However,
- since <code class="literal">simple</code> expects 4 arguments, "w x y z"
+ didn't supply any <tt class="literal">".."</tt> separators. However,
+ since <tt class="literal">simple</tt> expects 4 arguments, "w x y z"
           is broken down iteratively (applying the logic above) until we have "w",
           "x", "y" and "z".
         </p>
@@ -1171,8 +1155,8 @@
         </p>
 <p>
           It should be obvious now that for simple arguments with no spaces, we can
- get by without separating the arguments with <code class="literal">".."</code>
- separators. It is possible to combine <code class="literal">".."</code>
+ get by without separating the arguments with <tt class="literal">".."</tt>
+ separators. It is possible to combine <tt class="literal">".."</tt>
           separators with the argument passing simplification presented above. Example:
         </p>
 <pre class="programlisting">[simple what do you think ..m a n?]
@@ -1183,17 +1167,17 @@
 <p>
           what do you think man?
         </p>
-<a name="quickbook.syntax.block.templates.punctuation_templates"></a><h6>
-<a name="id2639982"></a>
- <a class="link" href="block.html#quickbook.syntax.block.templates.punctuation_templates">Punctuation
+<a name="quickbook.syntax.block.templates.punctuation_templates"></a><h5>
+<a name="id461226"></a>
+ <a href="block.html#quickbook.syntax.block.templates.punctuation_templates">Punctuation
           Templates</a>
- </h6>
+ </h5>
 <p>
           With templates, one of our objectives is to allow us to rewrite QuickBook
           in QuickBook (as a qbk library). For that to happen, we need to accommodate
           single character punctuation templates which are fairly common in QuickBook.
           You might have noticed that single character punctuations are allowed as
- <a class="link" href="block.html#quickbook.syntax.block.templates.template_identifier">template
+ <a href="block.html#quickbook.syntax.block.templates.template_identifier">template
           identifiers</a>. Example:
         </p>
 <pre class="programlisting">[template ![bar] &lt;hey&gt;[bar]&lt;/hey&gt;]
@@ -1211,8 +1195,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.blurbs"></a><a class="link" href="block.html#quickbook.syntax.block.blurbs" title="Blurbs">Blurbs</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.blurbs"></a>Blurbs</h4></div></div></div>
 <pre class="programlisting">[blurb :-) [*An eye catching advertisement or note...]
 
     __spirit__ is an object-oriented recursive-descent parser generator framework
@@ -1225,10 +1208,9 @@
           will generate this:
         </p>
 <div class="sidebar">
-<p class="title"><b></b></p>
 <p>
- <span class="inlinemediaobject"><img src="../../images/smiley.png" alt="smiley"></span> <span class="bold"><strong>An eye catching advertisement
- or note...</strong></span>
+ <span class="inlinemediaobject"><img src="../../images/smiley.png" alt="smiley"></span> <span class="bold"><b>An eye catching advertisement
+ or note...</b></span>
         </p>
 <p>
           <a href="http://spirit.sourceforge.net" target="_top">Spirit</a> is an object-oriented
@@ -1242,16 +1224,15 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../doc/html/images/note.png"></td>
 <th align="left">Note</th>
 </tr>
-<tr><td align="left" valign="top"><p>
- Prefer <a class="link" href="block.html#quickbook.syntax.block.admonitions" title="Admonitions">admonitions</a>
+<tr><td colspan="2" align="left" valign="top"><p>
+ Prefer admonitions
             wherever appropriate.
           </p></td></tr>
 </table></div>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.tables"></a><a class="link" href="block.html#quickbook.syntax.block.tables" title="Tables">Tables</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.tables"></a>Tables</h4></div></div></div>
 <pre class="programlisting">[table A Simple Table
     [[Heading 1] [Heading 2] [Heading 3]]
     [[R0-C0] [R0-C1] [R0-C2]]
@@ -1263,8 +1244,8 @@
           will generate:
         </p>
 <div class="table">
-<a name="id2640152"></a><p class="title"><b>Table 4. A Simple Table</b></p>
-<div class="table-contents"><table class="table" summary="A Simple Table">
+<a name="id461429"></a><p class="title"><b>Table 4. A Simple Table</b></p>
+<table class="table" summary="A Simple Table">
 <colgroup>
 <col>
 <col>
@@ -1340,11 +1321,11 @@
               </td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><p>
+<p>
           The table title is optional. The first row of the table is automatically
- treated as the table header; that is, it is wrapped in <code class="literal">&lt;thead&gt;...&lt;/thead&gt;</code>
+ treated as the table header; that is, it is wrapped in <tt class="literal">&lt;thead&gt;...&lt;/thead&gt;</tt>
           XML tags. Note that unlike the original QuickDoc, the columns are nested
           in [ cells... ]. The syntax is free-format and allows big cells to be formatted
           nicely. Example:
@@ -1374,8 +1355,8 @@
           and thus:
         </p>
 <div class="table">
-<a name="id2640298"></a><p class="title"><b>Table 5. Table with fat cells</b></p>
-<div class="table-contents"><table class="table" summary="Table with fat cells">
+<a name="id461593"></a><p class="title"><b>Table 5. Table with fat cells</b></p>
+<table class="table" summary="Table with fat cells">
 <colgroup>
 <col>
 <col>
@@ -1427,9 +1408,9 @@
               </td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><p>
+<p>
           Here's how to have preformatted blocks of code in a table cell:
         </p>
 <pre class="programlisting">[table Table with code
@@ -1449,8 +1430,8 @@
 ]
 </pre>
 <div class="table">
-<a name="id2640404"></a><p class="title"><b>Table 6. Table with code</b></p>
-<div class="table-contents"><table class="table" summary="Table with code">
+<a name="id461711"></a><p class="title"><b>Table 6. Table with code</b></p>
+<table class="table" summary="Table with code">
 <colgroup>
 <col>
 <col>
@@ -1490,14 +1471,12 @@
               </p>
               </td>
 </tr></tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break">
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.variable_lists"></a><a class="link" href="block.html#quickbook.syntax.block.variable_lists" title="Variable Lists">Variable Lists</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.variable_lists"></a>Variable Lists</h4></div></div></div>
 <pre class="programlisting">[variablelist A Variable List
     [[term 1] [The definition of term 1]]
     [[term 2] [The definition of term 2]]
@@ -1542,8 +1521,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.include"></a><a class="link" href="block.html#quickbook.syntax.block.include" title="Include">Include</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.include"></a>Include</h4></div></div></div>
 <p>
           You can include one QuickBook file from another. The syntax is simply:
         </p>
@@ -1563,7 +1541,7 @@
           </li>
 </ul></div>
 <p>
- The <code class="literal">[include]</code> directive lets you specify a document
+ The <tt class="literal">[include]</tt> directive lets you specify a document
           id to use for the included file. When this id is not explicitly specified,
           the id defaults to the filename ("someother", in the example
           above). You can specify the id like this:
@@ -1574,13 +1552,12 @@
           All auto-generated anchors will use the document id as a unique prefix.
           So for instance, if there is a top section in someother.qbk named "Intro",
           the named anchor for that section will be "someid.intro", and
- you can link to it with <code class="literal">[link someid.intro The Intro]</code>.
+ you can link to it with <tt class="literal">[link someid.intro The Intro]</tt>.
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.block.import"></a><a class="link" href="block.html#quickbook.syntax.block.import" title="Import">Import</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.block.import"></a>Import</h4></div></div></div>
 <p>
           When documenting code, you'd surely need to present code from actual source
           files. While it is possible to copy some code and paste them in your QuickBook
@@ -1592,10 +1569,10 @@
 <p>
           QuickBook's import facility provides a nice solution.
         </p>
-<a name="quickbook.syntax.block.import.example"></a><h6>
-<a name="id2640767"></a>
- <a class="link" href="block.html#quickbook.syntax.block.import.example">Example</a>
- </h6>
+<a name="quickbook.syntax.block.import.example"></a><h5>
+<a name="id462135"></a>
+ Example
+ </h5>
 <p>
           You can effortlessly import code snippets from source code into your QuickBook.
           The following illustrates how this is done:
@@ -1612,8 +1589,8 @@
 <p>
           collects specially marked-up code snippets from stub.cpp
           and places them in your QuickBook file as virtual templates. Each of the
- specially marked-up code snippets has a name (e.g. <code class="computeroutput"><span class="identifier">foo</span></code>
- and <code class="computeroutput"><span class="identifier">bar</span></code> in the example
+ specially marked-up code snippets has a name (e.g. <tt class="computeroutput"><span class="identifier">foo</span></tt>
+ and <tt class="computeroutput"><span class="identifier">bar</span></tt> in the example
           above). This shall be the template identifier for that particular code
           snippet. The second and third line above does the actual template expansion:
         </p>
@@ -1626,7 +1603,7 @@
 <p>
           </p>
 <p>
- This is the <span class="bold"><strong><span class="emphasis"><em>foo</em></span></strong></span>
+ This is the <span class="bold"><b><span class="emphasis"><em>foo</em></span></b></span>
             function.
           </p>
 <p>
@@ -1666,7 +1643,7 @@
 <p>
           </p>
 <p>
- This is the <span class="bold"><strong><span class="emphasis"><em>bar</em></span></strong></span>
+ This is the <span class="bold"><b><span class="emphasis"><em>bar</em></span></b></span>
             function
           </p>
 <p>
@@ -1689,11 +1666,11 @@
           </p>
 <p>
         </p>
-<a name="quickbook.syntax.block.import.code_snippet_markup"></a><h6>
-<a name="id2641021"></a>
- <a class="link" href="block.html#quickbook.syntax.block.import.code_snippet_markup">Code
+<a name="quickbook.syntax.block.import.code_snippet_markup"></a><h5>
+<a name="id462439"></a>
+ <a href="block.html#quickbook.syntax.block.import.code_snippet_markup">Code
           Snippet Markup</a>
- </h6>
+ </h5>
 <p>
           Note how the code snippets in stub.cpp
           get marked up. We use distinguishable comments following the form:
@@ -1705,16 +1682,16 @@
 </span></pre>
 <p>
           The first comment line above initiates a named code-snippet. This prefix
- will not be visible in quickbook. The entire code-snippet in between <code class="computeroutput"><span class="comment">//[id</span></code> and <code class="computeroutput"><span class="comment">//]</span></code>
+ will not be visible in quickbook. The entire code-snippet in between <tt class="computeroutput"><span class="comment">//[id</span></tt> and <tt class="computeroutput"><span class="comment">//]</span></tt>
           will be inserted as a template in quickbook with name <span class="emphasis"><em><span class="emphasis"><em>id</em></span></em></span>.
- The comment <code class="computeroutput"><span class="comment">//]</span></code> ends a code-snippet
+ The comment <tt class="computeroutput"><span class="comment">//]</span></tt> ends a code-snippet
           This too will not be visible in quickbook.
         </p>
-<a name="quickbook.syntax.block.import.special_comments"></a><h6>
-<a name="id2641120"></a>
- <a class="link" href="block.html#quickbook.syntax.block.import.special_comments">Special
+<a name="quickbook.syntax.block.import.special_comments"></a><h5>
+<a name="id462565"></a>
+ <a href="block.html#quickbook.syntax.block.import.special_comments">Special
           Comments</a>
- </h6>
+ </h5>
 <p>
           Special comments of the form:
         </p>
@@ -1758,10 +1735,10 @@
           can be used to inhibit code from passing through to quickbook. All text
           between the delimeters will simply be ignored.
         </p>
-<a name="quickbook.syntax.block.import.callouts"></a><h6>
-<a name="id2641268"></a>
- <a class="link" href="block.html#quickbook.syntax.block.import.callouts">Callouts</a>
- </h6>
+<a name="quickbook.syntax.block.import.callouts"></a><h5>
+<a name="id462744"></a>
+ Callouts
+ </h5>
 <p>
           Special comments of the form:
         </p>
@@ -1780,9 +1757,9 @@
             
 </p>
 <pre class="programlisting">
-<span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">foo_bar</span><span class="special">()</span> <span class="callout_bug"><a class="co" name="quickbook0co" href="block.html#quickbook0"><img src="../../images/callouts/1.png" alt="1" border="0"></a></span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">foo_bar</span><span class="special">()</span> <span class="callout_bug"><a name="quickbook0co" href="block.html#quickbook0"><img src="../../images/callouts/1.png" alt="1" border="0"></a></span>
 <span class="special">{</span>
- <span class="keyword">return</span> <span class="string">"foo-bar"</span><span class="special">;</span> <span class="callout_bug"><a class="co" name="quickbook1co" href="block.html#quickbook1"><img src="../../images/callouts/2.png" alt="2" border="0"></a></span>
+ <span class="keyword">return</span> <span class="string">"foo-bar"</span><span class="special">;</span> <span class="callout_bug"><a name="quickbook1co" href="block.html#quickbook1"><img src="../../images/callouts/2.png" alt="2" border="0"></a></span>
 <span class="special">}</span>
 </pre>
 <p>
@@ -1793,12 +1770,14 @@
             </p>
 <div class="calloutlist"><table border="0" summary="Callout list">
 <tr>
-<td width="5%" valign="top" align="left"><p><a name="quickbook0"></a>1 </p></td>
+<td width="5%" valign="top" align="left">
+<a name="quickbook0"></a>1 </td>
 <td valign="top" align="left"><p> The <span class="emphasis"><em>Mythical</em></span> FooBar. See <a href="http://en.wikipedia.org/wiki/Foobar" target="_top">Foobar
             for details</a> </p></td>
 </tr>
 <tr>
-<td width="5%" valign="top" align="left"><p><a name="quickbook1"></a>2 </p></td>
+<td width="5%" valign="top" align="left">
+<a name="quickbook1"></a>2 </td>
 <td valign="top" align="left"><p> return 'em, foo-bar man! </p></td>
 </tr>
 </table></div>
@@ -1842,20 +1821,20 @@
 <span class="special">{</span>
 <span class="keyword">public</span><span class="special">:</span>
 
- <span class="line_callout_bug"><a class="co" name="quickbook2co" href="block.html#quickbook2"><img src="../../images/callouts/1.png" alt="1" border="0"></a></span><span class="identifier">x</span><span class="special">()</span> <span class="special">:</span> <span class="identifier">n</span><span class="special">(</span><span class="number">0</span><span class="special">)</span>
+ <span class="line_callout_bug"><a name="quickbook2co" href="block.html#quickbook2"><img src="../../images/callouts/1.png" alt="1" border="0"></a></span><span class="identifier">x</span><span class="special">()</span> <span class="special">:</span> <span class="identifier">n</span><span class="special">(</span><span class="number">0</span><span class="special">)</span>
     <span class="special">{</span>
     <span class="special">}</span>
 
- <span class="line_callout_bug"><a class="co" name="quickbook3co" href="block.html#quickbook3"><img src="../../images/callouts/2.png" alt="2" border="0"></a></span><span class="special">~</span><span class="identifier">x</span><span class="special">()</span>
+ <span class="line_callout_bug"><a name="quickbook3co" href="block.html#quickbook3"><img src="../../images/callouts/2.png" alt="2" border="0"></a></span><span class="special">~</span><span class="identifier">x</span><span class="special">()</span>
     <span class="special">{</span>
     <span class="special">}</span>
 
- <span class="line_callout_bug"><a class="co" name="quickbook4co" href="block.html#quickbook4"><img src="../../images/callouts/3.png" alt="3" border="0"></a></span><span class="keyword">int</span> <span class="identifier">get</span><span class="special">()</span> <span class="keyword">const</span>
+ <span class="line_callout_bug"><a name="quickbook4co" href="block.html#quickbook4"><img src="../../images/callouts/3.png" alt="3" border="0"></a></span><span class="keyword">int</span> <span class="identifier">get</span><span class="special">()</span> <span class="keyword">const</span>
     <span class="special">{</span>
         <span class="keyword">return</span> <span class="identifier">n</span><span class="special">;</span>
     <span class="special">}</span>
 
- <span class="line_callout_bug"><a class="co" name="quickbook5co" href="block.html#quickbook5"><img src="../../images/callouts/4.png" alt="4" border="0"></a></span><span class="keyword">void</span> <span class="identifier">set</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">n_</span><span class="special">)</span>
+ <span class="line_callout_bug"><a name="quickbook5co" href="block.html#quickbook5"><img src="../../images/callouts/4.png" alt="4" border="0"></a></span><span class="keyword">void</span> <span class="identifier">set</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">n_</span><span class="special">)</span>
     <span class="special">{</span>
         <span class="identifier">n</span> <span class="special">=</span> <span class="identifier">n_</span><span class="special">;</span>
     <span class="special">}</span>
@@ -1869,21 +1848,25 @@
             </p>
 <div class="calloutlist"><table border="0" summary="Callout list">
 <tr>
-<td width="5%" valign="top" align="left"><p><a name="quickbook2"></a>1 </p></td>
+<td width="5%" valign="top" align="left">
+<a name="quickbook2"></a>1 </td>
 <td valign="top" align="left"><p> Constructor </p></td>
 </tr>
 <tr>
-<td width="5%" valign="top" align="left"><p><a name="quickbook3"></a>2 </p></td>
+<td width="5%" valign="top" align="left">
+<a name="quickbook3"></a>2 </td>
 <td valign="top" align="left"><p> Destructor </p></td>
 </tr>
 <tr>
-<td width="5%" valign="top" align="left"><p><a name="quickbook4"></a>3 </p></td>
-<td valign="top" align="left"><p> Get the <code class="computeroutput"><span class="identifier">n</span></code>
+<td width="5%" valign="top" align="left">
+<a name="quickbook4"></a>3 </td>
+<td valign="top" align="left"><p> Get the <tt class="computeroutput"><span class="identifier">n</span></tt>
             member variable </p></td>
 </tr>
 <tr>
-<td width="5%" valign="top" align="left"><p><a name="quickbook5"></a>4 </p></td>
-<td valign="top" align="left"><p> Set the <code class="computeroutput"><span class="identifier">n</span></code>
+<td width="5%" valign="top" align="left">
+<a name="quickbook5"></a>4 </td>
+<td valign="top" align="left"><p> Set the <tt class="computeroutput"><span class="identifier">n</span></tt>
             member variable </p></td>
 </tr>
 </table></div>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/comments.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/comments.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/comments.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -3,11 +3,11 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Comments</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../../index.html" title="Quickbook 1.4">
-<link rel="up" href="../syntax.html" title="Syntax Summary">
-<link rel="prev" href="../syntax.html" title="Syntax Summary">
-<link rel="next" href="phrase.html" title="Phrase Level Elements">
+<link rel="up" href="../syntax.html" title=" Syntax Summary">
+<link rel="prev" href="../syntax.html" title=" Syntax Summary">
+<link rel="next" href="phrase.html" title=" Phrase Level Elements">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,8 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="quickbook.syntax.comments"></a><a class="link" href="comments.html" title="Comments">Comments</a>
-</h3></div></div></div>
+<a name="quickbook.syntax.comments"></a>Comments</h3></div></div></div>
 <p>
         Can be placed anywhere.
       </p>

Modified: branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/phrase.html
==============================================================================
--- branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/phrase.html (original)
+++ branches/CMake/release/tools/quickbook/doc/html/quickbook/syntax/phrase.html 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -1,13 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Phrase Level Elements</title>
+<title> Phrase Level Elements</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
 <link rel="start" href="../../index.html" title="Quickbook 1.4">
-<link rel="up" href="../syntax.html" title="Syntax Summary">
+<link rel="up" href="../syntax.html" title=" Syntax Summary">
 <link rel="prev" href="comments.html" title="Comments">
-<link rel="next" href="block.html" title="Block Level Elements">
+<link rel="next" href="block.html" title=" Block Level Elements">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table cellpadding="2" width="100%"><tr>
@@ -24,8 +24,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="quickbook.syntax.phrase"></a><a class="link" href="phrase.html" title="Phrase Level Elements"> Phrase Level Elements</a>
-</h3></div></div></div>
+<a name="quickbook.syntax.phrase"></a> Phrase Level Elements</h3></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section">Font Styles</span></dt>
 <dt><span class="section">Replaceable</span></dt>
@@ -49,15 +48,14 @@
 </dl></div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.font_styles"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.font_styles" title="Font Styles">Font Styles</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.font_styles"></a>Font Styles</h4></div></div></div>
 <pre class="programlisting">['italic], [*bold], [_underline], [^teletype], [-strikethrough]
 </pre>
 <p>
           will generate:
         </p>
 <p>
- <span class="emphasis"><em>italic</em></span>, <span class="bold"><strong>bold</strong></span>, <span class="underline">underline</span>, <code class="literal">teletype</code>, <span class="strikethrough">strikethrough</span>
+ <span class="emphasis"><em>italic</em></span>, <span class="bold"><b>bold</b></span>, <span class="underline">underline</span>, <tt class="literal">teletype</tt>, <span class="strikethrough">strikethrough</span>
         </p>
 <p>
           Like all non-terminal phrase level elements, this can of course be nested:
@@ -68,13 +66,12 @@
           will generate:
         </p>
 <p>
- <span class="bold"><strong><span class="emphasis"><em>bold-italic</em></span></strong></span>
+ <span class="bold"><b><span class="emphasis"><em>bold-italic</em></span></b></span>
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.replaceable"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.replaceable" title="Replaceable">Replaceable</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.replaceable"></a>Replaceable</h4></div></div></div>
 <p>
           When you want content that may or must be replaced by the user, use the
           syntax:
@@ -85,15 +82,14 @@
           This will generate:
         </p>
 <p>
- <em class="replaceable"><code>
+ <i class="replaceable"><tt>
             replacement
- </code></em>
+ </tt></i>
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.quotations"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.quotations" title="Quotations">Quotations</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.quotations"></a>Quotations</h4></div></div></div>
 <pre class="programlisting">["A question that sometimes drives me hazy: am I or are the others crazy?]--Einstein
 </pre>
 <p>
@@ -124,8 +120,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.simple_formatting"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.simple_formatting" title="Simple formatting">Simple formatting</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.simple_formatting"></a>Simple formatting</h4></div></div></div>
 <p>
           Simple markup for formatting text, common in many applications, is now
           supported:
@@ -136,12 +131,12 @@
           will generate:
         </p>
 <p>
- <span class="emphasis"><em>italic</em></span>, <span class="bold"><strong>bold</strong></span>, <span class="underline">underline</span>, <code class="literal">teletype</code>
+ <span class="emphasis"><em>italic</em></span>, <span class="bold"><b>bold</b></span>, <span class="underline">underline</span>, <tt class="literal">teletype</tt>
         </p>
 <p>
           Unlike QuickBook's standard formatting scheme, the rules for simpler alternatives
           are much stricter
- <sup>[<a name="id2635685" href="#ftn.id2635685" class="footnote">1</a>]</sup>
+ <sup>[<a name="id456069" href="#ftn.id456069">1</a>]</sup>
           .
         </p>
 <div class="itemizedlist"><ul type="disc">
@@ -171,13 +166,14 @@
           </li>
 <li>
             A line starting with the star will be interpreted as an unordered list.
- See <a class="link" href="block.html#quickbook.syntax.block.lists.unordered_lists" title="Unordered lists">Unordered
+ See <a href="block.html#quickbook.syntax.block.lists.unordered_lists" title="Unordered
+ lists">Unordered
             lists</a>.
           </li>
 </ul></div>
 <div class="table">
-<a name="id2635762"></a><p class="title"><b>Table 1. More Formatting Samples</b></p>
-<div class="table-contents"><table class="table" summary="More Formatting Samples">
+<a name="id456153"></a><p class="title"><b>Table 1. More Formatting Samples</b></p>
+<table class="table" summary="More Formatting Samples">
 <colgroup>
 <col>
 <col>
@@ -198,31 +194,31 @@
 <tr>
 <td>
               <p>
- <code class="literal">*Bold*</code>
+ <tt class="literal">*Bold*</tt>
               </p>
               </td>
 <td>
               <p>
- <span class="bold"><strong>Bold</strong></span>
+ <span class="bold"><b>Bold</b></span>
               </p>
               </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="literal">*Is bold*</code>
+ <tt class="literal">*Is bold*</tt>
               </p>
               </td>
 <td>
               <p>
- <span class="bold"><strong>Is bold</strong></span>
+ <span class="bold"><b>Is bold</b></span>
               </p>
               </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="literal">* Not bold* *Not bold * * Not bold *</code>
+ <tt class="literal">* Not bold* *Not bold * * Not bold *</tt>
               </p>
               </td>
 <td>
@@ -234,7 +230,7 @@
 <tr>
 <td>
               <p>
- <code class="literal">This*Isn't*Bold (no bold)</code>
+ <tt class="literal">This*Isn't*Bold (no bold)</tt>
               </p>
               </td>
 <td>
@@ -246,31 +242,31 @@
 <tr>
 <td>
               <p>
- <code class="literal">(*Bold Inside*) (parenthesis not bold)</code>
+ <tt class="literal">(*Bold Inside*) (parenthesis not bold)</tt>
               </p>
               </td>
 <td>
               <p>
- (<span class="bold"><strong>Bold Inside</strong></span>) (parenthesis not bold)
+ (<span class="bold"><b>Bold Inside</b></span>) (parenthesis not bold)
               </p>
               </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="literal">*(Bold Outside)* (parenthesis bold)</code>
+ <tt class="literal">*(Bold Outside)* (parenthesis bold)</tt>
               </p>
               </td>
 <td>
               <p>
- <span class="bold"><strong>(Bold Outside)</strong></span> (parenthesis bold)
+ <span class="bold"><b>(Bold Outside)</b></span> (parenthesis bold)
               </p>
               </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="literal">3*4*5 = 60 (no bold)</code>
+ <tt class="literal">3*4*5 = 60 (no bold)</tt>
               </p>
               </td>
 <td>
@@ -282,7 +278,7 @@
 <tr>
 <td>
               <p>
- <code class="literal">3 * 4 * 5 = 60 (no bold)</code>
+ <tt class="literal">3 * 4 * 5 = 60 (no bold)</tt>
               </p>
               </td>
 <td>
@@ -294,79 +290,79 @@
 <tr>
 <td>
               <p>
- <code class="literal">3 *4* 5 = 60 (4 is bold)</code>
+ <tt class="literal">3 *4* 5 = 60 (4 is bold)</tt>
               </p>
               </td>
 <td>
               <p>
- 3 <span class="bold"><strong>4</strong></span> 5 = 60 (4 is bold)
+ 3 <span class="bold"><b>4</b></span> 5 = 60 (4 is bold)
               </p>
               </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="literal">*This is bold* this is not *but this is*</code>
+ <tt class="literal">*This is bold* this is not *but this is*</tt>
               </p>
               </td>
 <td>
               <p>
- <span class="bold"><strong>This is bold</strong></span> this is not <span class="bold"><strong>but this is</strong></span>
+ <span class="bold"><b>This is bold</b></span> this is not <span class="bold"><b>but this is</b></span>
               </p>
               </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="literal">*This is bold*.</code>
+ <tt class="literal">*This is bold*.</tt>
               </p>
               </td>
 <td>
               <p>
- <span class="bold"><strong>This is bold</strong></span>.
+ <span class="bold"><b>This is bold</b></span>.
               </p>
               </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="literal">*B*. (bold B)</code>
+ <tt class="literal">*B*. (bold B)</tt>
               </p>
               </td>
 <td>
               <p>
- <span class="bold"><strong>B</strong></span>. (bold B)
+ <span class="bold"><b>B</b></span>. (bold B)
               </p>
               </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="literal">['*Bold-Italic*]</code>
+ <tt class="literal">['*Bold-Italic*]</tt>
               </p>
               </td>
 <td>
               <p>
- <span class="emphasis"><em><span class="bold"><strong>Bold-Italic</strong></span></em></span>
+ <span class="emphasis"><em><span class="bold"><b>Bold-Italic</b></span></em></span>
               </p>
               </td>
 </tr>
 <tr>
 <td>
               <p>
- <code class="literal">*side-by*/-side/</code>
+ <tt class="literal">*side-by*/-side/</tt>
               </p>
               </td>
 <td>
               <p>
- <span class="bold"><strong>side-by</strong></span><span class="emphasis"><em>-side</em></span>
+ <span class="bold"><b>side-by</b></span><span class="emphasis"><em>-side</em></span>
               </p>
               </td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><p>
+<p>
           As mentioned, simple markups cannot go past a single block. The text from
           "have" to "full" in the following paragraph will be
           rendered as bold:
@@ -377,8 +373,8 @@
 And one for the little boy who lives down the lane.
 </pre>
 <p>
- Baa baa black sheep, <span class="bold"><strong>have you any wool? Yes sir,
- yes sir, three bags full!</strong></span> One for the master, one for the dame,
+ Baa baa black sheep, <span class="bold"><b>have you any wool? Yes sir,
+ yes sir, three bags full!</b></span> One for the master, one for the dame,
           And one for the little boy who lives down the lane.
         </p>
 <p>
@@ -397,8 +393,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.inline_code"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.inline_code" title="Inline code">Inline code</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.inline_code"></a>Inline code</h4></div></div></div>
 <p>
           Inlining code in paragraphs is quite common when writing C++ documentation.
           We provide a very simple markup for this. For example, this:
@@ -409,7 +404,7 @@
           will generate:
         </p>
 <p>
- This text has inlined code <code class="computeroutput"><span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span> <span class="special">{</span> <span class="keyword">return</span> <span class="number">0</span><span class="special">;</span> <span class="special">}</span></code>
+ This text has inlined code <tt class="computeroutput"><span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span> <span class="special">{</span> <span class="keyword">return</span> <span class="number">0</span><span class="special">;</span> <span class="special">}</span></tt>
           in it. The code will be syntax highlighted.
         </p>
 <div class="note"><table border="0" summary="Note">
@@ -417,23 +412,24 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../doc/html/images/note.png"></td>
 <th align="left">Note</th>
 </tr>
-<tr><td align="left" valign="top"><p>
- We simply enclose the code with the tick: <code class="literal">"`"</code>, not the
- single quote: <code class="computeroutput"><span class="string">"'"</span></code>.
- Note too that <code class="literal">`some code`</code> is preferred over <code class="literal">[^some code]</code>.
+<tr><td colspan="2" align="left" valign="top"><p>
+ We simply enclose the code with the tick: <tt class="literal">"`"</tt>, not the
+ single quote: <tt class="computeroutput"><span class="string">"'"</span></tt>.
+ Note too that <tt class="literal">`some code`</tt> is preferred over <tt class="literal">[^some code]</tt>.
           </p></td></tr>
 </table></div>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.code_blocks"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.code_blocks" title="Code blocks">Code blocks</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.code_blocks"></a>Code blocks</h4></div></div></div>
 <p>
- Preformatted code simply starts with a space or a tab (See <a class="link" href="block.html#quickbook.syntax.block.code" title="Code">Code</a>).
+ Preformatted code simply starts with a space or a tab (See Code).
           However, such a simple syntax cannot be used as phrase elements in lists
- (See <a class="link" href="block.html#quickbook.syntax.block.lists.ordered_lists" title="Ordered lists">Ordered
- lists</a> and <a class="link" href="block.html#quickbook.syntax.block.lists.unordered_lists" title="Unordered lists">Unordered
- lists</a>), tables (See <a class="link" href="block.html#quickbook.syntax.block.tables" title="Tables">Tables</a>),
+ (See <a href="block.html#quickbook.syntax.block.lists.ordered_lists" title="Ordered
+ lists">Ordered
+ lists</a> and <a href="block.html#quickbook.syntax.block.lists.unordered_lists" title="Unordered
+ lists">Unordered
+ lists</a>), tables (See Tables),
           etc. Inline code (see above) can. The problem is, inline code does not
           allow formatting with newlines, spaces, and tabs. These are lost.
         </p>
@@ -472,18 +468,17 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.source_mode"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.source_mode" title="Source Mode">Source Mode</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.source_mode"></a>Source Mode</h4></div></div></div>
 <p>
           If a document contains more than one type of source code then the source
           mode may be changed dynamically as the document is processed. All QuickBook
           documents are initially in C++ mode by default, though an alternative initial
- value may be set in the <a class="link" href="block.html#quickbook.syntax.block.document" title="Document">Document</a>
+ value may be set in the Document
           section.
         </p>
 <p>
- To change the source mode, use the <code class="literal">[source-mode]</code> markup,
- where <code class="literal">source-mode</code> is one of the supported modes. For
+ To change the source mode, use the <tt class="literal">[source-mode]</tt> markup,
+ where <tt class="literal">source-mode</tt> is one of the supported modes. For
           example, this:
         </p>
 <pre class="programlisting">Python's [python] `import` is rather like C++'s [c++] `#include`. A
@@ -494,14 +489,14 @@
           will generate:
         </p>
 <p>
- Python's <code class="computeroutput"><span class="keyword">import</span></code> is rather
- like C++'s <code class="computeroutput"><span class="preprocessor">#include</span></code>.
- A C++ comment <code class="computeroutput"><span class="comment">// looks like this</span></code>
- whereas a Python comment <code class="computeroutput"><span class="comment">#looks like this</span></code>.
+ Python's <tt class="computeroutput"><span class="keyword">import</span></tt> is rather
+ like C++'s <tt class="computeroutput"><span class="preprocessor">#include</span></tt>.
+ A C++ comment <tt class="computeroutput"><span class="comment">// looks like this</span></tt>
+ whereas a Python comment <tt class="computeroutput"><span class="comment">#looks like this</span></tt>.
         </p>
 <div class="table">
-<a name="id2636594"></a><p class="title"><b>Table 2. Supported Source Modes</b></p>
-<div class="table-contents"><table class="table" summary="Supported Source Modes">
+<a name="id457134"></a><p class="title"><b>Table 2. Supported Source Modes</b></p>
+<table class="table" summary="Supported Source Modes">
 <colgroup>
 <col>
 <col>
@@ -527,7 +522,7 @@
               </td>
 <td>
               <p>
- <code class="literal">[c++]</code>
+ <tt class="literal">[c++]</tt>
               </p>
               </td>
 </tr>
@@ -539,27 +534,26 @@
               </td>
 <td>
               <p>
- <code class="literal">[python]</code>
+ <tt class="literal">[python]</tt>
               </p>
               </td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="note"><table border="0" summary="Note">
+<div class="note"><table border="0" summary="Note">
 <tr>
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../doc/html/images/note.png"></td>
 <th align="left">Note</th>
 </tr>
-<tr><td align="left" valign="top"><p>
+<tr><td colspan="2" align="left" valign="top"><p>
             The source mode strings are lowercase.
           </p></td></tr>
 </table></div>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.line_break"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.line_break" title="line-break">line-break</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.line_break"></a>line-break</h4></div></div></div>
 <pre class="programlisting">[br]
 </pre>
 <div class="warning"><table border="0" summary="Warning">
@@ -567,39 +561,37 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="../../../../../../doc/html/images/warning.png"></td>
 <th align="left">Warning</th>
 </tr>
-<tr><td align="left" valign="top"><p>
- <code class="computeroutput"><span class="special">[</span><span class="identifier">br</span><span class="special">]</span></code> is now deprecated. <a class="link" href="block.html#quickbook.syntax.block.blurbs" title="Blurbs">Blurbs</a>,
- <a class="link" href="block.html#quickbook.syntax.block.admonitions" title="Admonitions">Admonitions</a>
- and table cells (see <a class="link" href="block.html#quickbook.syntax.block.tables" title="Tables">Tables</a>)
+<tr><td colspan="2" align="left" valign="top"><p>
+ <tt class="computeroutput"><span class="special">[</span><span class="identifier">br</span><span class="special">]</span></tt> is now deprecated. Blurbs,
+ Admonitions
+ and table cells (see Tables)
             may now contain paragraphs.
           </p></td></tr>
 </table></div>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.anchors"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.anchors" title="Anchors">Anchors</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.anchors"></a>Anchors</h4></div></div></div>
 <pre class="programlisting">[#named_anchor]
 </pre>
 <p>
           A named anchor is a hook that can be referenced by a link elsewhere in
- the document. You can then reference an anchor with <code class="literal">[link named_anchor
-Some link text]</code>.
- See <a class="link" href="phrase.html#quickbook.syntax.phrase.anchor_links" title="Anchor links">Anchor links</a>,
- <a class="link" href="block.html#quickbook.syntax.block.section" title="Section">Section</a> and <a class="link" href="block.html#quickbook.syntax.block.headings" title="Headings">Heading</a>.
+ the document. You can then reference an anchor with <tt class="literal">[link named_anchor
+Some link text]</tt>.
+ See Anchor links,
+ Section and Heading.
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.links"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.links" title="Links">Links</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.links"></a>Links</h4></div></div></div>
 <pre class="programlisting">[@http://www.boost.org this is [*boost's] website....]
 </pre>
 <p>
           will generate:
         </p>
 <p>
- <a href="http://www.boost.org" target="_top">this is <span class="bold"><strong>boost's</strong></span>
+ <a href="http://www.boost.org" target="_top">this is <span class="bold"><b>boost's</b></span>
           website....</a>
         </p>
 <p>
@@ -621,31 +613,29 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.anchor_links"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.anchor_links" title="Anchor links">Anchor links</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.anchor_links"></a>Anchor links</h4></div></div></div>
 <p>
           You can link within a document using:
         </p>
 <pre class="programlisting">[link section_id.normalized_header_text The link text]
 </pre>
 <p>
- See sections <a class="link" href="block.html#quickbook.syntax.block.section" title="Section">Section</a>
- and <a class="link" href="block.html#quickbook.syntax.block.headings" title="Headings">Heading</a> for
+ See sections Section
+ and Heading for
           more info.
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.refentry_links"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.refentry_links" title="refentry links">refentry links</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.refentry_links"></a>refentry links</h4></div></div></div>
 <p>
           In addition, you can link internally to an XML refentry like:
         </p>
 <pre class="programlisting">[link xml.refentry The link text]
 </pre>
 <p>
- This gets converted into <code class="literal">&lt;link linkend="xml.refentry"&gt;The
- link text&lt;/link&gt;</code>.
+ This gets converted into <tt class="literal">&lt;link linkend="xml.refentry"&gt;The
+ link text&lt;/link&gt;</tt>.
         </p>
 <p>
           Like URLs, the link text is optional. If this is not present, the link
@@ -654,13 +644,12 @@
 <pre class="programlisting">[link xml.refentry]
 </pre>
 <p>
- This gets converted into <code class="literal">&lt;link linkend="xml.refentry"&gt;xml.refentry&lt;/link&gt;</code>.
+ This gets converted into <tt class="literal">&lt;link linkend="xml.refentry"&gt;xml.refentry&lt;/link&gt;</tt>.
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.code_links"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.code_links" title="Code Links"> Code Links</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.code_links"></a> Code Links</h4></div></div></div>
 <p>
           If you want to link to a function, class, member, enum, concept or header
           in the reference section, you can use:
@@ -686,8 +675,7 @@
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.escape"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.escape" title="Escape">Escape</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.escape"></a>Escape</h4></div></div></div>
 <p>
           The escape mark-up is used when we don't want to do any processing.
         </p>
@@ -704,31 +692,31 @@
 '''
 </pre>
 <p>
- <span class="bold"><strong>This is direct XML markup</strong></span>
+ <span class="bold"><b>This is direct XML markup</b></span>
         </p>
 <div class="important"><table border="0" summary="Important">
 <tr>
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../../../doc/html/images/important.png"></td>
 <th align="left">Important</th>
 </tr>
-<tr><td align="left" valign="top"><p>
+<tr><td colspan="2" align="left" valign="top"><p>
             Be careful when using the escape. The text must conform to BoostBook/DocBook syntax.
           </p></td></tr>
 </table></div>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.single_char_escape"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.single_char_escape" title="Single char escape">Single
- char escape</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.single_char_escape"></a><a href="phrase.html#quickbook.syntax.phrase.single_char_escape" title="Single
+ char escape">Single
+ char escape</a></h4></div></div></div>
 <p>
           The backslash may be used to escape a single punctuation character. The
           punctuation immediately after the backslash is passed without any processing.
- This is useful when we need to escape QuickBook punctuations such as <code class="computeroutput"><span class="special">[</span></code> and <code class="computeroutput"><span class="special">]</span></code>.
- For example, how do you escape the triple quote? Simple: <code class="literal">\'\'\'</code>
+ This is useful when we need to escape QuickBook punctuations such as <tt class="computeroutput"><span class="special">[</span></tt> and <tt class="computeroutput"><span class="special">]</span></tt>.
+ For example, how do you escape the triple quote? Simple: <tt class="literal">\'\'\'</tt>
         </p>
 <p>
- <code class="computeroutput"><span class="special">\</span><span class="identifier">n</span></code>
+ <tt class="computeroutput"><span class="special">\</span><span class="identifier">n</span></tt>
           has a special meaning. It is used to generate line breaks.
         </p>
 <div class="warning"><table border="0" summary="Warning">
@@ -736,30 +724,28 @@
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="../../../../../../doc/html/images/warning.png"></td>
 <th align="left">Warning</th>
 </tr>
-<tr><td align="left" valign="top"><p>
- <code class="computeroutput"><span class="special">\</span><span class="identifier">n</span></code>
- and <code class="computeroutput"><span class="special">[</span><span class="identifier">br</span><span class="special">]</span></code> are now deprecated. <a class="link" href="block.html#quickbook.syntax.block.blurbs" title="Blurbs">Blurbs</a>,
- <a class="link" href="block.html#quickbook.syntax.block.admonitions" title="Admonitions">Admonitions</a>
- and table cells (see <a class="link" href="block.html#quickbook.syntax.block.tables" title="Tables">Tables</a>)
+<tr><td colspan="2" align="left" valign="top"><p>
+ <tt class="computeroutput"><span class="special">\</span><span class="identifier">n</span></tt>
+ and <tt class="computeroutput"><span class="special">[</span><span class="identifier">br</span><span class="special">]</span></tt> are now deprecated. Blurbs,
+ Admonitions
+ and table cells (see Tables)
             may now contain paragraphs.
           </p></td></tr>
 </table></div>
 <p>
- The escaped space: <code class="computeroutput"><span class="special">\</span> </code> also
+ The escaped space: <tt class="computeroutput"><span class="special">\</span> </tt> also
           has a special meaning. The escaped space is removed from the output.
         </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.images"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.images" title="Images">Images</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.images"></a>Images</h4></div></div></div>
 <pre class="programlisting">[$image.jpg]
 </pre>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.footnotes"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.footnotes" title="Footnotes">Footnotes</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.footnotes"></a>Footnotes</h4></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"><a href="phrase.html#quickbook.syntax.phrase.footnotes.macro_expansion">Macro
           Expansion</a></span></dt>
@@ -768,46 +754,45 @@
 </dl></div>
 <p>
           As of version 1.3, QuickBook supports footnotes. Just put the text of the
- footnote in a <code class="computeroutput"><span class="special">[</span><span class="identifier">footnote</span><span class="special">]</span></code> block, and the text will be put at the
+ footnote in a <tt class="computeroutput"><span class="special">[</span><span class="identifier">footnote</span><span class="special">]</span></tt> block, and the text will be put at the
           bottom of the current page. For example, this:
         </p>
 <pre class="programlisting">[footnote A sample footnote]
 </pre>
 <p>
           will generate this
- <sup>[<a name="id2637304" href="#ftn.id2637304" class="footnote">2</a>]</sup>
+ <sup>[<a name="id457975" href="#ftn.id457975">2</a>]</sup>
           .
         </p>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="quickbook.syntax.phrase.footnotes.macro_expansion"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.footnotes.macro_expansion" title="Macro Expansion">Macro
- Expansion</a>
-</h5></div></div></div>
+<a name="quickbook.syntax.phrase.footnotes.macro_expansion"></a><a href="phrase.html#quickbook.syntax.phrase.footnotes.macro_expansion" title="Macro
+ Expansion">Macro
+ Expansion</a></h5></div></div></div>
 <pre class="programlisting">__a_macro_identifier__
 </pre>
 <p>
- See <a class="link" href="block.html#quickbook.syntax.block.macros" title="Macros">Macros</a> for details.
+ See Macros for details.
           </p>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="quickbook.syntax.phrase.footnotes.template_expansion"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.footnotes.template_expansion" title="Template Expansion">Template
- Expansion</a>
-</h5></div></div></div>
+<a name="quickbook.syntax.phrase.footnotes.template_expansion"></a><a href="phrase.html#quickbook.syntax.phrase.footnotes.template_expansion" title="Template
+ Expansion">Template
+ Expansion</a></h5></div></div></div>
 <pre class="programlisting">[a_template_identifier]
 </pre>
 <p>
- See <a class="link" href="block.html#quickbook.syntax.block.templates" title="Templates">Templates</a>
+ See Templates
             for details.
           </p>
 </div>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="quickbook.syntax.phrase.cond"></a><a class="link" href="phrase.html#quickbook.syntax.phrase.cond" title="Conditional Generation"> Conditional Generation</a>
-</h4></div></div></div>
+<a name="quickbook.syntax.phrase.cond"></a> Conditional Generation</h4></div></div></div>
 <p>
- Like C++ <code class="computeroutput"><span class="comment">#ifdef</span></code>, you can generate
+ Like C++ <tt class="computeroutput"><span class="comment">#ifdef</span></tt>, you can generate
           phrases depending on the presence of a macro. Example:
         </p>
 <pre class="programlisting">[? __to_be__ To be or not to be]
@@ -829,22 +814,22 @@
         </p>
 <p>
           Yes!
- <sup>[<a name="id2637437" href="#ftn.id2637437" class="footnote">3</a>]</sup>
+ <sup>[<a name="id458150" href="#ftn.id458150">3</a>]</sup>
         </p>
 </div>
 <div class="footnotes">
 <br><hr width="100" align="left">
-<div class="footnote"><p><sup>[<a name="ftn.id2635685" href="#id2635685" class="para">1</a>] </sup>
+<div class="footnote"><p><sup>[<a name="ftn.id456069" href="#id456069">1</a>] </sup>
               Thanks to David Barrett, author of Qwiki,
               for sharing these samples and teaching me these obscure formatting
               rules. I wasn't sure at all if Spirit,
               being more or less a formal EBNF parser, can handle the context sensitivity
               and ambiguity.
             </p></div>
-<div class="footnote"><p><sup>[<a name="ftn.id2637304" href="#id2637304" class="para">2</a>] </sup>
+<div class="footnote"><p><sup>[<a name="ftn.id457975" href="#id457975">2</a>] </sup>
               A sample footnote
             </p></div>
-<div class="footnote"><p><sup>[<a name="ftn.id2637437" href="#id2637437" class="para">3</a>] </sup>
+<div class="footnote"><p><sup>[<a name="ftn.id458150" href="#id458150">3</a>] </sup>
               Conditional Generation makes quickbook turing complete.
             </p></div>
 </div>

Modified: branches/CMake/release/tools/quickbook/test/code-block-1.gold
==============================================================================
--- branches/CMake/release/tools/quickbook/test/code-block-1.gold (original)
+++ branches/CMake/release/tools/quickbook/test/code-block-1.gold 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -11,8 +11,7 @@
       A code block with proper indentation ;-)
     </para>
     
-<programlisting>
-<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">iostream</phrase><phrase role="special">&gt;</phrase>
+<programlisting><phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">iostream</phrase><phrase role="special">&gt;</phrase>
 
 <phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>

Modified: branches/CMake/release/tools/quickbook/test/code-block-2.gold
==============================================================================
--- branches/CMake/release/tools/quickbook/test/code-block-2.gold (original)
+++ branches/CMake/release/tools/quickbook/test/code-block-2.gold 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -12,8 +12,7 @@
     </para>
     <para>
       
-<programlisting>
-<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">iostream</phrase><phrase role="special">&gt;</phrase>
+<programlisting><phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">iostream</phrase><phrase role="special">&gt;</phrase>
 
 <phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>

Modified: branches/CMake/release/tools/quickbook/test/import.gold
==============================================================================
--- branches/CMake/release/tools/quickbook/test/import.gold (original)
+++ branches/CMake/release/tools/quickbook/test/import.gold 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -25,16 +25,12 @@
     </para>
     <para>
       
-<programlisting>
-<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">foo</phrase><phrase role="special">()</phrase>
+<programlisting><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">foo</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
     <phrase role="comment">// return 'em, foo man!
 </phrase> <phrase role="keyword">return</phrase> <phrase role="string">&quot;foo&quot;</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 </programlisting>
     </para>
- <para>
- <calloutlist></calloutlist>
- </para>
   </para>
 </article>

Modified: branches/CMake/release/tools/quickbook/test/quickbook-manual.gold
==============================================================================
--- branches/CMake/release/tools/quickbook/test/quickbook-manual.gold (original)
+++ branches/CMake/release/tools/quickbook/test/quickbook-manual.gold 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -129,8 +129,7 @@
       <listitem>
         Better (intuitive) paragraph termination. Some markups may terminate a paragraph.
         Example:
-<programlisting>
-<phrase role="special">[</phrase><phrase role="identifier">section</phrase> <phrase role="identifier">x</phrase><phrase role="special">]</phrase>
+<programlisting><phrase role="special">[</phrase><phrase role="identifier">section</phrase> <phrase role="identifier">x</phrase><phrase role="special">]</phrase>
 <phrase role="identifier">blah</phrase><phrase role="special">...</phrase>
 <phrase role="special">[</phrase><phrase role="identifier">endsect</phrase><phrase role="special">]</phrase></programlisting>
       </listitem>
@@ -647,8 +646,7 @@
         </para>
         <para>
           
-<programlisting>
-<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">iostream</phrase><phrase role="special">&gt;</phrase>
+<programlisting><phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">iostream</phrase><phrase role="special">&gt;</phrase>
 
 <phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
@@ -740,105 +738,103 @@
 <!--quickbook-escape-postfix--></programlisting>
         <warning>
           <para>
- <para>
- <code><phrase role="special">[</phrase><phrase role="identifier">br</phrase><phrase
- role="special">]</phrase></code> is now deprecated. <link linkend="quickbook.syntax.block.blurbs">Blurbs</link>,
- <link linkend="quickbook.syntax.block.admonitions">Admonitions</link>
- and table cells (see <link linkend="quickbook.syntax.block.tables">Tables</link>)
- may now contain paragraphs.
- </para>
- </warning>
- </section>
- <section id="quickbook.syntax.phrase.anchors">
- <title><link linkend="quickbook.syntax.phrase.anchors">Anchors</link></title>
-
+ <code><phrase role="special">[</phrase><phrase role="identifier">br</phrase><phrase
+ role="special">]</phrase></code> is now deprecated. <link linkend="quickbook.syntax.block.blurbs">Blurbs</link>,
+ <link linkend="quickbook.syntax.block.admonitions">Admonitions</link>
+ and table cells (see <link linkend="quickbook.syntax.block.tables">Tables</link>)
+ may now contain paragraphs.
+ </para>
+ </warning>
+ </section>
+ <section id="quickbook.syntax.phrase.anchors">
+ <title><link linkend="quickbook.syntax.phrase.anchors">Anchors</link></title>
+
 <programlisting><!--quickbook-escape-prefix-->[#named_anchor]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- A named anchor is a hook that can be referenced by a link elsewhere in
- the document. You can then reference an anchor with <literal>[link named_anchor
+ <para>
+ A named anchor is a hook that can be referenced by a link elsewhere in
+ the document. You can then reference an anchor with <literal>[link named_anchor
 Some link text]</literal>.
- See <link linkend="quickbook.syntax.phrase.anchor_links">Anchor links</link>,
- <link linkend="quickbook.syntax.block.section">Section</link> and <link
- linkend="quickbook.syntax.block.headings">Heading</link>.
- </para>
- </section>
- <section id="quickbook.syntax.phrase.links">
- <title><link linkend="quickbook.syntax.phrase.links">Links</link></title>
-
+ See <link linkend="quickbook.syntax.phrase.anchor_links">Anchor links</link>,
+ <link linkend="quickbook.syntax.block.section">Section</link> and <link
+ linkend="quickbook.syntax.block.headings">Heading</link>.
+ </para>
+ </section>
+ <section id="quickbook.syntax.phrase.links">
+ <title><link linkend="quickbook.syntax.phrase.links">Links</link></title>
+
 <programlisting><!--quickbook-escape-prefix-->[@http://www.boost.org this is [*boost's] website....]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- will generate:
- </para>
- <para>
- <ulink url="http://www.boost.org">this is <emphasis role="bold">boost's</emphasis>
- website....</ulink>
- </para>
- <para>
- URL links where the link text is the link itself is common. Example:
- </para>
-
+ <para>
+ will generate:
+ </para>
+ <para>
+ <ulink url="http://www.boost.org">this is <emphasis role="bold">boost's</emphasis>
+ website....</ulink>
+ </para>
+ <para>
+ URL links where the link text is the link itself is common. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->see http://spirit.sourceforge.net/
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- so, when the text is absent in a link markup, the URL is assumed. Example:
- </para>
-
+ <para>
+ so, when the text is absent in a link markup, the URL is assumed. Example:
+ </para>
+
 <programlisting>see <!--quickbook-escape-prefix-->[@http://spirit.sourceforge.net/]<!--quickbook-escape-postfix-->
 </programlisting>
- <para>
- will generate:
- </para>
- <para>
- see <ulink url="http://spirit.sourceforge.net/">http://spirit.sourceforge.net/>
- </para>
- </section>
- <section id="quickbook.syntax.phrase.anchor_links">
- <title><link linkend="quickbook.syntax.phrase.anchor_links">Anchor links</link></title>
- <para>
- You can link within a document using:
- </para>
-
+ <para>
+ will generate:
+ </para>
+ <para>
+ see <ulink url="
http://spirit.sourceforge.net/">http://spirit.sourceforge.net/>
+ </para>
+ </section>
+ <section id="quickbook.syntax.phrase.anchor_links">
+ <title><link linkend="quickbook.syntax.phrase.anchor_links">Anchor links</link></title>
+ <para>
+ You can link within a document using:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[link section_id.normalized_header_text The link text]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- See sections <link linkend="quickbook.syntax.block.section">Section</link>
- and <link linkend="quickbook.syntax.block.headings">Heading</link> for
- more info.
- </para>
- </section>
- <section id="quickbook.syntax.phrase.refentry_links">
- <title><link linkend="quickbook.syntax.phrase.refentry_links">refentry
- links</link></title>
- <para>
- In addition, you can link internally to an XML refentry like:
- </para>
-
+ <para>
+ See sections <link linkend="quickbook.syntax.block.section">Section</link>
+ and <link linkend="quickbook.syntax.block.headings">Heading</link> for
+ more info.
+ </para>
+ </section>
+ <section id="quickbook.syntax.phrase.refentry_links">
+ <title><link linkend="quickbook.syntax.phrase.refentry_links">refentry links</link></title>
+ <para>
+ In addition, you can link internally to an XML refentry like:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[link xml.refentry The link text]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- This gets converted into <literal>&lt;link linkend=&quot;xml.refentry&quot;&gt;The
- link text&lt;/link&gt;</literal>.
- </para>
- <para>
- Like URLs, the link text is optional. If this is not present, the link
- text will automatically be the refentry. Example:
- </para>
-
+ <para>
+ This gets converted into <literal>&lt;link linkend=&quot;xml.refentry&quot;&gt;The
+ link text&lt;/link&gt;</literal>.
+ </para>
+ <para>
+ Like URLs, the link text is optional. If this is not present, the link
+ text will automatically be the refentry. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[link xml.refentry]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- This gets converted into <literal>&lt;link linkend=&quot;xml.refentry&quot;&gt;xml.refentry&lt;/link&gt;</literal>.
- </para>
- </section>
- <section id="quickbook.syntax.phrase.code_links">
- <title><link linkend="quickbook.syntax.phrase.code_links"> Code Links</link></title>
- <para>
- If you want to link to a function, class, member, enum, concept or header
- in the reference section, you can use:
- </para>
-
+ <para>
+ This gets converted into <literal>&lt;link linkend=&quot;xml.refentry&quot;&gt;xml.refentry&lt;/link&gt;</literal>.
+ </para>
+ </section>
+ <section id="quickbook.syntax.phrase.code_links">
+ <title><link linkend="quickbook.syntax.phrase.code_links"> Code Links</link></title>
+ <para>
+ If you want to link to a function, class, member, enum, concept or header
+ in the reference section, you can use:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[funcref fully::qualified::function_name The link text]
 [classref fully::qualified::class_name The link text]
 [memberref fully::qualified::member_name The link text]
@@ -847,135 +843,132 @@
 [conceptref ConceptName The link text]
 [headerref path/to/header.hpp The link text]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Again, the link text is optional. If this is not present, the link text
- will automatically be the function, class, member, enum, macro, concept
- or header. Example:
- </para>
-
+ <para>
+ Again, the link text is optional. If this is not present, the link text
+ will automatically be the function, class, member, enum, macro, concept
+ or header. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[classref boost::bar::baz]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- would have &quot;boost::bar::baz&quot; as the link text.
- </para>
- </section>
- <section id="quickbook.syntax.phrase.escape">
- <title><link linkend="quickbook.syntax.phrase.escape">Escape</link></title>
- <para>
- The escape mark-up is used when we don't want to do any processing.
- </para>
-
+ <para>
+ would have &quot;boost::bar::baz&quot; as the link text.
+ </para>
+ </section>
+ <section id="quickbook.syntax.phrase.escape">
+ <title><link linkend="quickbook.syntax.phrase.escape">Escape</link></title>
+ <para>
+ The escape mark-up is used when we don't want to do any processing.
+ </para>
+
 <programlisting>'''
 escape (no processing/formatting)
 '''
 </programlisting>
- <para>
- Escaping allows us to pass XML markup to <ulink url="
http://www.boost.org/doc/html/boostbook.html">BoostBook</ulink>
- or <ulink url="http://www.docbook.org/">DocBook</ulink>. For example:
- </para>
-
+ <para>
+ Escaping allows us to pass XML markup to <ulink url="http://www.boost.org/doc/html/boostbook.html">BoostBook</ulink>
+ or <ulink url="http://www.docbook.org/">DocBook</ulink>. For example:
+ </para>
+
 <programlisting>'''
 &lt;emphasis role=&quot;bold&quot;&gt;This is direct XML markup&lt;/emphasis&gt;
 '''
 </programlisting>
+ <para>
+ <emphasis role="bold">This is direct XML markup</emphasis>
+ </para>
+ <important>
           <para>
- <emphasis role="bold">This is direct XML markup</emphasis>
- </para>
- <important>
- <para>
- Be careful when using the escape. The text must conform to <ulink url="http://www.boost.org/doc/html/boostbook.html">BoostBook</ulink>/<ulink
- url="http://www.docbook.org/">DocBook</ulink> syntax.
- </para>
- </important>
- </section>
- <section id="quickbook.syntax.phrase.single_char_escape">
- <title><link linkend="quickbook.syntax.phrase.single_char_escape">Single
- char escape</link></title>
- <para>
- The backslash may be used to escape a single punctuation character. The
- punctuation immediately after the backslash is passed without any processing.
- This is useful when we need to escape QuickBook punctuations such as
- <code><phrase role="special">[</phrase></code> and <code><phrase role="special">]</phrase></code>.
- For example, how do you escape the triple quote? Simple: <literal>\'\'\'</literal>
+ Be careful when using the escape. The text must conform to <ulink url="http://www.boost.org/doc/html/boostbook.html">BoostBook</ulink>/<ulink
+ url="http://www.docbook.org/">DocBook</ulink> syntax.
           </para>
+ </important>
+ </section>
+ <section id="quickbook.syntax.phrase.single_char_escape">
+ <title><link linkend="quickbook.syntax.phrase.single_char_escape">Single
+ char escape</link></title>
+ <para>
+ The backslash may be used to escape a single punctuation character. The
+ punctuation immediately after the backslash is passed without any processing.
+ This is useful when we need to escape QuickBook punctuations such as <code><phrase
+ role="special">[</phrase></code> and <code><phrase role="special">]</phrase></code>.
+ For example, how do you escape the triple quote? Simple: <literal>\'\'\'</literal>
+ </para>
+ <para>
+ <code><phrase role="special">\</phrase><phrase role="identifier">n</phrase></code>
+ has a special meaning. It is used to generate line breaks.
+ </para>
+ <warning>
           <para>
             <code><phrase role="special">\</phrase><phrase role="identifier">n</phrase></code>
- has a special meaning. It is used to generate line breaks.
+ and <code><phrase role="special">[</phrase><phrase role="identifier">br</phrase><phrase
+ role="special">]</phrase></code> are now deprecated. <link linkend="quickbook.syntax.block.blurbs">Blurbs</link>,
+ <link linkend="quickbook.syntax.block.admonitions">Admonitions</link>
+ and table cells (see <link linkend="quickbook.syntax.block.tables">Tables</link>)
+ may now contain paragraphs.
           </para>
- <warning>
- <para>
- <para>
- <code><phrase role="special">\</phrase><phrase role="identifier">n</phrase></code>
- and <code><phrase role="special">[</phrase><phrase role="identifier">br</phrase><phrase
- role="special">]</phrase></code> are now deprecated. <link linkend="quickbook.syntax.block.blurbs">Blurbs</link>,
- <link linkend="quickbook.syntax.block.admonitions">Admonitions</link>
- and table cells (see <link linkend="quickbook.syntax.block.tables">Tables</link>)
- may now contain paragraphs.
- </para>
- </warning>
- <para>
- The escaped space: <code><phrase role="special">\</phrase> </code>
- also has a special meaning. The escaped space is removed from the output.
- </para>
- </section>
- <section id="quickbook.syntax.phrase.images">
- <title><link linkend="quickbook.syntax.phrase.images">Images</link></title>
-
+ </warning>
+ <para>
+ The escaped space: <code><phrase role="special">\</phrase> </code> also
+ has a special meaning. The escaped space is removed from the output.
+ </para>
+ </section>
+ <section id="quickbook.syntax.phrase.images">
+ <title><link linkend="quickbook.syntax.phrase.images">Images</link></title>
+
 <programlisting><!--quickbook-escape-prefix-->[$image.jpg]
 <!--quickbook-escape-postfix--></programlisting>
- </section>
- <section id="quickbook.syntax.phrase.footnotes">
- <title><link linkend="quickbook.syntax.phrase.footnotes">Footnotes</link></title>
- <para>
- As of version 1.3, QuickBook supports footnotes. Just put the text
- of the footnote in a <code><phrase role="special">[</phrase><phrase
- role="identifier">footnote</phrase><phrase role="special">]</phrase></code>
- block, and the text will be put at the bottom of the current page.
- For example, this:
- </para>
-
+ </section>
+ <section id="quickbook.syntax.phrase.footnotes">
+ <title><link linkend="quickbook.syntax.phrase.footnotes">Footnotes</link></title>
+ <para>
+ As of version 1.3, QuickBook supports footnotes. Just put the text of the
+ footnote in a <code><phrase role="special">[</phrase><phrase role="identifier">footnote</phrase><phrase
+ role="special">]</phrase></code> block, and the text will be put at the
+ bottom of the current page. For example, this:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[footnote A sample footnote]
 <!--quickbook-escape-postfix--></programlisting>
+ <para>
+ will generate this
+ <footnote>
             <para>
- will generate this
- <footnote>
- <para>
- A sample footnote
- </para>
- </footnote>
- .
+ A sample footnote
             </para>
- <section id="quickbook.syntax.phrase.footnotes.macro_expansion">
- <title><link linkend="quickbook.syntax.phrase.footnotes.macro_expansion">Macro
- Expansion</link></title>
+ </footnote>
+ .
+ </para>
+ <section id="quickbook.syntax.phrase.footnotes.macro_expansion">
+ <title><link linkend="quickbook.syntax.phrase.footnotes.macro_expansion">Macro
+ Expansion</link></title>
 <programlisting><!--quickbook-escape-prefix-->__a_macro_identifier__
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- See <link linkend="quickbook.syntax.block.macros">Macros</link> for
- details.
- </para>
- </section>
- <section id="quickbook.syntax.phrase.footnotes.template_expansion">
- <title><link linkend="quickbook.syntax.phrase.footnotes.template_expansion">Template
- Expansion</link></title>
+ <para>
+ See <link linkend="quickbook.syntax.block.macros">Macros</link> for details.
+ </para>
+ </section>
+ <section id="quickbook.syntax.phrase.footnotes.template_expansion">
+ <title><link linkend="quickbook.syntax.phrase.footnotes.template_expansion">Template
+ Expansion</link></title>
 <programlisting><!--quickbook-escape-prefix-->[a_template_identifier]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- See <link linkend="quickbook.syntax.block.templates">Templates</link>
- for details.
- </para>
- </section>
- </section>
+ <para>
+ See <link linkend="quickbook.syntax.block.templates">Templates</link>
+ for details.
+ </para>
         </section>
- <section id="quickbook.syntax.block">
- <title><link linkend="quickbook.syntax.block"> Block Level Elements</link></title>
- <section id="quickbook.syntax.block.document">
- <title><link linkend="quickbook.syntax.block.document">Document</link></title>
- <para>
- Every document must begin with a Document Info section, which should
- look like this:
- </para>
-
+ </section>
+ </section>
+ <section id="quickbook.syntax.block">
+ <title><link linkend="quickbook.syntax.block"> Block Level Elements</link></title>
+ <section id="quickbook.syntax.block.document">
+ <title><link linkend="quickbook.syntax.block.document">Document</link></title>
+ <para>
+ Every document must begin with a Document Info section, which should look
+ like this:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[document-type The Document Title
     [quickbook 1.3]
     [version 1.0]
@@ -989,146 +982,145 @@
     [source-mode source-type]
 ]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Where document-type is one of:
- </para>
- <itemizedlist>
- <listitem>
- book
- </listitem>
- <listitem>
- article
- </listitem>
- <listitem>
- library
- </listitem>
- <listitem>
- chapter
- </listitem>
- <listitem>
- part
- </listitem>
- <listitem>
- appendix
- </listitem>
- <listitem>
- preface
- </listitem>
- <listitem>
- qandadiv
- </listitem>
- <listitem>
- qandaset
- </listitem>
- <listitem>
- reference
- </listitem>
- <listitem>
- set
- </listitem>
- </itemizedlist>
- <para>
- quickbook 1.3 declares the version of quickbook the document is written
- for. In its absence, version 1.1 is assumed.
- </para>
- <para>
- <literal>version</literal>, <literal>id</literal>, <literal>dirname</literal>,
- <literal>copyright</literal>, <literal>purpose</literal>, <literal>category</literal>,
- <literal>authors</literal>, <literal>license</literal>, <literal>last-revision</literal>
- and <literal>source-mode</literal> are optional information.
- </para>
- <para>
- <literal>source-type</literal> is a lowercase string setting the initial
- <link linkend="quickbook.syntax.phrase.source_mode">Source Mode</link>.
- If the <literal>source-mode</literal> field is omitted, a default value
- of <literal>c++</literal> will be used.
- </para>
- </section>
- <section id="quickbook.syntax.block.section">
- <title><link linkend="quickbook.syntax.block.section">Section</link></title>
- <para>
- Starting a new section is accomplished with:
- </para>
-
+ <para>
+ Where document-type is one of:
+ </para>
+ <itemizedlist>
+ <listitem>
+ book
+ </listitem>
+ <listitem>
+ article
+ </listitem>
+ <listitem>
+ library
+ </listitem>
+ <listitem>
+ chapter
+ </listitem>
+ <listitem>
+ part
+ </listitem>
+ <listitem>
+ appendix
+ </listitem>
+ <listitem>
+ preface
+ </listitem>
+ <listitem>
+ qandadiv
+ </listitem>
+ <listitem>
+ qandaset
+ </listitem>
+ <listitem>
+ reference
+ </listitem>
+ <listitem>
+ set
+ </listitem>
+ </itemizedlist>
+ <para>
+ quickbook 1.3 declares the version of quickbook the document is written
+ for. In its absence, version 1.1 is assumed.
+ </para>
+ <para>
+ <literal>version</literal>, <literal>id</literal>, <literal>dirname</literal>,
+ <literal>copyright</literal>, <literal>purpose</literal>, <literal>category</literal>,
+ <literal>authors</literal>, <literal>license</literal>, <literal>last-revision</literal>
+ and <literal>source-mode</literal> are optional information.
+ </para>
+ <para>
+ <literal>source-type</literal> is a lowercase string setting the initial
+ <link linkend="quickbook.syntax.phrase.source_mode">Source Mode</link>.
+ If the <literal>source-mode</literal> field is omitted, a default value
+ of <literal>c++</literal> will be used.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.section">
+ <title><link linkend="quickbook.syntax.block.section">Section</link></title>
+ <para>
+ Starting a new section is accomplished with:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[section:id The Section Title]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- where <emphasis>id</emphasis> is optional. id will be the filename
- of the generated section. If it is not present, &quot;The Section Title&quot;
- will be normalized and become the id. Valid characters are <literal>a-Z</literal>,
- <literal>A-Z</literal>, <literal>0-9</literal> and <literal>_</literal>.
- All non-valid characters are converted to underscore and all upper-case
- are converted to lower case. Thus: &quot;The Section Title&quot; will
- be normalized to &quot;the_section_title&quot;.
- </para>
- <para>
- End a section with:
- </para>
-
+ <para>
+ where <emphasis>id</emphasis> is optional. id will be the filename of the
+ generated section. If it is not present, &quot;The Section Title&quot;
+ will be normalized and become the id. Valid characters are <literal>a-Z</literal>,
+ <literal>A-Z</literal>, <literal>0-9</literal> and <literal>_</literal>.
+ All non-valid characters are converted to underscore and all upper-case
+ are converted to lower case. Thus: &quot;The Section Title&quot; will be
+ normalized to &quot;the_section_title&quot;.
+ </para>
+ <para>
+ End a section with:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[endsect]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Sections can nest, and that results in a hierarchy in the table of
- contents.
- </para>
- </section>
- <section id="quickbook.syntax.block.xinclude">
- <title><link linkend="quickbook.syntax.block.xinclude">xinclude</link></title>
- <para>
- You can include another XML file with:
- </para>
-
+ <para>
+ Sections can nest, and that results in a hierarchy in the table of contents.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.xinclude">
+ <title><link linkend="quickbook.syntax.block.xinclude">xinclude</link></title>
+ <para>
+ You can include another XML file with:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[xinclude file.xml]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- This is useful when file.xml has been generated by Doxygen and contains
- your reference section.
- </para>
- </section>
- <section id="quickbook.syntax.block.paragraphs">
- <title><link linkend="quickbook.syntax.block.paragraphs">Paragraphs</link></title>
- <para>
- Paragraphs start left-flushed and are terminated by two or more newlines.
- No markup is needed for paragraphs. QuickBook automatically detects
- paragraphs from the context. Block markups [section, endsect, h1, h2,
- h3, h4, h5, h6, blurb, (block-quote) ':', pre, def, table and include
- ] may also terminate a paragraph.
- </para>
- </section>
- <section id="quickbook.syntax.block.lists">
- <title><link linkend="quickbook.syntax.block.lists">Lists</link></title>
- <section id="quickbook.syntax.block.lists.ordered_lists">
- <title><link linkend="quickbook.syntax.block.lists.ordered_lists">Ordered
- lists</link></title>
+ <para>
+ This is useful when file.xml has been generated by Doxygen and contains
+ your reference section.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.paragraphs">
+ <title><link linkend="quickbook.syntax.block.paragraphs">Paragraphs</link></title>
+ <para>
+ Paragraphs start left-flushed and are terminated by two or more newlines.
+ No markup is needed for paragraphs. QuickBook automatically detects paragraphs
+ from the context. Block markups [section, endsect, h1, h2, h3, h4, h5,
+ h6, blurb, (block-quote) ':', pre, def, table and include ] may also terminate
+ a paragraph.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.lists">
+ <title><link linkend="quickbook.syntax.block.lists">Lists</link></title>
+ <section id="quickbook.syntax.block.lists.ordered_lists">
+ <title><link linkend="quickbook.syntax.block.lists.ordered_lists">Ordered
+ lists</link></title>
 <programlisting># One
 # Two
 # Three
 </programlisting>
- <para>
- will generate:
- </para>
- <orderedlist>
- <listitem>
- One
- </listitem>
- <listitem>
- Two
- </listitem>
- <listitem>
- Three
- </listitem>
- </orderedlist>
- </section>
- <section id="quickbook.syntax.block.lists.list_hierarchies">
- <title><link linkend="quickbook.syntax.block.lists.list_hierarchies">List
- Hierarchies</link></title>
- <para>
- List hierarchies are supported. Example:
- </para>
-
-<programlisting># One
-# Two
-# Three
+ <para>
+ will generate:
+ </para>
+ <orderedlist>
+ <listitem>
+ One
+ </listitem>
+ <listitem>
+ Two
+ </listitem>
+ <listitem>
+ Three
+ </listitem>
+ </orderedlist>
+ </section>
+ <section id="quickbook.syntax.block.lists.list_hierarchies">
+ <title><link linkend="quickbook.syntax.block.lists.list_hierarchies">List
+ Hierarchies</link></title>
+ <para>
+ List hierarchies are supported. Example:
+ </para>
+
+<programlisting># One
+# Two
+# Three
     # Three.a
     # Three.b
     # Three.c
@@ -1138,58 +1130,58 @@
         # Four.a.ii
 # Five
 </programlisting>
- <para>
- will generate:
- </para>
+ <para>
+ will generate:
+ </para>
+ <orderedlist>
+ <listitem>
+ One
+ </listitem>
+ <listitem>
+ Two
+ </listitem>
+ <listitem>
+ Three
               <orderedlist>
                 <listitem>
- One
+ Three.a
                 </listitem>
                 <listitem>
- Two
+ Three.b
                 </listitem>
                 <listitem>
- Three
- <orderedlist>
- <listitem>
- Three.a
- </listitem>
- <listitem>
- Three.b
- </listitem>
- <listitem>
- Three.c
- </listitem>
- </orderedlist>
+ Three.c
                 </listitem>
+ </orderedlist>
+ </listitem>
+ <listitem>
+ Fourth
+ <orderedlist>
                 <listitem>
- Fourth
+ Four.a
                   <orderedlist>
                     <listitem>
- Four.a
- <orderedlist>
- <listitem>
- Four.a.i
- </listitem>
- <listitem>
- Four.a.ii
- </listitem>
- </orderedlist>
+ Four.a.i
+ </listitem>
+ <listitem>
+ Four.a.ii
                     </listitem>
                   </orderedlist>
                 </listitem>
- <listitem>
- Five
- </listitem>
               </orderedlist>
- </section>
- <section id="quickbook.syntax.block.lists.long_list_lines">
- <title><link linkend="quickbook.syntax.block.lists.long_list_lines">Long
- List Lines</link></title>
- <para>
- Long lines will be wrapped appropriately. Example:
- </para>
-
+ </listitem>
+ <listitem>
+ Five
+ </listitem>
+ </orderedlist>
+ </section>
+ <section id="quickbook.syntax.block.lists.long_list_lines">
+ <title><link linkend="quickbook.syntax.block.lists.long_list_lines">Long
+ List Lines</link></title>
+ <para>
+ Long lines will be wrapped appropriately. Example:
+ </para>
+
 <programlisting># A short item.
 # A very long item. A very long item. A very long item.
   A very long item. A very long item. A very long item.
@@ -1198,51 +1190,49 @@
   A very long item. A very long item. A very long item.
 # A short item.
 </programlisting>
- <orderedlist>
- <listitem>
- A short item.
- </listitem>
- <listitem>
- A very long item. A very long item. A very long item. A very long
- item. A very long item. A very long item. A very long item. A very
- long item. A very long item. A very long item. A very long item.
- A very long item. A very long item. A very long item. A very long
- item.
- </listitem>
- <listitem>
- A short item.
- </listitem>
- </orderedlist>
- </section>
- <section id="quickbook.syntax.block.lists.unordered_lists">
- <title><link linkend="quickbook.syntax.block.lists.unordered_lists">Unordered
- lists</link></title>
+ <orderedlist>
+ <listitem>
+ A short item.
+ </listitem>
+ <listitem>
+ A very long item. A very long item. A very long item. A very long item.
+ A very long item. A very long item. A very long item. A very long item.
+ A very long item. A very long item. A very long item. A very long item.
+ A very long item. A very long item. A very long item.
+ </listitem>
+ <listitem>
+ A short item.
+ </listitem>
+ </orderedlist>
+ </section>
+ <section id="quickbook.syntax.block.lists.unordered_lists">
+ <title><link linkend="quickbook.syntax.block.lists.unordered_lists">Unordered
+ lists</link></title>
 <programlisting><!--quickbook-escape-prefix-->* First
 * Second
 * Third
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- will generate:
- </para>
- <itemizedlist>
- <listitem>
- First
- </listitem>
- <listitem>
- Second
- </listitem>
- <listitem>
- Third
- </listitem>
- </itemizedlist>
- </section>
- <section id="quickbook.syntax.block.lists.mixed_lists">
- <title><link linkend="quickbook.syntax.block.lists.mixed_lists">Mixed
- lists</link></title>
- <para>
- Mixed lists (ordered and unordered) are supported. Example:
- </para>
-
+ <para>
+ will generate:
+ </para>
+ <itemizedlist>
+ <listitem>
+ First
+ </listitem>
+ <listitem>
+ Second
+ </listitem>
+ <listitem>
+ Third
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section id="quickbook.syntax.block.lists.mixed_lists">
+ <title><link linkend="quickbook.syntax.block.lists.mixed_lists">Mixed lists</link></title>
+ <para>
+ Mixed lists (ordered and unordered) are supported. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix--># One
 # Two
 # Three
@@ -1251,38 +1241,38 @@
     * Three.c
 # Four
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- will generate:
- </para>
- <orderedlist>
- <listitem>
- One
- </listitem>
+ <para>
+ will generate:
+ </para>
+ <orderedlist>
+ <listitem>
+ One
+ </listitem>
+ <listitem>
+ Two
+ </listitem>
+ <listitem>
+ Three
+ <itemizedlist>
                 <listitem>
- Two
+ Three.a
                 </listitem>
                 <listitem>
- Three
- <itemizedlist>
- <listitem>
- Three.a
- </listitem>
- <listitem>
- Three.b
- </listitem>
- <listitem>
- Three.c
- </listitem>
- </itemizedlist>
+ Three.b
                 </listitem>
                 <listitem>
- Four
+ Three.c
                 </listitem>
- </orderedlist>
- <para>
- And...
- </para>
-
+ </itemizedlist>
+ </listitem>
+ <listitem>
+ Four
+ </listitem>
+ </orderedlist>
+ <para>
+ And...
+ </para>
+
 <programlisting><!--quickbook-escape-prefix--># 1
     * 1.a
         # 1.a.1
@@ -1296,71 +1286,70 @@
             * 2.b.2.a
             * 2.b.2.b
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- will generate:
- </para>
- <orderedlist>
+ <para>
+ will generate:
+ </para>
+ <orderedlist>
+ <listitem>
+ 1
+ <itemizedlist>
                 <listitem>
- 1
- <itemizedlist>
+ 1.a
+ <orderedlist>
                     <listitem>
- 1.a
- <orderedlist>
- <listitem>
- 1.a.1
- </listitem>
- <listitem>
- 1.a.2
- </listitem>
- </orderedlist>
+ 1.a.1
                     </listitem>
                     <listitem>
- 1.b
+ 1.a.2
                     </listitem>
- </itemizedlist>
+ </orderedlist>
+ </listitem>
+ <listitem>
+ 1.b
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem>
+ 2
+ <itemizedlist>
+ <listitem>
+ 2.a
                 </listitem>
                 <listitem>
- 2
- <itemizedlist>
+ 2.b
+ <orderedlist>
                     <listitem>
- 2.a
+ 2.b.1
                     </listitem>
                     <listitem>
- 2.b
- <orderedlist>
+ 2.b.2
+ <itemizedlist>
                         <listitem>
- 2.b.1
+ 2.b.2.a
                         </listitem>
                         <listitem>
- 2.b.2
- <itemizedlist>
- <listitem>
- 2.b.2.a
- </listitem>
- <listitem>
- 2.b.2.b
- </listitem>
- </itemizedlist>
+ 2.b.2.b
                         </listitem>
- </orderedlist>
+ </itemizedlist>
                     </listitem>
- </itemizedlist>
+ </orderedlist>
                 </listitem>
- </orderedlist>
- </section>
- </section>
- <section id="quickbook.syntax.block.code">
- <title><link linkend="quickbook.syntax.block.code">Code</link></title>
- <para>
- Preformatted code starts with a space or a tab. The code will be syntax
- highlighted according to the current <link linkend="quickbook.syntax.phrase.source_mode">Source
- Mode</link>:
- </para>
- <para>
- </para>
-
-<programlisting>
-<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">iostream</phrase><phrase role="special">&gt;</phrase>
+ </itemizedlist>
+ </listitem>
+ </orderedlist>
+ </section>
+ </section>
+ <section id="quickbook.syntax.block.code">
+ <title><link linkend="quickbook.syntax.block.code">Code</link></title>
+ <para>
+ Preformatted code starts with a space or a tab. The code will be syntax
+ highlighted according to the current <link linkend="quickbook.syntax.phrase.source_mode">Source
+ Mode</link>:
+ </para>
+ <para>
+ </para>
+
+<programlisting><phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">iostream</phrase><phrase role="special">&gt;</phrase>
 
 <phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
@@ -1369,73 +1358,70 @@
     <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 </programlisting>
- <para>
- </para>
-
-<programlisting>
-<phrase role="keyword">import</phrase> <phrase role="identifier">cgi</phrase>
+ <para>
+ </para>
+
+<programlisting><phrase role="keyword">import</phrase> <phrase role="identifier">cgi</phrase>
 
 <phrase role="keyword">def</phrase> <phrase role="identifier">cookForHtml</phrase><phrase role="special">(</phrase><phrase role="identifier">text</phrase><phrase role="special">):</phrase>
     <phrase role="string">'''&quot;Cooks&quot; the input text for HTML.'''</phrase>
 
     <phrase role="keyword">return</phrase> <phrase role="identifier">cgi</phrase><phrase role="special">.</phrase><phrase role="identifier">escape</phrase><phrase role="special">(</phrase><phrase role="identifier">text</phrase><phrase role="special">)</phrase>
 </programlisting>
- <para>
- </para>
- <para>
- Macros that are already defined are expanded in source code. Example:
- </para>
-
+ <para>
+ </para>
+ <para>
+ Macros that are already defined are expanded in source code. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[def __array__ [@http://www.boost.org/doc/html/array/reference.html array]]
 [def __boost__ [@http://www.boost.org/libs/libraries.htm boost]]
 
     using __boost__::__array__;
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Generates:
- </para>
-
-<programlisting>
-<phrase role="keyword">using</phrase> <ulink url="http://www.boost.org/libs/libraries.htm">boost</ulink><phrase role="special">::</phrase><ulink url="http://www.boost.org/doc/html/array/reference.html">array</ulink><phrase role="special">;</phrase>
+ <para>
+ Generates:
+ </para>
+
+<programlisting><phrase role="keyword">using</phrase> <ulink url="http://www.boost.org/libs/libraries.htm">boost</ulink><phrase role="special">::</phrase><ulink url="http://www.boost.org/doc/html/array/reference.html">array</ulink><phrase role="special">;</phrase>
 </programlisting>
- </section>
- <section id="quickbook.syntax.block.escape_back">
- <title><link linkend="quickbook.syntax.block.escape_back"> Escaping Back
- To QuickBook</link></title>
- <para>
- Inside code, code blocks and inline code, QuickBook does not allow
- any markup to avoid conflicts with the target syntax (e.g. c++). In
- case you need to switch back to QuickBook markup inside code, you can
- do so using a language specific <emphasis>escape-back</emphasis> delimiter.
- In C++ and Python, the delimiter is the double tick (back-quote): &quot;``&quot;
- and &quot;``&quot;. Example:
- </para>
-
+ </section>
+ <section id="quickbook.syntax.block.escape_back">
+ <title><link linkend="quickbook.syntax.block.escape_back"> Escaping Back
+ To QuickBook</link></title>
+ <para>
+ Inside code, code blocks and inline code, QuickBook does not allow any
+ markup to avoid conflicts with the target syntax (e.g. c++). In case you
+ need to switch back to QuickBook markup inside code, you can do so using
+ a language specific <emphasis>escape-back</emphasis> delimiter. In C++
+ and Python, the delimiter is the double tick (back-quote): &quot;``&quot;
+ and &quot;``&quot;. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->void ``[@http://en.wikipedia.org/wiki/Foo#Foo.2C_Bar_and_Baz foo]``()
 {
 }
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Will generate:
- </para>
-
-<programlisting>
-<phrase role="keyword">void</phrase> <ulink url="http://en.wikipedia.org/wiki/Foo#Foo.2C_Bar_and_Baz">foo</ulink><phrase role="special">()</phrase>
+ <para>
+ Will generate:
+ </para>
+
+<programlisting><phrase role="keyword">void</phrase> <ulink url="http://en.wikipedia.org/wiki/Foo#Foo.2C_Bar_and_Baz">foo</ulink><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
 <phrase role="special">}</phrase>
 </programlisting>
- <para>
- When escaping from code to QuickBook, only phrase level markups are
- allowed. Block level markups like lists, tables etc. are not allowed.
- </para>
- </section>
- <section id="quickbook.syntax.block.preformatted">
- <title><link linkend="quickbook.syntax.block.preformatted">Preformatted</link></title>
- <para>
- Sometimes, you don't want some preformatted text to be parsed as C++.
- In such cases, use the <literal>[pre ... ]</literal> markup block.
- </para>
-
+ <para>
+ When escaping from code to QuickBook, only phrase level markups are allowed.
+ Block level markups like lists, tables etc. are not allowed.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.preformatted">
+ <title><link linkend="quickbook.syntax.block.preformatted">Preformatted</link></title>
+ <para>
+ Sometimes, you don't want some preformatted text to be parsed as C++. In
+ such cases, use the <literal>[pre ... ]</literal> markup block.
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[pre
 
     Some *preformatted* text Some *preformatted* text
@@ -1446,12 +1432,12 @@
 
 ]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Spaces, tabs and newlines are rendered as-is. Unlike all quickbook
- block level markup, pre (and Code) are the only ones that allow multiple
- newlines. The markup above will generate:
- </para>
-
+ <para>
+ Spaces, tabs and newlines are rendered as-is. Unlike all quickbook block
+ level markup, pre (and Code) are the only ones that allow multiple newlines.
+ The markup above will generate:
+ </para>
+
 <programlisting>Some <emphasis role="bold">preformatted</emphasis> text Some <emphasis role="bold">preformatted</emphasis> text
 
     Some <emphasis role="bold">preformatted</emphasis> text Some <emphasis role="bold">preformatted</emphasis> text
@@ -1459,71 +1445,70 @@
         Some <emphasis role="bold">preformatted</emphasis> text Some <emphasis role="bold">preformatted</emphasis> text
 
 </programlisting>
- <para>
- Notice that unlike Code, phrase markup such as font style is still
- permitted inside <literal>pre</literal> blocks.
- </para>
- </section>
- <section id="quickbook.syntax.block.blockquote">
- <title><link linkend="quickbook.syntax.block.blockquote">Blockquote</link></title>
-
+ <para>
+ Notice that unlike Code, phrase markup such as font style is still permitted
+ inside <literal>pre</literal> blocks.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.blockquote">
+ <title><link linkend="quickbook.syntax.block.blockquote">Blockquote</link></title>
+
 <programlisting><!--quickbook-escape-prefix-->[:sometext...]<!--quickbook-escape-postfix-->
 </programlisting>
- <blockquote>
- <para>
- <para>
- Indents the paragraph. This applies to one paragraph only.
- </para>
- </para>
- </blockquote>
- </section>
- <section id="quickbook.syntax.block.admonitions">
- <title><link linkend="quickbook.syntax.block.admonitions">Admonitions</link></title>
-
+ <blockquote>
+ <para>
+ <para>
+ Indents the paragraph. This applies to one paragraph only.
+ </para>
+ </para>
+ </blockquote>
+ </section>
+ <section id="quickbook.syntax.block.admonitions">
+ <title><link linkend="quickbook.syntax.block.admonitions">Admonitions</link></title>
+
 <programlisting><!--quickbook-escape-prefix-->[note This is a note]
 [tip This is a tip]
 [important This is important]
 [caution This is a caution]
 [warning This is a warning]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- generates <ulink url="http://www.docbook.org/">DocBook</ulink> admonitions:
- </para>
- <note>
- <para>
- This is a note
- </para>
- </note>
- <tip>
- <para>
- This is a tip
- </para>
- </tip>
- <important>
- <para>
- This is important
- </para>
- </important>
- <caution>
- <para>
- This is a caution
- </para>
- </caution>
- <warning>
- <para>
- <para>
- This is a warning
- </para>
- </warning>
- <para>
- These are the only admonitions supported by <ulink url="http://www.docbook.org/">DocBook</ulink>.
- So, for example <literal>[information This is some information]</literal>
- is unlikely to produce the desired effect.
- </para>
- </section>
- <section id="quickbook.syntax.block.headings">
- <title><link linkend="quickbook.syntax.block.headings">Headings</link></title>
-
+ <para>
+ generates <ulink url="http://www.docbook.org/">DocBook</ulink> admonitions:
+ </para>
+ <note>
+ <para>
+ This is a note
+ </para>
+ </note>
+ <tip>
+ <para>
+ This is a tip
+ </para>
+ </tip>
+ <important>
+ <para>
+ This is important
+ </para>
+ </important>
+ <caution>
+ <para>
+ This is a caution
+ </para>
+ </caution>
+ <warning>
+ <para>
+ This is a warning
+ </para>
+ </warning>
+ <para>
+ These are the only admonitions supported by <ulink url="http://www.docbook.org/">DocBook</ulink>.
+ So, for example <literal>[information This is some information]</literal>
+ is unlikely to produce the desired effect.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.headings">
+ <title><link linkend="quickbook.syntax.block.headings">Headings</link></title>
+
 <programlisting><!--quickbook-escape-prefix-->[h1 Heading 1]
 [h2 Heading 2]
 [h3 Heading 3]
@@ -1531,577 +1516,564 @@
 [h5 Heading 5]
 [h6 Heading 6]
 <!--quickbook-escape-postfix--></programlisting>
- <anchor id="quickbook.syntax.block.headings.heading_1"/>
- <bridgehead renderas="sect1">
- <link linkend="quickbook.syntax.block.headings.heading_1">Heading
- 1</link>
- </bridgehead>
- <anchor id="quickbook.syntax.block.headings.heading_2"/>
- <bridgehead renderas="sect2">
- <link linkend="quickbook.syntax.block.headings.heading_2">Heading
- 2</link>
- </bridgehead>
- <anchor id="quickbook.syntax.block.headings.heading_3"/>
- <bridgehead renderas="sect3">
- <link linkend="quickbook.syntax.block.headings.heading_3">Heading
- 3</link>
- </bridgehead>
- <anchor id="quickbook.syntax.block.headings.heading_4"/>
- <bridgehead renderas="sect4">
- <link linkend="quickbook.syntax.block.headings.heading_4">Heading
- 4</link>
- </bridgehead>
- <anchor id="quickbook.syntax.block.headings.heading_5"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.headings.heading_5">Heading
- 5</link>
- </bridgehead>
- <anchor id="quickbook.syntax.block.headings.heading_6"/>
- <bridgehead renderas="sect6">
- <link linkend="quickbook.syntax.block.headings.heading_6">Heading
- 6</link>
- </bridgehead>
- <para>
- Headings 1-3 [h1 h2 and h3] will automatically have anchors with
- normalized names with <literal>name=&quot;section_id.normalized_header_text&quot;</literal>
- (i.e. valid characters are <literal>a-z</literal>, <literal>A-Z</literal>,
- <literal>0-9</literal> and <literal>_</literal>. All non-valid characters
- are converted to underscore and all upper-case are converted to lower-case.
- For example: Heading 1 in section Section 2 will be normalized to
- <literal>section_2.heading_1</literal>). You can use:
- </para>
-
+ <anchor id="quickbook.syntax.block.headings.heading_1"/>
+ <bridgehead renderas="sect1">
+ <link linkend="quickbook.syntax.block.headings.heading_1">Heading 1</link>
+ </bridgehead>
+ <anchor id="quickbook.syntax.block.headings.heading_2"/>
+ <bridgehead renderas="sect2">
+ <link linkend="quickbook.syntax.block.headings.heading_2">Heading 2</link>
+ </bridgehead>
+ <anchor id="quickbook.syntax.block.headings.heading_3"/>
+ <bridgehead renderas="sect3">
+ <link linkend="quickbook.syntax.block.headings.heading_3">Heading 3</link>
+ </bridgehead>
+ <anchor id="quickbook.syntax.block.headings.heading_4"/>
+ <bridgehead renderas="sect4">
+ <link linkend="quickbook.syntax.block.headings.heading_4">Heading 4</link>
+ </bridgehead>
+ <anchor id="quickbook.syntax.block.headings.heading_5"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.headings.heading_5">Heading 5</link>
+ </bridgehead>
+ <anchor id="quickbook.syntax.block.headings.heading_6"/>
+ <bridgehead renderas="sect6">
+ <link linkend="quickbook.syntax.block.headings.heading_6">Heading 6</link>
+ </bridgehead>
+ <para>
+ Headings 1-3 [h1 h2 and h3] will automatically have anchors with normalized
+ names with <literal>name=&quot;section_id.normalized_header_text&quot;</literal>
+ (i.e. valid characters are <literal>a-z</literal>, <literal>A-Z</literal>,
+ <literal>0-9</literal> and <literal>_</literal>. All non-valid characters
+ are converted to underscore and all upper-case are converted to lower-case.
+ For example: Heading 1 in section Section 2 will be normalized to <literal>section_2.heading_1</literal>).
+ You can use:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[link section_id.normalized_header_text The link text]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- to link to them. See <link linkend="quickbook.syntax.phrase.anchor_links">Anchor
- links</link> and <link linkend="quickbook.syntax.block.section">Section</link>
- for more info.
- </para>
- </section>
- <section id="quickbook.syntax.block.generic_heading">
- <title><link linkend="quickbook.syntax.block.generic_heading">Generic
- Heading</link></title>
- <para>
- In cases when you don't want to care about the heading level (1 to
- 6), you can use the <emphasis>Generic Heading</emphasis>:
- </para>
-
+ <para>
+ to link to them. See <link linkend="quickbook.syntax.phrase.anchor_links">Anchor
+ links</link> and <link linkend="quickbook.syntax.block.section">Section</link>
+ for more info.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.generic_heading">
+ <title><link linkend="quickbook.syntax.block.generic_heading">Generic Heading</link></title>
+ <para>
+ In cases when you don't want to care about the heading level (1 to 6),
+ you can use the <emphasis>Generic Heading</emphasis>:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[heading Heading]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- The <emphasis>Generic Heading</emphasis> assumes the level, plus
- one, of the innermost section where it is placed. For example, if
- it is placed in the outermost section, then, it assumes <emphasis>h2</emphasis>.
- </para>
- <para>
- Headings are often used as an alternative to sections. It is used
- particularly if you do not want to start a new section. In many cases,
- however, headings in a particular section is just flat. Example:
- </para>
-
+ <para>
+ The <emphasis>Generic Heading</emphasis> assumes the level, plus one, of
+ the innermost section where it is placed. For example, if it is placed
+ in the outermost section, then, it assumes <emphasis>h2</emphasis>.
+ </para>
+ <para>
+ Headings are often used as an alternative to sections. It is used particularly
+ if you do not want to start a new section. In many cases, however, headings
+ in a particular section is just flat. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[section A]
 [h2 X]
 [h2 Y]
 [h2 Z]
 [endsect]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Here we use h2 assuming that section A is the outermost level. If
- it is placed in an inner level, you'll have to use h3, h4, etc. depending
- on where the section is. In general, it is the section level plus
- one. It is rather tedious, however, to scan the section level everytime.
- If you rewrite the example above as shown below, this will be automatic:
- </para>
-
+ <para>
+ Here we use h2 assuming that section A is the outermost level. If it is
+ placed in an inner level, you'll have to use h3, h4, etc. depending on
+ where the section is. In general, it is the section level plus one. It
+ is rather tedious, however, to scan the section level everytime. If you
+ rewrite the example above as shown below, this will be automatic:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[section A]
 [heading X]
 [heading Y]
 [heading Z]
 [endsect]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- They work well regardless where you place them. You can rearrange
- sections at will without any extra work to ensure correct heading
- levels. In fact, with <emphasis>section</emphasis> and <emphasis>heading</emphasis>,
- you have all you need. <emphasis>h1</emphasis>..<emphasis>h6</emphasis>
- becomes redundant. <emphasis>h1</emphasis>..<emphasis>h6</emphasis>
- might be deprecated in the future.
- </para>
- </section>
- <section id="quickbook.syntax.block.macros">
- <title><link linkend="quickbook.syntax.block.macros">Macros</link></title>
-
+ <para>
+ They work well regardless where you place them. You can rearrange sections
+ at will without any extra work to ensure correct heading levels. In fact,
+ with <emphasis>section</emphasis> and <emphasis>heading</emphasis>, you
+ have all you need. <emphasis>h1</emphasis>..<emphasis>h6</emphasis> becomes
+ redundant. <emphasis>h1</emphasis>..<emphasis>h6</emphasis> might be deprecated
+ in the future.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.macros">
+ <title><link linkend="quickbook.syntax.block.macros">Macros</link></title>
+
 <programlisting><!--quickbook-escape-prefix-->[def macro_identifier some text]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- When a macro is defined, the identifier replaces the text anywhere
- in the file, in paragraphs, in markups, etc. macro_identifier is
- a string of non- white space characters except ']'. A macro may not
- follow an alphabetic character or the underscore. The replacement
- text can be any phrase (even marked up). Example:
- </para>
-
-<programlisting><!--quickbook-escape-prefix-->[def sf_logo [$http://sourceforge.net/sflogo.php?group_id=28447&amp;type=1]]
+ <para>
+ When a macro is defined, the identifier replaces the text anywhere in the
+ file, in paragraphs, in markups, etc. macro_identifier is a string of non-
+ white space characters except ']'. A macro may not follow an alphabetic
+ character or the underscore. The replacement text can be any phrase (even
+ marked up). Example:
+ </para>
+
+<programlisting><!--quickbook-escape-prefix-->[def sf_logo [$http://sourceforge.net/sflogo.php?group_id=28447&amp;type=1]]
 sf_logo
 <!--quickbook-escape-postfix--></programlisting>
+ <para>
+ Now everywhere the sf_logo is placed, the picture will be inlined.
+ </para>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="http://sourceforge.net/sflogo.php?group_id=28447&amp;type=1"></imagedata></imageobject>
+ <textobject>
+ <phrase>sflogo</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <tip>
+ <para>
+ It's a good idea to use macro identifiers that are distinguishable. For
+ instance, in this document, macro identifiers have two leading and trailing
+ underscores (e.g. <literal>__spirit__</literal>). The reason is to avoid unwanted
+ macro replacement.
+ </para>
+ </tip>
+ <para>
+ Links (URLS) and images are good candidates for macros. <emphasis role="bold">1</emphasis>)
+ They tend to change a lot. It is a good idea to place all links and images
+ in one place near the top to make it easy to make changes. <emphasis role="bold">2</emphasis>)
+ The syntax is not pretty. It's easier to read and write, e.g. <literal>__spirit__</literal>
+ than <literal>[@http://spirit.sourceforge.net Spirit]</literal>.
+ </para>
+ <para>
+ Some more examples:
+ </para>
+
+<programlisting><!--quickbook-escape-prefix-->[def :-) [$theme/smiley.png]]
+[def __spirit__ [@http://spirit.sourceforge.net Spirit]]
+<!--quickbook-escape-postfix--></programlisting>
+ <para>
+ (See <link linkend="quickbook.syntax.phrase.images">Images</link> and
+ <link linkend="quickbook.syntax.phrase.links">Links</link>)
+ </para>
+ <para>
+ Invoking these macros:
+ </para>
+
+<programlisting><!--quickbook-escape-prefix-->Hi __spirit__ :-)
+<!--quickbook-escape-postfix--></programlisting>
+ <para>
+ will generate this:
+ </para>
+ <para>
+ Hi <ulink url="http://spirit.sourceforge.net">Spirit</ulink> <inlinemediaobject><imageobject><imagedata
+ fileref="images/smiley.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>smiley</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.predefined_macros">
+ <title><link linkend="quickbook.syntax.block.predefined_macros">Predefined
+ Macros</link></title>
+ <para>
+ Quickbook has some predefined macros that you can already use.
+ </para>
+ <table frame="all"> <title>Predefined Macros</title>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>
               <para>
- Now everywhere the sf_logo is placed, the picture will be inlined.
+ Macro
               </para>
+ </entry><entry>
               <para>
- <inlinemediaobject><imageobject><imagedata fileref="http://sourceforge.net/sflogo.php?group_id=28447&amp;type=1"></imagedata></imageobject>
- <textobject>
- <phrase>sflogo</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <tip>
- <para>
- It's a good idea to use macro identifiers that are distinguishable.
- For instance, in this document, macro identifiers have two leading
- and trailing underscores (e.g. <literal>__spirit__</literal>). The reason
- is to avoid unwanted macro replacement.
- </para>
- </tip>
- <para>
- Links (URLS) and images are good candidates for macros. <emphasis
- role="bold">1</emphasis>) They tend to change a lot. It is a good
- idea to place all links and images in one place near the top to make
- it easy to make changes. <emphasis role="bold">2</emphasis>) The
- syntax is not pretty. It's easier to read and write, e.g. <literal>__spirit__</literal>
- than <literal>[@http://spirit.sourceforge.net Spirit]</literal>.
+ Meaning
               </para>
+ </entry><entry>
               <para>
- Some more examples:
+ Example
               </para>
-
-<programlisting><!--quickbook-escape-prefix-->[def :-) [$theme/smiley.png]]
-[def __spirit__ [@http://spirit.sourceforge.net Spirit]]
-<!--quickbook-escape-postfix--></programlisting>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
               <para>
- (See <link linkend="quickbook.syntax.phrase.images">Images</link>
- and <link linkend="quickbook.syntax.phrase.links">Links</link>)
+ __DATE__
               </para>
+ </entry><entry>
               <para>
- Invoking these macros:
+ Today's date
               </para>
-
-<programlisting><!--quickbook-escape-prefix-->Hi __spirit__ :-)
-<!--quickbook-escape-postfix--></programlisting>
+ </entry><entry>
+ <para>
+ 2000-Dec-20
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ __TIME__
+ </para>
+ </entry><entry>
+ <para>
+ The current time
+ </para>
+ </entry><entry>
+ <para>
+ 12:00:00 PM
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
               <para>
- will generate this:
+ __FILENAME__
               </para>
+ </entry><entry>
               <para>
- Hi <ulink url="http://spirit.sourceforge.net">Spirit</ulink> <inlinemediaobject><imageobject><imagedata
- fileref="images/smiley.png"></imagedata></imageobject>
- <textobject>
- <phrase>smiley</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- </section>
- <section id="quickbook.syntax.block.predefined_macros">
- <title><link linkend="quickbook.syntax.block.predefined_macros">Predefined
- Macros</link></title>
- <para>
- Quickbook has some predefined macros that you can already use.
- </para>
- <table frame="all"> <title>Predefined Macros</title>
- <tgroup cols="3">
- <thead>
- <row>
- <entry>
- <para>
- Macro
- </para>
- </entry><entry>
- <para>
- Meaning
- </para>
- </entry><entry>
- <para>
- Example
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- __DATE__
- </para>
- </entry><entry>
- <para>
- Today's date
- </para>
- </entry><entry>
- <para>
- 2000-Dec-20
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- __TIME__
- </para>
- </entry><entry>
- <para>
- The current time
- </para>
- </entry><entry>
- <para>
- 12:00:00 PM
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- __FILENAME__
- </para>
- </entry><entry>
- <para>
- Quickbook source filename
- </para>
- </entry><entry>
- <para>
- NO_FILENAME_MACRO_GENERATED_IN_DEBUG_MODE
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </section>
- <section id="quickbook.syntax.block.templates">
- <title><link linkend="quickbook.syntax.block.templates">Templates</link></title>
- <para>
- Templates provide a more versatile text substitution mechanism. Templates
- come in handy when you need to create parameterizable, multi-line,
- boilerplate text that you specify once and expand many times. Templates
- accept one or more arguments. These arguments act like place-holders
- for text replacement. Unlike simple macros, which are limited to
- phrase level markup, templates can contain block level markup (e.g.
- paragraphs, code blocks and tables).
+ Quickbook source filename
               </para>
+ </entry><entry>
               <para>
- Example template:
+ NO_FILENAME_MACRO_GENERATED_IN_DEBUG_MODE
               </para>
-
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+ <section id="quickbook.syntax.block.templates">
+ <title><link linkend="quickbook.syntax.block.templates">Templates</link></title>
+ <para>
+ Templates provide a more versatile text substitution mechanism. Templates
+ come in handy when you need to create parameterizable, multi-line, boilerplate
+ text that you specify once and expand many times. Templates accept one
+ or more arguments. These arguments act like place-holders for text replacement.
+ Unlike simple macros, which are limited to phrase level markup, templates
+ can contain block level markup (e.g. paragraphs, code blocks and tables).
+ </para>
+ <para>
+ Example template:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[template person[name age what]
 
 Hi, my name is [name]. I am [age] years old. I am a [what].
 
 ]
 <!--quickbook-escape-postfix--></programlisting>
- <anchor id="quickbook.syntax.block.templates.template_identifier"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.templates.template_identifier">Template
- Identifier</link>
- </bridgehead>
- <para>
- Template identifiers can either consist of:
- </para>
- <itemizedlist>
- <listitem>
- An initial alphabetic character or the underscore, followed by
- zero or more alphanumeric characters or the underscore. This is
- similar to your typical C/C++ identifier.
- </listitem>
- <listitem>
- A single character punctuation (a non-alphanumeric printable character)
- </listitem>
- </itemizedlist>
- <anchor id="quickbook.syntax.block.templates.formal_template_arguments"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.templates.formal_template_arguments">Formal
- Template Arguments</link>
- </bridgehead>
- <para>
- Template formal arguments are identifiers consisting of an initial
- alphabetic character or the underscore, followed by zero or more
- alphanumeric characters or the underscore. This is similar to your
- typical C/C++ identifier.
- </para>
- <para>
- A template formal argument temporarily hides a template of the same
- name at the point where the <link linkend="quickbook.syntax.block.templates.template_expansion">template
- is expanded</link>. Note that the body of the <literal>person</literal>
- template above refers to <literal>name</literal> <literal>age</literal>
- and <literal>what</literal> as <literal>[name]</literal> <literal>[age]</literal>
- and <literal>[what]</literal>. <literal>name</literal> <literal>age</literal>
- and <literal>what</literal> are actually templates that exist in
- the duration of the template call.
- </para>
- <anchor id="quickbook.syntax.block.templates.template_body"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.templates.template_body">Template
- Body</link>
- </bridgehead>
- <para>
- The template body can be just about any QuickBook block or phrase.
- There are actually two forms. Templates may be phrase or block level.
- Phrase templates are of the form:
- </para>
-
+ <anchor id="quickbook.syntax.block.templates.template_identifier"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.templates.template_identifier">Template
+ Identifier</link>
+ </bridgehead>
+ <para>
+ Template identifiers can either consist of:
+ </para>
+ <itemizedlist>
+ <listitem>
+ An initial alphabetic character or the underscore, followed by zero or
+ more alphanumeric characters or the underscore. This is similar to your
+ typical C/C++ identifier.
+ </listitem>
+ <listitem>
+ A single character punctuation (a non-alphanumeric printable character)
+ </listitem>
+ </itemizedlist>
+ <anchor id="quickbook.syntax.block.templates.formal_template_arguments"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.templates.formal_template_arguments">Formal
+ Template Arguments</link>
+ </bridgehead>
+ <para>
+ Template formal arguments are identifiers consisting of an initial alphabetic
+ character or the underscore, followed by zero or more alphanumeric characters
+ or the underscore. This is similar to your typical C/C++ identifier.
+ </para>
+ <para>
+ A template formal argument temporarily hides a template of the same name
+ at the point where the <link linkend="quickbook.syntax.block.templates.template_expansion">template
+ is expanded</link>. Note that the body of the <literal>person</literal>
+ template above refers to <literal>name</literal> <literal>age</literal>
+ and <literal>what</literal> as <literal>[name]</literal> <literal>[age]</literal>
+ and <literal>[what]</literal>. <literal>name</literal> <literal>age</literal>
+ and <literal>what</literal> are actually templates that exist in the duration
+ of the template call.
+ </para>
+ <anchor id="quickbook.syntax.block.templates.template_body"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.templates.template_body">Template
+ Body</link>
+ </bridgehead>
+ <para>
+ The template body can be just about any QuickBook block or phrase. There
+ are actually two forms. Templates may be phrase or block level. Phrase
+ templates are of the form:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[template sample[arg1 arg2...argN] replacement text... ]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Block templates are of the form:
- </para>
-
+ <para>
+ Block templates are of the form:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[template sample[arg1 arg2...argN]
 replacement text...
 ]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- The basic rule is as follows: if a newline immediately follows the
- argument list, then it is a block template, otherwise, it is a phrase
- template. Phrase templates are typically expanded as part of phrases.
- Like macros, block level elements are not allowed in phrase templates.
- </para>
- <anchor id="quickbook.syntax.block.templates.template_expansion"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.templates.template_expansion">Template
- Expansion</link>
- </bridgehead>
- <para>
- You expand a template this way:
- </para>
-
+ <para>
+ The basic rule is as follows: if a newline immediately follows the argument
+ list, then it is a block template, otherwise, it is a phrase template.
+ Phrase templates are typically expanded as part of phrases. Like macros,
+ block level elements are not allowed in phrase templates.
+ </para>
+ <anchor id="quickbook.syntax.block.templates.template_expansion"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.templates.template_expansion">Template
+ Expansion</link>
+ </bridgehead>
+ <para>
+ You expand a template this way:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[template_identifier arg1..arg2..arg3]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- At template expansion, you supply the actual arguments. The template
- will be expanded with your supplied arguments. Example:
- </para>
-
+ <para>
+ At template expansion, you supply the actual arguments. The template will
+ be expanded with your supplied arguments. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[person James Bond..39..Spy]
 [person Santa Clause..87..Big Red Fatso]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Which will expand to:
- </para>
- <para>
- <para>
- Hi, my name is James Bond. I am 39 years old. I am a Spy.
- </para>
- <para>
- Hi, my name is Santa Clause. I am 87 years old. I am a Big Red
- Fatso.
- </para>
- </para>
- <caution>
- <para>
- A word of caution: Templates are recursive. A template can call
- another template or even itself, directly or indirectly. There
- are no control structures in QuickBook (yet) so this will always
- mean infinite recursion. QuickBook can detect this situation and
- report an error if recursion exceeds a certain limit.
- </para>
- </caution>
- <para>
- Each actual argument can be a word, a text fragment or just about
- any <link linkend="quickbook.syntax.phrase">QuickBook phrase</link>.
- Arguments are separated by the double dot <literal>&quot;..&quot;</literal>
- and terminated by the close parenthesis.
- </para>
- <anchor id="quickbook.syntax.block.templates.nullary_templates"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.templates.nullary_templates">Nullary
- Templates</link>
- </bridgehead>
- <para>
- Nullary templates look and act like simple macros. Example:
- </para>
-
+ <para>
+ Which will expand to:
+ </para>
+ <para>
+ <para>
+ Hi, my name is James Bond. I am 39 years old. I am a Spy.
+ </para>
+ <para>
+ Hi, my name is Santa Clause. I am 87 years old. I am a Big Red Fatso.
+ </para>
+ </para>
+ <caution>
+ <para>
+ A word of caution: Templates are recursive. A template can call another
+ template or even itself, directly or indirectly. There are no control
+ structures in QuickBook (yet) so this will always mean infinite recursion.
+ QuickBook can detect this situation and report an error if recursion
+ exceeds a certain limit.
+ </para>
+ </caution>
+ <para>
+ Each actual argument can be a word, a text fragment or just about any
+ <link linkend="quickbook.syntax.phrase">QuickBook phrase</link>. Arguments
+ are separated by the double dot <literal>&quot;..&quot;</literal> and terminated
+ by the close parenthesis.
+ </para>
+ <anchor id="quickbook.syntax.block.templates.nullary_templates"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.templates.nullary_templates">Nullary
+ Templates</link>
+ </bridgehead>
+ <para>
+ Nullary templates look and act like simple macros. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[template alpha[]&apos;&apos;&apos;&amp;#945;&apos;&apos;&apos;]
 [template beta[]&apos;&apos;&apos;&amp;#946;&apos;&apos;&apos;]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Expanding:
- </para>
-
+ <para>
+ Expanding:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->Some squigles...[*[alpha][beta]]<!--quickbook-escape-postfix--></programlisting>
- <para>
- We have:
- </para>
- <para>
- Some squiggles...<emphasis role="bold">&#945;&#946;</emphasis>
- </para>
- <para>
- The difference with macros are
- </para>
- <itemizedlist>
- <listitem>
- The explicit <link linkend="quickbook.syntax.block.templates.template_expansion">template
- expansion syntax</link>. This is an advantage because, now, we
- don't have to use obscure naming conventions like double underscores
- (e.g. __alpha__) to avoid unwanted macro replacement.
- </listitem>
- <listitem>
- The template is expanded at the point where it is invoked. A macro
- is expanded immediately at its point of declaration. This is subtle
- and can cause a slight difference in behavior especially if you
- refer to other macros and templates in the body.
- </listitem>
- </itemizedlist>
- <para>
- The empty brackets after the template identifier (<literal>alpha[]</literal>)
- indicates no arguments. If the template body does not look like a
- template argument list, we can elide the empty brackets. Example:
- </para>
-
+ <para>
+ We have:
+ </para>
+ <para>
+ Some squiggles...<emphasis role="bold">&#945;&#946;</emphasis>
+ </para>
+ <para>
+ The difference with macros are
+ </para>
+ <itemizedlist>
+ <listitem>
+ The explicit <link linkend="quickbook.syntax.block.templates.template_expansion">template
+ expansion syntax</link>. This is an advantage because, now, we don't
+ have to use obscure naming conventions like double underscores (e.g.
+ __alpha__) to avoid unwanted macro replacement.
+ </listitem>
+ <listitem>
+ The template is expanded at the point where it is invoked. A macro is
+ expanded immediately at its point of declaration. This is subtle and
+ can cause a slight difference in behavior especially if you refer to
+ other macros and templates in the body.
+ </listitem>
+ </itemizedlist>
+ <para>
+ The empty brackets after the template identifier (<literal>alpha[]</literal>)
+ indicates no arguments. If the template body does not look like a template
+ argument list, we can elide the empty brackets. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[template aristotle_quote Aristotle: [*['Education is the best provision
 for the journey to old age.]]]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Expanding:
- </para>
-
+ <para>
+ Expanding:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->Here's a quote from [aristotle_quote].
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- We have:
- </para>
- <para>
- Here's a quote from Aristotle: <emphasis role="bold"><emphasis>Education
- is the best provision for the journey to old age.</emphasis></emphasis>.
- </para>
- <para>
- The disadvantage is that you can't avoid the space between the template
- identifier, <code><phrase role="identifier">aristotle_quote</phrase></code>,
- and the template body &quot;Aristotle...&quot;. This space will be
- part of the template body. If that space is unwanted, use empty brackets
- or use the space escape: &quot;<code><phrase role="special">\</phrase>
- </code>&quot;. Example:
- </para>
-
+ <para>
+ We have:
+ </para>
+ <para>
+ Here's a quote from Aristotle: <emphasis role="bold"><emphasis>Education
+ is the best provision for the journey to old age.</emphasis></emphasis>.
+ </para>
+ <para>
+ The disadvantage is that you can't avoid the space between the template
+ identifier, <code><phrase role="identifier">aristotle_quote</phrase></code>,
+ and the template body &quot;Aristotle...&quot;. This space will be part
+ of the template body. If that space is unwanted, use empty brackets or
+ use the space escape: &quot;<code><phrase role="special">\</phrase> </code>&quot;.
+ Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[template tag\ _tag]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Then expanding:
- </para>
-
+ <para>
+ Then expanding:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->`struct` x[tag];
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- We have:
- </para>
- <para>
- <code><phrase role="keyword">struct</phrase></code> x_tag;
- </para>
- <para>
- You have a couple of ways to do it. I personally prefer the explicit
- empty brackets, though.
- </para>
- <anchor id="quickbook.syntax.block.templates.simple_arguments"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.templates.simple_arguments">Simple
- Arguments</link>
- </bridgehead>
- <para>
- As mentioned, arguments are separated by the double dot <literal>&quot;..&quot;</literal>.
- If there are less arguments passed than expected, QuickBook attempts
- to break the last argument into two or more arguments following this
- logic:
- </para>
- <itemizedlist>
- <listitem>
- Break the last argument into two, at the first space found (<literal>'',
- '\n', \t' or '\r'</literal>).
- </listitem>
- <listitem>
- Repeat until there are enough arguments or if there are no more
- spaces found (in which case, an error is reported).
- </listitem>
- </itemizedlist>
- <para>
- For example:
- </para>
-
+ <para>
+ We have:
+ </para>
+ <para>
+ <code><phrase role="keyword">struct</phrase></code> x_tag;
+ </para>
+ <para>
+ You have a couple of ways to do it. I personally prefer the explicit empty
+ brackets, though.
+ </para>
+ <anchor id="quickbook.syntax.block.templates.simple_arguments"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.templates.simple_arguments">Simple
+ Arguments</link>
+ </bridgehead>
+ <para>
+ As mentioned, arguments are separated by the double dot <literal>&quot;..&quot;</literal>.
+ If there are less arguments passed than expected, QuickBook attempts to
+ break the last argument into two or more arguments following this logic:
+ </para>
+ <itemizedlist>
+ <listitem>
+ Break the last argument into two, at the first space found (<literal>'',
+ '\n', \t' or '\r'</literal>).
+ </listitem>
+ <listitem>
+ Repeat until there are enough arguments or if there are no more spaces
+ found (in which case, an error is reported).
+ </listitem>
+ </itemizedlist>
+ <para>
+ For example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[template simple[a b c d] [a][b][c][d]]
 [simple w x y z]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- will produce:
- </para>
- <para>
- wxyz
- </para>
- <para>
- &quot;w x y z&quot; is initially treated as a single argument because
- we didn't supply any <literal>&quot;..&quot;</literal> separators.
- However, since <literal>simple</literal> expects 4 arguments, &quot;w
- x y z&quot; is broken down iteratively (applying the logic above)
- until we have &quot;w&quot;, &quot;x&quot;, &quot;y&quot; and &quot;z&quot;.
- </para>
- <para>
- QuickBook only tries to get the arguments it needs. For example:
- </para>
-
+ <para>
+ will produce:
+ </para>
+ <para>
+ wxyz
+ </para>
+ <para>
+ &quot;w x y z&quot; is initially treated as a single argument because we
+ didn't supply any <literal>&quot;..&quot;</literal> separators. However,
+ since <literal>simple</literal> expects 4 arguments, &quot;w x y z&quot;
+ is broken down iteratively (applying the logic above) until we have &quot;w&quot;,
+ &quot;x&quot;, &quot;y&quot; and &quot;z&quot;.
+ </para>
+ <para>
+ QuickBook only tries to get the arguments it needs. For example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[simple w x y z trail]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- will produce:
- </para>
- <para>
- wxyz trail
- </para>
- <para>
- The arguments being: &quot;w&quot;, &quot;x&quot;, &quot;y&quot;
- and &quot;z trail&quot;.
- </para>
- <para>
- It should be obvious now that for simple arguments with no spaces,
- we can get by without separating the arguments with <literal>&quot;..&quot;</literal>
- separators. It is possible to combine <literal>&quot;..&quot;</literal>
- separators with the argument passing simplification presented above.
- Example:
- </para>
-
-<programlisting><!--quickbook-escape-prefix-->[simple what do you think ..m a n?]
-<!--quickbook-escape-postfix--></programlisting>
- <para>
- will produce:
- </para>
- <para>
- what do you think man?
- </para>
- <anchor id="quickbook.syntax.block.templates.punctuation_templates"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.templates.punctuation_templates">Punctuation
- Templates</link>
- </bridgehead>
- <para>
- With templates, one of our objectives is to allow us to rewrite QuickBook
- in QuickBook (as a qbk library). For that to happen, we need to accommodate
- single character punctuation templates which are fairly common in
- QuickBook. You might have noticed that single character punctuations
- are allowed as <link linkend="quickbook.syntax.block.templates.template_identifier">template
- identifiers</link>. Example:
- </para>
-
+ <para>
+ will produce:
+ </para>
+ <para>
+ wxyz trail
+ </para>
+ <para>
+ The arguments being: &quot;w&quot;, &quot;x&quot;, &quot;y&quot; and &quot;z
+ trail&quot;.
+ </para>
+ <para>
+ It should be obvious now that for simple arguments with no spaces, we can
+ get by without separating the arguments with <literal>&quot;..&quot;</literal>
+ separators. It is possible to combine <literal>&quot;..&quot;</literal>
+ separators with the argument passing simplification presented above. Example:
+ </para>
+
+<programlisting><!--quickbook-escape-prefix-->[simple what do you think ..m a n?]
+<!--quickbook-escape-postfix--></programlisting>
+ <para>
+ will produce:
+ </para>
+ <para>
+ what do you think man?
+ </para>
+ <anchor id="quickbook.syntax.block.templates.punctuation_templates"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.templates.punctuation_templates">Punctuation
+ Templates</link>
+ </bridgehead>
+ <para>
+ With templates, one of our objectives is to allow us to rewrite QuickBook
+ in QuickBook (as a qbk library). For that to happen, we need to accommodate
+ single character punctuation templates which are fairly common in QuickBook.
+ You might have noticed that single character punctuations are allowed as
+ <link linkend="quickbook.syntax.block.templates.template_identifier">template
+ identifiers</link>. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[template ![bar] <!--quickbook-escape-postfix-->&lt;hey&gt;<!--quickbook-escape-prefix-->[bar]<!--quickbook-escape-postfix-->&lt;/hey&gt;<!--quickbook-escape-prefix-->]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- Now, expanding this:
- </para>
-
+ <para>
+ Now, expanding this:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[!baz]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- We will have:
- </para>
-
+ <para>
+ We will have:
+ </para>
+
 <programlisting>&lt;hey&gt;baz&lt;/hey&gt;
 </programlisting>
- </section>
- <section id="quickbook.syntax.block.blurbs">
- <title><link linkend="quickbook.syntax.block.blurbs">Blurbs</link></title>
-
+ </section>
+ <section id="quickbook.syntax.block.blurbs">
+ <title><link linkend="quickbook.syntax.block.blurbs">Blurbs</link></title>
+
 <programlisting><!--quickbook-escape-prefix-->[blurb :-) [*An eye catching advertisement or note...]
 
     __spirit__ is an object-oriented recursive-descent parser generator framework
@@ -2110,35 +2082,35 @@
     completely in C++.
 ]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- will generate this:
- </para>
- <sidebar role="blurb">
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/smiley.png"></imagedata></imageobject>
- <textobject>
- <phrase>smiley</phrase>
- </textobject>
- </inlinemediaobject> <emphasis role="bold">An eye catching advertisement
- or note...</emphasis>
- </para>
- <para>
- <ulink url="http://spirit.sourceforge.net">Spirit</ulink> is an object-oriented
- recursive-descent parser generator framework implemented using template
- meta-programming techniques. Expression templates allow us to approximate
- the syntax of Extended Backus-Normal Form (EBNF) completely in C++.
- </para>
- </sidebar>
- <note>
- <para>
- Prefer <link linkend="quickbook.syntax.block.admonitions">admonitions</link>
- wherever appropriate.
- </para>
- </note>
- </section>
- <section id="quickbook.syntax.block.tables">
- <title><link linkend="quickbook.syntax.block.tables">Tables</link></title>
-
+ <para>
+ will generate this:
+ </para>
+ <sidebar role="blurb">
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/smiley.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>smiley</phrase>
+ </textobject>
+ </inlinemediaobject> <emphasis role="bold">An eye catching advertisement
+ or note...</emphasis>
+ </para>
+ <para>
+ <ulink url="http://spirit.sourceforge.net">Spirit</ulink> is an object-oriented
+ recursive-descent parser generator framework implemented using template
+ meta-programming techniques. Expression templates allow us to approximate
+ the syntax of Extended Backus-Normal Form (EBNF) completely in C++.
+ </para>
+ </sidebar>
+ <note>
+ <para>
+ Prefer <link linkend="quickbook.syntax.block.admonitions">admonitions</link>
+ wherever appropriate.
+ </para>
+ </note>
+ </section>
+ <section id="quickbook.syntax.block.tables">
+ <title><link linkend="quickbook.syntax.block.tables">Tables</link></title>
+
 <programlisting><!--quickbook-escape-prefix-->[table A Simple Table
     [[Heading 1] [Heading 2] [Heading 3]]
     [[R0-C0] [R0-C1] [R0-C2]]
@@ -2146,85 +2118,85 @@
     [[R2-C0] [R2-C1] [R2-C2]]
 ]
 <!--quickbook-escape-postfix--></programlisting>
+ <para>
+ will generate:
+ </para>
+ <table frame="all"> <title>A Simple Table</title>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Heading 1
+ </para>
+ </entry><entry>
+ <para>
+ Heading 2
+ </para>
+ </entry><entry>
+ <para>
+ Heading 3
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ R0-C0
+ </para>
+ </entry><entry>
+ <para>
+ R0-C1
+ </para>
+ </entry><entry>
+ <para>
+ R0-C2
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
               <para>
- will generate:
+ R2-C0
               </para>
- <table frame="all"> <title>A Simple Table</title>
- <tgroup cols="3">
- <thead>
- <row>
- <entry>
- <para>
- Heading 1
- </para>
- </entry><entry>
- <para>
- Heading 2
- </para>
- </entry><entry>
- <para>
- Heading 3
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- R0-C0
- </para>
- </entry><entry>
- <para>
- R0-C1
- </para>
- </entry><entry>
- <para>
- R0-C2
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- R2-C0
- </para>
- </entry><entry>
- <para>
- R2-C1
- </para>
- </entry><entry>
- <para>
- R2-C2
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- R3-C0
- </para>
- </entry><entry>
- <para>
- R3-C1
- </para>
- </entry><entry>
- <para>
- R3-C2
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <para>
- The table title is optional. The first row of the table is automatically
- treated as the table header; that is, it is wrapped in <literal>&lt;thead&gt;...&lt;/thead&gt;</literal>
- XML tags. Note that unlike the original QuickDoc, the columns are
- nested in [ cells... ]. The syntax is free-format and allows big
- cells to be formatted nicely. Example:
+ </entry><entry>
+ <para>
+ R2-C1
+ </para>
+ </entry><entry>
+ <para>
+ R2-C2
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ R3-C0
+ </para>
+ </entry><entry>
+ <para>
+ R3-C1
+ </para>
+ </entry><entry>
+ <para>
+ R3-C2
               </para>
-
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>
+ The table title is optional. The first row of the table is automatically
+ treated as the table header; that is, it is wrapped in <literal>&lt;thead&gt;...&lt;/thead&gt;</literal>
+ XML tags. Note that unlike the original QuickDoc, the columns are nested
+ in [ cells... ]. The syntax is free-format and allows big cells to be formatted
+ nicely. Example:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[table Table with fat cells
     [[Heading 1] [Heading 2]]
     [
@@ -2246,63 +2218,63 @@
     ]
 ]
 <!--quickbook-escape-postfix--></programlisting>
+ <para>
+ and thus:
+ </para>
+ <table frame="all"> <title>Table with fat cells</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Heading 1
+ </para>
+ </entry><entry>
+ <para>
+ Heading 2
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ Row 0, Col 0: a small cell
+ </para>
+ </entry><entry>
+ <para>
+ Row 0, Col 1: a big fat cell with paragraphs
+ </para>
+ <para>
+ Boost provides free peer-reviewed portable C++ source libraries.
+ </para>
+ <para>
+ We emphasize libraries that work well with the C++ Standard Library.
+ Boost libraries are intended to be widely useful, and usable across
+ a broad spectrum of applications. The Boost license encourages both
+ commercial and non-commercial use.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
               <para>
- and thus:
+ Row 1, Col 0: a small cell
               </para>
- <table frame="all"> <title>Table with fat cells</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Heading 1
- </para>
- </entry><entry>
- <para>
- Heading 2
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- Row 0, Col 0: a small cell
- </para>
- </entry><entry>
- <para>
- Row 0, Col 1: a big fat cell with paragraphs
- </para>
- <para>
- Boost provides free peer-reviewed portable C++ source libraries.
- </para>
- <para>
- We emphasize libraries that work well with the C++ Standard
- Library. Boost libraries are intended to be widely useful,
- and usable across a broad spectrum of applications. The Boost
- license encourages both commercial and non-commercial use.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Row 1, Col 0: a small cell
- </para>
- </entry><entry>
- <para>
- Row 1, Col 1: a small cell
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
+ </entry><entry>
               <para>
- Here's how to have preformatted blocks of code in a table cell:
+ Row 1, Col 1: a small cell
               </para>
-
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>
+ Here's how to have preformatted blocks of code in a table cell:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[table Table with code
     [[Comment] [Code]]
     [
@@ -2319,32 +2291,31 @@
     ]
 ]
 <!--quickbook-escape-postfix--></programlisting>
- <table frame="all"> <title>Table with code</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Comment
- </para>
- </entry><entry>
- <para>
- Code
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- My first program
- </para>
- </entry><entry>
- <para>
-
-<programlisting>
-<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">iostream</phrase><phrase role="special">&gt;</phrase>
+ <table frame="all"> <title>Table with code</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Comment
+ </para>
+ </entry><entry>
+ <para>
+ Code
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ My first program
+ </para>
+ </entry><entry>
+ <para>
+
+<programlisting><phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">iostream</phrase><phrase role="special">&gt;</phrase>
 
 <phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
@@ -2352,381 +2323,361 @@
     <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 </programlisting>
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </section>
- <section id="quickbook.syntax.block.variable_lists">
- <title><link linkend="quickbook.syntax.block.variable_lists">Variable
- Lists</link></title>
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+ <section id="quickbook.syntax.block.variable_lists">
+ <title><link linkend="quickbook.syntax.block.variable_lists">Variable Lists</link></title>
+
 <programlisting><!--quickbook-escape-prefix-->[variablelist A Variable List
     [[term 1] [The definition of term 1]]
     [[term 2] [The definition of term 2]]
     [[term 3] [The definition of term 3]]
 ]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- will generate:
- </para>
- <variablelist>
- <title>A Variable List</title> <varlistentry><term>term 1</term>
- <listitem>
- <para>
- The definition of term 1
- </para>
- </listitem>
- </varlistentry> <varlistentry><term>term 2</term>
- <listitem>
- <para>
- The definition of term 2
- </para>
- </listitem>
- </varlistentry> <varlistentry><term>term 3</term>
- <listitem>
- <para>
- The definition of term 3
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- <para>
- The rules for variable lists are the same as for tables, except that
- only 2 &quot;columns&quot; are allowed. The first column contains
- the terms, and the second column contains the definitions. Those
- familiar with HTML will recognize this as a &quot;definition list&quot;.
- </para>
- </section>
- <section id="quickbook.syntax.block.include">
- <title><link linkend="quickbook.syntax.block.include">Include</link></title>
- <para>
- You can include one QuickBook file from another. The syntax is simply:
- </para>
-
+ <para>
+ will generate:
+ </para>
+ <variablelist>
+ <title>A Variable List</title> <varlistentry><term>term 1</term>
+ <listitem>
+ <para>
+ The definition of term 1
+ </para>
+ </listitem>
+ </varlistentry> <varlistentry><term>term 2</term>
+ <listitem>
+ <para>
+ The definition of term 2
+ </para>
+ </listitem>
+ </varlistentry> <varlistentry><term>term 3</term>
+ <listitem>
+ <para>
+ The definition of term 3
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <para>
+ The rules for variable lists are the same as for tables, except that only
+ 2 &quot;columns&quot; are allowed. The first column contains the terms,
+ and the second column contains the definitions. Those familiar with HTML
+ will recognize this as a &quot;definition list&quot;.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.include">
+ <title><link linkend="quickbook.syntax.block.include">Include</link></title>
+ <para>
+ You can include one QuickBook file from another. The syntax is simply:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[include someother.qbk]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- The included file will be processed as if it had been cut and pasted
- into the current document, with the following exceptions:
- </para>
- <itemizedlist>
- <listitem>
- The __FILENAME__ predefined macro will reflect the name of the file currently
- being processed.
- </listitem>
- <listitem>
- Any macros defined in the included file are scoped to that file.
- </listitem>
- </itemizedlist>
- <para>
- The <literal>[include]</literal> directive lets you specify a document
- id to use for the included file. When this id is not explicitly specified,
- the id defaults to the filename (&quot;someother&quot;, in the example
- above). You can specify the id like this:
- </para>
-
+ <para>
+ The included file will be processed as if it had been cut and pasted into
+ the current document, with the following exceptions:
+ </para>
+ <itemizedlist>
+ <listitem>
+ The __FILENAME__ predefined macro will reflect the name of the file currently being
+ processed.
+ </listitem>
+ <listitem>
+ Any macros defined in the included file are scoped to that file.
+ </listitem>
+ </itemizedlist>
+ <para>
+ The <literal>[include]</literal> directive lets you specify a document
+ id to use for the included file. When this id is not explicitly specified,
+ the id defaults to the filename (&quot;someother&quot;, in the example
+ above). You can specify the id like this:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[include:someid someother.qbk]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- All auto-generated anchors will use the document id as a unique prefix.
- So for instance, if there is a top section in someother.qbk named
- &quot;Intro&quot;, the named anchor for that section will be &quot;someid.intro&quot;,
- and you can link to it with <literal>[link someid.intro The Intro]</literal>.
- </para>
- </section>
- <section id="quickbook.syntax.block.import">
- <title><link linkend="quickbook.syntax.block.import">Import</link></title>
- <para>
- When documenting code, you'd surely need to present code from actual
- source files. While it is possible to copy some code and paste them
- in your QuickBook file, doing so is error prone and the extracted
- code in the documentation tends to get out of sync with the actual
- code as the code evolves. The problem, as always, is that once documentation
- is written, the tendency is for the docs to languish in the archives
- without maintenance.
- </para>
- <para>
- QuickBook's import facility provides a nice solution.
- </para>
- <anchor id="quickbook.syntax.block.import.example"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.import.example">Example</link>
- </bridgehead>
- <para>
- You can effortlessly import code snippets from source code into your
- QuickBook. The following illustrates how this is done:
- </para>
-
+ <para>
+ All auto-generated anchors will use the document id as a unique prefix.
+ So for instance, if there is a top section in someother.qbk named &quot;Intro&quot;,
+ the named anchor for that section will be &quot;someid.intro&quot;, and
+ you can link to it with <literal>[link someid.intro The Intro]</literal>.
+ </para>
+ </section>
+ <section id="quickbook.syntax.block.import">
+ <title><link linkend="quickbook.syntax.block.import">Import</link></title>
+ <para>
+ When documenting code, you'd surely need to present code from actual source
+ files. While it is possible to copy some code and paste them in your QuickBook
+ file, doing so is error prone and the extracted code in the documentation
+ tends to get out of sync with the actual code as the code evolves. The
+ problem, as always, is that once documentation is written, the tendency
+ is for the docs to languish in the archives without maintenance.
+ </para>
+ <para>
+ QuickBook's import facility provides a nice solution.
+ </para>
+ <anchor id="quickbook.syntax.block.import.example"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.import.example">Example</link>
+ </bridgehead>
+ <para>
+ You can effortlessly import code snippets from source code into your QuickBook.
+ The following illustrates how this is done:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[import ../test/stub.cpp]
 [foo]
 [bar]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- The first line:
- </para>
-
+ <para>
+ The first line:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[import ../test/stub.cpp]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- collects specially marked-up code snippets from <ulink url="../../test/stub.cpp">stub.cpp</ulink>
- and places them in your QuickBook file as virtual templates. Each
- of the specially marked-up code snippets has a name (e.g. <code><phrase
- role="identifier">foo</phrase></code> and <code><phrase role="identifier">bar</phrase></code>
- in the example above). This shall be the template identifier for
- that particular code snippet. The second and third line above does
- the actual template expansion:
- </para>
-
+ <para>
+ collects specially marked-up code snippets from <ulink url="../../test/stub.cpp">stub.cpp</ulink>
+ and places them in your QuickBook file as virtual templates. Each of the
+ specially marked-up code snippets has a name (e.g. <code><phrase role="identifier">foo</phrase></code>
+ and <code><phrase role="identifier">bar</phrase></code> in the example
+ above). This shall be the template identifier for that particular code
+ snippet. The second and third line above does the actual template expansion:
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->[foo]
 [bar]
 <!--quickbook-escape-postfix--></programlisting>
- <para>
- And the result is:
- </para>
- <para>
- <para>
- This is the <emphasis role="bold"><emphasis>foo</emphasis></emphasis>
- function.
- </para>
- <para>
- This description can have paragraphs...
- </para>
- <itemizedlist>
- <listitem>
- lists
- </listitem>
- <listitem>
- etc.
- </listitem>
- </itemizedlist>
- <para>
- And any quickbook block markup.
- </para>
- <para>
-
-<programlisting>
-<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">foo</phrase><phrase role="special">()</phrase>
-<phrase role="special">{</phrase>
- <phrase role="comment">// return 'em, foo man!
-</phrase> <phrase role="keyword">return</phrase> <phrase role="string">&quot;foo&quot;</phrase><phrase role="special">;</phrase>
-<phrase role="special">}</phrase>
-</programlisting>
- </para>
- <para>
- <calloutlist></calloutlist>
- </para>
- <para>
- This is the <emphasis role="bold"><emphasis>bar</emphasis></emphasis>
- function
- </para>
- <para>
-
-<programlisting>
-<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">bar</phrase><phrase role="special">()</phrase>
-<phrase role="special">{</phrase>
- <phrase role="comment">// return 'em, bar man!
-</phrase> <phrase role="keyword">return</phrase> <phrase role="string">&quot;bar&quot;</phrase><phrase role="special">;</phrase>
+ <para>
+ And the result is:
+ </para>
+ <para>
+ <para>
+ This is the <emphasis role="bold"><emphasis>foo</emphasis></emphasis>
+ function.
+ </para>
+ <para>
+ This description can have paragraphs...
+ </para>
+ <itemizedlist>
+ <listitem>
+ lists
+ </listitem>
+ <listitem>
+ etc.
+ </listitem>
+ </itemizedlist>
+ <para>
+ And any quickbook block markup.
+ </para>
+ <para>
+
+<programlisting><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">foo</phrase><phrase role="special">()</phrase>
+<phrase role="special">{</phrase>
+ <phrase role="comment">// return 'em, foo man!
+</phrase> <phrase role="keyword">return</phrase> <phrase role="string">&quot;foo&quot;</phrase><phrase role="special">;</phrase>
+<phrase role="special">}</phrase>
+</programlisting>
+ </para>
+ <para>
+ This is the <emphasis role="bold"><emphasis>bar</emphasis></emphasis>
+ function
+ </para>
+ <para>
+
+<programlisting><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">bar</phrase><phrase role="special">()</phrase>
+<phrase role="special">{</phrase>
+ <phrase role="comment">// return 'em, bar man!
+</phrase> <phrase role="keyword">return</phrase> <phrase role="string">&quot;bar&quot;</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase></programlisting>
- </para>
- <para>
- Some trailing text here <calloutlist></calloutlist>
- </para>
- </para>
- <anchor id="quickbook.syntax.block.import.code_snippet_markup"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.import.code_snippet_markup">Code
- Snippet Markup</link>
- </bridgehead>
- <para>
- Note how the code snippets in <ulink url="../../test/stub.cpp">stub.cpp</ulink>
- get marked up. We use distinguishable comments following the form:
- </para>
-
-<programlisting>
-<phrase role="comment">//[id
+ </para>
+ <para>
+ Some trailing text here
+ </para>
+ </para>
+ <anchor id="quickbook.syntax.block.import.code_snippet_markup"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.import.code_snippet_markup">Code
+ Snippet Markup</link>
+ </bridgehead>
+ <para>
+ Note how the code snippets in <ulink url="../../test/stub.cpp">stub.cpp</ulink>
+ get marked up. We use distinguishable comments following the form:
+ </para>
+
+<programlisting><phrase role="comment">//[id
 </phrase><phrase role="identifier">some</phrase> <phrase role="identifier">code</phrase> <phrase role="identifier">here</phrase>
 <phrase role="comment">//]
 </phrase></programlisting>
- <para>
- The first comment line above initiates a named code-snippet. This
- prefix will not be visible in quickbook. The entire code-snippet
- in between <code><phrase role="comment">//[id</phrase></code> and
- <code><phrase role="comment">//]</phrase></code> will be inserted
- as a template in quickbook with name <emphasis><emphasis>id</emphasis></emphasis>.
- The comment <code><phrase role="comment">//]</phrase></code> ends
- a code-snippet This too will not be visible in quickbook.
- </para>
- <anchor id="quickbook.syntax.block.import.special_comments"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.import.special_comments">Special
- Comments</link>
- </bridgehead>
- <para>
- Special comments of the form:
- </para>
-
-<programlisting>
-<phrase role="comment">//` some [*quickbook] markup here
+ <para>
+ The first comment line above initiates a named code-snippet. This prefix
+ will not be visible in quickbook. The entire code-snippet in between <code><phrase
+ role="comment">//[id</phrase></code> and <code><phrase role="comment">//]</phrase></code>
+ will be inserted as a template in quickbook with name <emphasis><emphasis>id</emphasis></emphasis>.
+ The comment <code><phrase role="comment">//]</phrase></code> ends a code-snippet
+ This too will not be visible in quickbook.
+ </para>
+ <anchor id="quickbook.syntax.block.import.special_comments"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.import.special_comments">Special
+ Comments</link>
+ </bridgehead>
+ <para>
+ Special comments of the form:
+ </para>
+
+<programlisting><phrase role="comment">//` some [*quickbook] markup here
 </phrase></programlisting>
- <para>
- and:
- </para>
-
-<programlisting>
-<phrase role="comment">/*` some [*quickbook] markup here */</phrase>
+ <para>
+ and:
+ </para>
+
+<programlisting><phrase role="comment">/*` some [*quickbook] markup here */</phrase>
 </programlisting>
- <para>
- will be parsed by QuickBook. This can contain quickbook <emphasis>blocks</emphasis>
- (e.g. sections, paragraphs, tables, etc). In the first case, the
- initial slash-slash, tick and white-space shall be ignored. In the
- second, the initial slash-star-tick and the final star-slash shall
- be ignored.
- </para>
- <anchor id="quickbook.syntax.block.import.callouts"/>
- <bridgehead renderas="sect5">
- <link linkend="quickbook.syntax.block.import.callouts">Callouts</link>
- </bridgehead>
- <para>
- Special comments of the form:
- </para>
-
-<programlisting>
-<phrase role="comment">/*&lt; some [*quickbook] markup here &gt;*/</phrase>
+ <para>
+ will be parsed by QuickBook. This can contain quickbook <emphasis>blocks</emphasis>
+ (e.g. sections, paragraphs, tables, etc). In the first case, the initial
+ slash-slash, tick and white-space shall be ignored. In the second, the
+ initial slash-star-tick and the final star-slash shall be ignored.
+ </para>
+ <anchor id="quickbook.syntax.block.import.callouts"/>
+ <bridgehead renderas="sect5">
+ <link linkend="quickbook.syntax.block.import.callouts">Callouts</link>
+ </bridgehead>
+ <para>
+ Special comments of the form:
+ </para>
+
+<programlisting><phrase role="comment">/*&lt; some [*quickbook] markup here &gt;*/</phrase>
 </programlisting>
- <para>
- will be regarded as callouts. These will be collected, numbered and
- rendered as a &quot;callout bug&quot; (a small icon with a number).
- After the whole snippet is parsed, the callout list is generated.
- See <ulink url="http://www.docbook.org/tdg/en/html/callout.html">Callouts</ulink>
- for details. Example:
- </para>
- <para>
- <para>
-
-<programlisting>
-<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">foo_bar</phrase><phrase role="special">()</phrase> <!--quickbook-escape-prefix--><phrase role="callout_bug"><co id="quickbook0co" linkends="quickbook0" /></phrase><!--quickbook-escape-postfix-->
+ <para>
+ will be regarded as callouts. These will be collected, numbered and rendered
+ as a &quot;callout bug&quot; (a small icon with a number). After the whole
+ snippet is parsed, the callout list is generated. See <ulink url="http://www.docbook.org/tdg/en/html/callout.html">Callouts</ulink>
+ for details. Example:
+ </para>
+ <para>
+ <para>
+
+<programlisting><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">foo_bar</phrase><phrase role="special">()</phrase> <!--quickbook-escape-prefix--><phrase role="callout_bug"><co id="quickbook0co" linkends="quickbook0" /></phrase><!--quickbook-escape-postfix-->
 <phrase role="special">{</phrase>
     <phrase role="keyword">return</phrase> <phrase role="string">&quot;foo-bar&quot;</phrase><phrase role="special">;</phrase> <!--quickbook-escape-prefix--><phrase role="callout_bug"><co id="quickbook1co" linkends="quickbook1" /></phrase><!--quickbook-escape-postfix-->
 <phrase role="special">}</phrase>
 </programlisting>
- </para>
- <para>
- <calloutlist><callout arearefs="quickbook0co" id="quickbook0"><para> The <emphasis>Mythical</emphasis> FooBar. See <ulink url="http://en.wikipedia.org/wiki/Foobar">Foobar
- for details</ulink> </para></callout><callout arearefs="quickbook1co" id="quickbook1"><para> return 'em, foo-bar man! </para></callout></calloutlist>
- </para>
- </para>
- <para>
- Checkout <ulink url="../../test/stub.cpp">stub.cpp</ulink> to see
- the actual code.
- </para>
- </section>
- </section>
- </section>
- <section id="quickbook.install">
- <title><link linkend="quickbook.install"> Installation and configuration</link></title>
+ </para>
           <para>
- This section provides some guidelines on how to install and configure
- BoostBook and Quickbook under several operating systems.
+ <calloutlist><callout arearefs="quickbook0co" id="quickbook0"><para> The <emphasis>Mythical</emphasis> FooBar. See <ulink url="http://en.wikipedia.org/wiki/Foobar">Foobar
+ for details</ulink> </para></callout><callout arearefs="quickbook1co" id="quickbook1"><para> return 'em, foo-bar man! </para></callout></calloutlist>
           </para>
+ </para>
+ <para>
+ Checkout <ulink url="../../test/stub.cpp">stub.cpp</ulink> to see the actual
+ code.
+ </para>
+ </section>
+ </section>
+ </section>
+ <section id="quickbook.install">
+ <title><link linkend="quickbook.install"> Installation and configuration</link></title>
+ <para>
+ This section provides some guidelines on how to install and configure BoostBook
+ and Quickbook under several operating systems.
+ </para>
+ <para>
+ Before continuing, it is very important that you keep this in mind: if you
+ try to build some documents and the process breaks due to misconfiguration,
+ be absolutely sure to delete any <code><phrase role="identifier">bin</phrase></code>
+ and <code><phrase role="identifier">bin</phrase><phrase role="special">.</phrase><phrase
+ role="identifier">v2</phrase></code> directories generated by the build before
+ trying again. Otherwise your configuration fixes will not take any effect.
+ </para>
+ <section id="quickbook.install.windows">
+ <title><link linkend="quickbook.install.windows"> Windows 2000, XP, 2003, Vista</link></title>
+ <para>
+ </para>
+ <blockquote>
+ <para>
           <para>
- Before continuing, it is very important that you keep this in mind: if
- you try to build some documents and the process breaks due to misconfiguration,
- be absolutely sure to delete any <code><phrase role="identifier">bin</phrase></code>
- and <code><phrase role="identifier">bin</phrase><phrase role="special">.</phrase><phrase
- role="identifier">v2</phrase></code> directories generated by the build
- before trying again. Otherwise your configuration fixes will not take
- any effect.
- </para>
- <section id="quickbook.install.windows">
- <title><link linkend="quickbook.install.windows"> Windows 2000, XP, 2003,
- Vista</link></title>
- <para>
- </para>
- <blockquote>
- <para>
- <para>
- <emphasis>Section contributed by Julio M. Merino Vidal</emphasis>
- </para>
- </para>
- </blockquote>
- <para>
- The following instructions apply to any Windows system based on Windows
- 2000, including Windows XP, Windows 2003 Server and Windows Vista.
- The paths shown below are taken from a Windows Vista machine; you will
- need to adjust them to match your system in case you are running an
- older version.
- </para>
- <orderedlist>
- <listitem>
- First of all you need to have a copy of <code><phrase role="identifier">xsltproc</phrase></code>
- for Windows. There are many ways to get this tool, but to keep things
- simple, use the <ulink url="http://www.zlatkovic.com/pub/libxml/">binary
- packages</ulink> made by Igor Zlatkovic. At the very least, you need
- to download the following packages: <code><phrase role="identifier">iconv</phrase></code>,
- <code><phrase role="identifier">zlib</phrase></code>, <code><phrase
- role="identifier">libxml2</phrase></code> and <code><phrase role="identifier">libxslt</phrase></code>.
- </listitem>
- <listitem>
- Unpack all these packages in the same directory so that you get unique
- <code><phrase role="identifier">bin</phrase></code>, <code><phrase
- role="identifier">include</phrase></code> and <code><phrase role="identifier">lib</phrase></code>
- directories within the hierarchy. These instructions use <code><phrase
- role="identifier">C</phrase><phrase role="special">:\</phrase><phrase
- role="identifier">Users</phrase><phrase role="special">\</phrase><phrase
- role="identifier">example</phrase><phrase role="special">\</phrase><phrase
- role="identifier">Documents</phrase><phrase role="special">\</phrase><phrase
- role="identifier">boost</phrase><phrase role="special">\</phrase><phrase
- role="identifier">xml</phrase></code> as the root for all files.
- </listitem>
- <listitem>
- From the command line, go to the <code><phrase role="identifier">bin</phrase></code>
- directory and launch <code><phrase role="identifier">xsltproc</phrase><phrase
- role="special">.</phrase><phrase role="identifier">exe</phrase></code>
- to ensure it works. You should get usage information on screen.
- </listitem>
- <listitem>
- Download <ulink url="http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip">Docbook
- XML 4.2</ulink> and unpack it in the same directory used above. That
- is: <code><phrase role="identifier">C</phrase><phrase role="special">:\</phrase><phrase
- role="identifier">Users</phrase><phrase role="special">\</phrase><phrase
- role="identifier">example</phrase><phrase role="special">\</phrase><phrase
- role="identifier">Documents</phrase><phrase role="special">\</phrase><phrase
- role="identifier">boost</phrase><phrase role="special">\</phrase><phrase
- role="identifier">xml</phrase><phrase role="special">\</phrase><phrase
- role="identifier">docbook</phrase><phrase role="special">-</phrase><phrase
- role="identifier">xml</phrase></code>.
- </listitem>
- <listitem>
- Download the latest <ulink url="http://sourceforge.net/project/showfiles.php?group_id=21935&amp;package_id=16608">Docbook
- XSL</ulink> version and unpack it, again in the same directory used
- before. To make things easier, rename the directory created during
- the extraction to <code><phrase role="identifier">docbook</phrase><phrase
- role="special">-</phrase><phrase role="identifier">xsl</phrase></code>
- (bypassing the version name): <code><phrase role="identifier">C</phrase><phrase
- role="special">:\</phrase><phrase role="identifier">Users</phrase><phrase
- role="special">\</phrase><phrase role="identifier">example</phrase><phrase
- role="special">\</phrase><phrase role="identifier">Documents</phrase><phrase
- role="special">\</phrase><phrase role="identifier">boost</phrase><phrase
- role="special">\</phrase><phrase role="identifier">xml</phrase><phrase
- role="special">\</phrase><phrase role="identifier">docbook</phrase><phrase
- role="special">-</phrase><phrase role="identifier">xsl</phrase></code>.
- </listitem>
- <listitem>
- Add the following to your <code><phrase role="identifier">user</phrase><phrase
- role="special">-</phrase><phrase role="identifier">config</phrase><phrase
- role="special">.</phrase><phrase role="identifier">jam</phrase></code>
- file, which should live in your home directory (<code><phrase role="special">%</phrase><phrase
- role="identifier">HOMEDRIVE</phrase><phrase role="special">%%</phrase><phrase
- role="identifier">HOMEPATH</phrase><phrase role="special">%</phrase></code>).
- You must already have it somewhere or otherwise you could not be
- building Boost (i.e. missing tools configuration).
- </listitem>
- </orderedlist>
-
-<programlisting>
-<phrase role="identifier">using</phrase> <phrase role="identifier">xsltproc</phrase>
+ <emphasis>Section contributed by Julio M. Merino Vidal</emphasis>
+ </para>
+ </para>
+ </blockquote>
+ <para>
+ The following instructions apply to any Windows system based on Windows 2000,
+ including Windows XP, Windows 2003 Server and Windows Vista. The paths shown
+ below are taken from a Windows Vista machine; you will need to adjust them
+ to match your system in case you are running an older version.
+ </para>
+ <orderedlist>
+ <listitem>
+ First of all you need to have a copy of <code><phrase role="identifier">xsltproc</phrase></code>
+ for Windows. There are many ways to get this tool, but to keep things simple,
+ use the <ulink url="http://www.zlatkovic.com/pub/libxml/">binary packages</ulink>
+ made by Igor Zlatkovic. At the very least, you need to download the following
+ packages: <code><phrase role="identifier">iconv</phrase></code>, <code><phrase
+ role="identifier">zlib</phrase></code>, <code><phrase role="identifier">libxml2</phrase></code>
+ and <code><phrase role="identifier">libxslt</phrase></code>.
+ </listitem>
+ <listitem>
+ Unpack all these packages in the same directory so that you get unique
+ <code><phrase role="identifier">bin</phrase></code>, <code><phrase role="identifier">include</phrase></code>
+ and <code><phrase role="identifier">lib</phrase></code> directories within
+ the hierarchy. These instructions use <code><phrase role="identifier">C</phrase><phrase
+ role="special">:\</phrase><phrase role="identifier">Users</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">example</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">Documents</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">boost</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">xml</phrase></code>
+ as the root for all files.
+ </listitem>
+ <listitem>
+ From the command line, go to the <code><phrase role="identifier">bin</phrase></code>
+ directory and launch <code><phrase role="identifier">xsltproc</phrase><phrase
+ role="special">.</phrase><phrase role="identifier">exe</phrase></code>
+ to ensure it works. You should get usage information on screen.
+ </listitem>
+ <listitem>
+ Download <ulink url="http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip">Docbook
+ XML 4.2</ulink> and unpack it in the same directory used above. That is:
+ <code><phrase role="identifier">C</phrase><phrase role="special">:\</phrase><phrase
+ role="identifier">Users</phrase><phrase role="special">\</phrase><phrase
+ role="identifier">example</phrase><phrase role="special">\</phrase><phrase
+ role="identifier">Documents</phrase><phrase role="special">\</phrase><phrase
+ role="identifier">boost</phrase><phrase role="special">\</phrase><phrase
+ role="identifier">xml</phrase><phrase role="special">\</phrase><phrase
+ role="identifier">docbook</phrase><phrase role="special">-</phrase><phrase
+ role="identifier">xml</phrase></code>.
+ </listitem>
+ <listitem>
+ Download the latest <ulink url="http://sourceforge.net/project/showfiles.php?group_id=21935&amp;package_id=16608">Docbook
+ XSL</ulink> version and unpack it, again in the same directory used before.
+ To make things easier, rename the directory created during the extraction
+ to <code><phrase role="identifier">docbook</phrase><phrase role="special">-</phrase><phrase
+ role="identifier">xsl</phrase></code> (bypassing the version name): <code><phrase
+ role="identifier">C</phrase><phrase role="special">:\</phrase><phrase role="identifier">Users</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">example</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">Documents</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">boost</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">xml</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">docbook</phrase><phrase
+ role="special">-</phrase><phrase role="identifier">xsl</phrase></code>.
+ </listitem>
+ <listitem>
+ Add the following to your <code><phrase role="identifier">user</phrase><phrase
+ role="special">-</phrase><phrase role="identifier">config</phrase><phrase
+ role="special">.</phrase><phrase role="identifier">jam</phrase></code>
+ file, which should live in your home directory (<code><phrase role="special">%</phrase><phrase
+ role="identifier">HOMEDRIVE</phrase><phrase role="special">%%</phrase><phrase
+ role="identifier">HOMEPATH</phrase><phrase role="special">%</phrase></code>).
+ You must already have it somewhere or otherwise you could not be building
+ Boost (i.e. missing tools configuration).
+ </listitem>
+ </orderedlist>
+
+<programlisting><phrase role="identifier">using</phrase> <phrase role="identifier">xsltproc</phrase>
     <phrase role="special">:</phrase> <phrase role="string">&quot;C:/Users/example/Documents/boost/xml/bin/xsltproc.exe&quot;</phrase>
     <phrase role="special">;</phrase>
 
@@ -2735,90 +2686,84 @@
     <phrase role="special">:</phrase> <phrase role="string">&quot;C:/Users/example/Documents/boost/xml/docbook-xml&quot;</phrase>
     <phrase role="special">;</phrase>
 </programlisting>
- <para>
- The above steps are enough to get a functional BoostBook setup. Quickbook
- will be automatically built when needed. If you want to avoid these
- rebuilds:
- </para>
- <orderedlist>
- <listitem>
- Go to Quickbook's source directory (<code><phrase role="identifier">BOOST_ROOT</phrase><phrase
- role="special">\</phrase><phrase role="identifier">tools</phrase><phrase
- role="special">\</phrase><phrase role="identifier">quickbook</phrase></code>).
- </listitem>
- <listitem>
- Build the utility by issuing <code><phrase role="identifier">bjam</phrase>
- <phrase role="special">--</phrase><phrase role="identifier">v2</phrase></code>.
- </listitem>
- <listitem>
- Copy the resulting <code><phrase role="identifier">quickbook</phrase><phrase
- role="special">.</phrase><phrase role="identifier">exe</phrase></code>
- binary (located under the <code><phrase role="identifier">BOOST_ROOT</phrase><phrase
- role="special">\</phrase><phrase role="identifier">bin</phrase><phrase
- role="special">.</phrase><phrase role="identifier">v2</phrase></code>
- hierarchy) to a safe place. Following our previous example, you can
- install it into: <code><phrase role="identifier">C</phrase><phrase
- role="special">:\</phrase><phrase role="identifier">Users</phrase><phrase
- role="special">\</phrase><phrase role="identifier">example</phrase><phrase
- role="special">\</phrase><phrase role="identifier">Documents</phrase><phrase
- role="special">\</phrase><phrase role="identifier">boost</phrase><phrase
- role="special">\</phrase><phrase role="identifier">xml</phrase><phrase
- role="special">\</phrase><phrase role="identifier">bin</phrase></code>.
- </listitem>
- <listitem>
- Add the following to your <code><phrase role="identifier">user</phrase><phrase
- role="special">-</phrase><phrase role="identifier">config</phrase><phrase
- role="special">.</phrase><phrase role="identifier">jam</phrase></code>
- file:
- </listitem>
- </orderedlist>
-
-<programlisting>
-<phrase role="identifier">using</phrase> <phrase role="identifier">quickbook</phrase>
+ <para>
+ The above steps are enough to get a functional BoostBook setup. Quickbook
+ will be automatically built when needed. If you want to avoid these rebuilds:
+ </para>
+ <orderedlist>
+ <listitem>
+ Go to Quickbook's source directory (<code><phrase role="identifier">BOOST_ROOT</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">tools</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">quickbook</phrase></code>).
+ </listitem>
+ <listitem>
+ Build the utility by issuing <code><phrase role="identifier">bjam</phrase>
+ <phrase role="special">--</phrase><phrase role="identifier">v2</phrase></code>.
+ </listitem>
+ <listitem>
+ Copy the resulting <code><phrase role="identifier">quickbook</phrase><phrase
+ role="special">.</phrase><phrase role="identifier">exe</phrase></code>
+ binary (located under the <code><phrase role="identifier">BOOST_ROOT</phrase><phrase
+ role="special">\</phrase><phrase role="identifier">bin</phrase><phrase
+ role="special">.</phrase><phrase role="identifier">v2</phrase></code> hierarchy)
+ to a safe place. Following our previous example, you can install it into:
+ <code><phrase role="identifier">C</phrase><phrase role="special">:\</phrase><phrase
+ role="identifier">Users</phrase><phrase role="special">\</phrase><phrase
+ role="identifier">example</phrase><phrase role="special">\</phrase><phrase
+ role="identifier">Documents</phrase><phrase role="special">\</phrase><phrase
+ role="identifier">boost</phrase><phrase role="special">\</phrase><phrase
+ role="identifier">xml</phrase><phrase role="special">\</phrase><phrase
+ role="identifier">bin</phrase></code>.
+ </listitem>
+ <listitem>
+ Add the following to your <code><phrase role="identifier">user</phrase><phrase
+ role="special">-</phrase><phrase role="identifier">config</phrase><phrase
+ role="special">.</phrase><phrase role="identifier">jam</phrase></code>
+ file:
+ </listitem>
+ </orderedlist>
+
+<programlisting><phrase role="identifier">using</phrase> <phrase role="identifier">quickbook</phrase>
     <phrase role="special">:</phrase> <phrase role="string">&quot;C:/Users/example/Documents/boost/xml/bin/quickbook.exe&quot;</phrase>
     <phrase role="special">;</phrase>
 </programlisting>
- </section>
- <section id="quickbook.install.linux">
- <title><link linkend="quickbook.install.linux"> Debian, Ubuntu</link></title>
- <para>
- The following instructions apply to Debian and its derivatives. They
- are based on a Ubuntu Edgy install but should work on other Debian
- based systems.
- </para>
- <para>
- First install the <code><phrase role="identifier">bjam</phrase></code>,
- <code><phrase role="identifier">xsltproc</phrase></code>, <code><phrase
- role="identifier">docbook</phrase><phrase role="special">-</phrase><phrase
- role="identifier">xsl</phrase></code> and <code><phrase role="identifier">docbook</phrase><phrase
- role="special">-</phrase><phrase role="identifier">xml</phrase></code>
- packages. For example, using <code><phrase role="identifier">apt</phrase><phrase
- role="special">-</phrase><phrase role="identifier">get</phrase></code>:
- </para>
-
-<programlisting>
-<phrase role="identifier">sudo</phrase> <phrase role="identifier">apt</phrase><phrase role="special">-</phrase><phrase role="identifier">get</phrase> <phrase role="identifier">install</phrase> <phrase role="identifier">xsltprc</phrase> <phrase role="identifier">docbook</phrase><phrase role="special">-</phrase><phrase role="identifier">xsl</phrase> <phrase role="identifier">docbook</phrase><phrase role="special">-</phrase><phrase role="identifier">xml</phrase>
+ </section>
+ <section id="quickbook.install.linux">
+ <title><link linkend="quickbook.install.linux"> Debian, Ubuntu</link></title>
+ <para>
+ The following instructions apply to Debian and its derivatives. They are
+ based on a Ubuntu Edgy install but should work on other Debian based systems.
+ </para>
+ <para>
+ First install the <code><phrase role="identifier">bjam</phrase></code>,
+ <code><phrase role="identifier">xsltproc</phrase></code>, <code><phrase role="identifier">docbook</phrase><phrase
+ role="special">-</phrase><phrase role="identifier">xsl</phrase></code> and
+ <code><phrase role="identifier">docbook</phrase><phrase role="special">-</phrase><phrase
+ role="identifier">xml</phrase></code> packages. For example, using <code><phrase
+ role="identifier">apt</phrase><phrase role="special">-</phrase><phrase role="identifier">get</phrase></code>:
+ </para>
+
+<programlisting><phrase role="identifier">sudo</phrase> <phrase role="identifier">apt</phrase><phrase role="special">-</phrase><phrase role="identifier">get</phrase> <phrase role="identifier">install</phrase> <phrase role="identifier">xsltprc</phrase> <phrase role="identifier">docbook</phrase><phrase role="special">-</phrase><phrase role="identifier">xsl</phrase> <phrase role="identifier">docbook</phrase><phrase role="special">-</phrase><phrase role="identifier">xml</phrase>
 </programlisting>
- <para>
- If you're planning on building boost's documentation, you'll also need
- to install the <code><phrase role="identifier">doxygen</phrase></code>
- package as well.
- </para>
- <para>
- Next, we need to configure Boost Build to compile BoostBook files.
- Add the following to your <code><phrase role="identifier">user</phrase><phrase
- role="special">-</phrase><phrase role="identifier">config</phrase><phrase
- role="special">.</phrase><phrase role="identifier">jam</phrase></code>
- file, which should be in your home directory. If you don't have one,
- create a file containing this text. For more information on setting
- up <code><phrase role="identifier">user</phrase><phrase role="special">-</phrase><phrase
- role="identifier">config</phrase><phrase role="special">.</phrase><phrase
- role="identifier">jam</phrase></code>, see the <ulink url="http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html">Boost
- Build documentation</ulink>.
- </para>
-
-<programlisting>
-<phrase role="identifier">using</phrase> <phrase role="identifier">xsltproc</phrase> <phrase role="special">;</phrase>
+ <para>
+ If you're planning on building boost's documentation, you'll also need to
+ install the <code><phrase role="identifier">doxygen</phrase></code> package
+ as well.
+ </para>
+ <para>
+ Next, we need to configure Boost Build to compile BoostBook files. Add the
+ following to your <code><phrase role="identifier">user</phrase><phrase role="special">-</phrase><phrase
+ role="identifier">config</phrase><phrase role="special">.</phrase><phrase
+ role="identifier">jam</phrase></code> file, which should be in your home
+ directory. If you don't have one, create a file containing this text. For
+ more information on setting up <code><phrase role="identifier">user</phrase><phrase
+ role="special">-</phrase><phrase role="identifier">config</phrase><phrase
+ role="special">.</phrase><phrase role="identifier">jam</phrase></code>, see
+ the <ulink url="http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html">Boost
+ Build documentation</ulink>.
+ </para>
+
+<programlisting><phrase role="identifier">using</phrase> <phrase role="identifier">xsltproc</phrase> <phrase role="special">;</phrase>
 
 <phrase role="identifier">using</phrase> <phrase role="identifier">boostbook</phrase>
     <phrase role="special">:</phrase> <phrase role="special">/</phrase><phrase role="identifier">usr</phrase><phrase role="special">/</phrase><phrase role="identifier">share</phrase><phrase role="special">/</phrase><phrase role="identifier">xml</phrase><phrase role="special">/</phrase><phrase role="identifier">docbook</phrase><phrase role="special">/</phrase><phrase role="identifier">stylesheet</phrase><phrase role="special">/</phrase><phrase role="identifier">nwalsh</phrase>
@@ -2828,91 +2773,89 @@
 <phrase role="comment"># Remove this line if you're not using doxygen
 </phrase><phrase role="identifier">using</phrase> <phrase role="identifier">doxygen</phrase> <phrase role="special">;</phrase>
 </programlisting>
- <para>
- The above steps are enough to get a functional BoostBook setup. Quickbook
- will be automatically built when needed. If you want to avoid these
- rebuilds:
- </para>
- <orderedlist>
- <listitem>
- Go to Quickbook's source directory (<code><phrase role="identifier">BOOST_ROOT</phrase><phrase
- role="special">/</phrase><phrase role="identifier">tools</phrase><phrase
- role="special">/</phrase><phrase role="identifier">quickbook</phrase></code>).
- </listitem>
- <listitem>
- Build the utility by issuing <code><phrase role="identifier">bjam</phrase>
- <phrase role="special">--</phrase><phrase role="identifier">v2</phrase></code>.
- </listitem>
- <listitem>
- Copy the resulting <code><phrase role="identifier">quickbook</phrase></code>
- binary (located under the <code><phrase role="identifier">BOOST_ROOT</phrase><phrase
- role="special">/</phrase><phrase role="identifier">bin</phrase><phrase
- role="special">.</phrase><phrase role="identifier">v2</phrase></code>
- hierarchy) to a safe place. The traditional location is <code><phrase
- role="special">/</phrase><phrase role="identifier">usr</phrase><phrase
- role="special">/</phrase><phrase role="identifier">local</phrase><phrase
- role="special">/</phrase><phrase role="identifier">bin</phrase></code>.
- </listitem>
- <listitem>
- Add the following to your <code><phrase role="identifier">user</phrase><phrase
- role="special">-</phrase><phrase role="identifier">config</phrase><phrase
- role="special">.</phrase><phrase role="identifier">jam</phrase></code>
- file, using the full path of the quickbook executable:
- </listitem>
- </orderedlist>
-
-<programlisting>
-<phrase role="identifier">using</phrase> <phrase role="identifier">quickbook</phrase>
+ <para>
+ The above steps are enough to get a functional BoostBook setup. Quickbook
+ will be automatically built when needed. If you want to avoid these rebuilds:
+ </para>
+ <orderedlist>
+ <listitem>
+ Go to Quickbook's source directory (<code><phrase role="identifier">BOOST_ROOT</phrase><phrase
+ role="special">/</phrase><phrase role="identifier">tools</phrase><phrase
+ role="special">/</phrase><phrase role="identifier">quickbook</phrase></code>).
+ </listitem>
+ <listitem>
+ Build the utility by issuing <code><phrase role="identifier">bjam</phrase>
+ <phrase role="special">--</phrase><phrase role="identifier">v2</phrase></code>.
+ </listitem>
+ <listitem>
+ Copy the resulting <code><phrase role="identifier">quickbook</phrase></code>
+ binary (located under the <code><phrase role="identifier">BOOST_ROOT</phrase><phrase
+ role="special">/</phrase><phrase role="identifier">bin</phrase><phrase
+ role="special">.</phrase><phrase role="identifier">v2</phrase></code> hierarchy)
+ to a safe place. The traditional location is <code><phrase role="special">/</phrase><phrase
+ role="identifier">usr</phrase><phrase role="special">/</phrase><phrase
+ role="identifier">local</phrase><phrase role="special">/</phrase><phrase
+ role="identifier">bin</phrase></code>.
+ </listitem>
+ <listitem>
+ Add the following to your <code><phrase role="identifier">user</phrase><phrase
+ role="special">-</phrase><phrase role="identifier">config</phrase><phrase
+ role="special">.</phrase><phrase role="identifier">jam</phrase></code>
+ file, using the full path of the quickbook executable:
+ </listitem>
+ </orderedlist>
+
+<programlisting><phrase role="identifier">using</phrase> <phrase role="identifier">quickbook</phrase>
     <phrase role="special">:</phrase> <phrase role="special">/</phrase><phrase role="identifier">usr</phrase><phrase role="special">/</phrase><phrase role="identifier">local</phrase><phrase role="special">/</phrase><phrase role="identifier">bin</phrase><phrase role="special">/</phrase><phrase role="identifier">quickbook</phrase>
     <phrase role="special">;</phrase>
 </programlisting>
- </section>
- </section>
- <section id="quickbook.editors">
- <title><link linkend="quickbook.editors"> Editor Support</link></title>
+ </section>
+ </section>
+ <section id="quickbook.editors">
+ <title><link linkend="quickbook.editors"> Editor Support</link></title>
+ <para>
+ Editing quickbook files is usually done with text editors both simple and powerful.
+ The following sections list the settings for some editors which can help make
+ editing quickbook files a bit easier.
+ </para>
+ <sidebar role="blurb">
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/note.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>note</phrase>
+ </textobject>
+ </inlinemediaobject> You may submit your settings, tips, and suggestions to
+ the authors, or through the <ulink url="https://lists.sourceforge.net/lists/listinfo/boost-">docs
+ Boost Docs mailing list</ulink>.
+ </para>
+ </sidebar>
+ <section id="quickbook.editors.scite">
+ <title><link linkend="quickbook.editors.scite"> Scintilla Text Editor</link></title>
+ <blockquote>
+ <para>
           <para>
- Editing quickbook files is usually done with text editors both simple
- and powerful. The following sections list the settings for some editors
- which can help make editing quickbook files a bit easier.
- </para>
- <sidebar role="blurb">
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/note.png"></imagedata></imageobject>
- <textobject>
- <phrase>note</phrase>
- </textobject>
- </inlinemediaobject> You may submit your settings, tips, and suggestions
- to the authors, or through the <ulink url="https://lists.sourceforge.net/lists/listinfo/boost-">docs
- Boost Docs mailing list</ulink>.
- </para>
- </sidebar>
- <section id="quickbook.editors.scite">
- <title><link linkend="quickbook.editors.scite"> Scintilla Text Editor</link></title>
- <blockquote>
- <para>
- <para>
- <emphasis>Section contributed by Dean Michael Berris</emphasis>
- </para>
- </para>
- </blockquote>
- <para>
- The Scintilla Text Editor (SciTE) is a free source code editor for
- Win32 and X. It uses the SCIntilla source code editing component.
- </para>
- <sidebar role="blurb">
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/tip.png"></imagedata></imageobject>
- <textobject>
- <phrase>tip</phrase>
- </textobject>
- </inlinemediaobject> SciTE can be downloaded from <ulink url="http://www.scintilla.org/SciTE.html">http://www.scintilla.org/SciTE.html>
- </para>
- </sidebar>
- <para>
- You can use the following settings to highlight quickbook tags when
- editing quickbook files.
- </para>
-
+ <emphasis>Section contributed by Dean Michael Berris</emphasis>
+ </para>
+ </para>
+ </blockquote>
+ <para>
+ The Scintilla Text Editor (SciTE) is a free source code editor for Win32
+ and X. It uses the SCIntilla source code editing component.
+ </para>
+ <sidebar role="blurb">
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/tip.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>tip</phrase>
+ </textobject>
+ </inlinemediaobject> SciTE can be downloaded from <ulink url="
http://www.scintilla.org/SciTE.html">http://www.scintilla.org/SciTE.html>
+ </para>
+ </sidebar>
+ <para>
+ You can use the following settings to highlight quickbook tags when editing
+ quickbook files.
+ </para>
+
 <programlisting><!--quickbook-escape-prefix-->qbk=*.qbk
 lexer.*.qbk=props
 use.tabs.$(qbk)=0
@@ -2925,47 +2868,45 @@
 comment.box.middle.props=
 comment.box.end.props=]
 <!--quickbook-escape-postfix--></programlisting>
- <sidebar role="blurb">
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/note.png"></imagedata></imageobject>
- <textobject>
- <phrase>note</phrase>
- </textobject>
- </inlinemediaobject> Thanks to Rene Rivera for the above SciTE settings.
- </para>
- </sidebar>
- </section>
- </section>
- <section id="quickbook.faq">
- <title><link linkend="quickbook.faq"> Frequently Asked Questions</link></title>
- <anchor id="quickbook.faq.can_i_use_quickbook_for_non_boost_documentation_"/>
- <bridgehead renderas="sect3">
- <link linkend="quickbook.faq.can_i_use_quickbook_for_non_boost_documentation_">Can
- I use QuickBook for non-Boost documentation?</link>
- </bridgehead>
- <para>
- QuickBook can be used for non-Boost documentation with a little extra
- work.
- </para>
- <blockquote>
- <para>
- <para>
- <emphasis>Faq contributed by Michael Marcin</emphasis>
- </para>
- </para>
- </blockquote>
- <para>
- When building HTML documentation with BoostBook a Boost C++ Libraries
- header is added to the files. When using QuickBook to document projects
- outside of Boost this is not desirable. This behavior can be overridden
- at the BoostBook level by specifying some XSLT options. When using Boost
- Build version 2 (BBv2) this can be achieved by adding parameters to the
- BoostBook target declaration.
- </para>
- <para>
- For example:
- </para>
-
+ <sidebar role="blurb">
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/note.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>note</phrase>
+ </textobject>
+ </inlinemediaobject> Thanks to Rene Rivera for the above SciTE settings.
+ </para>
+ </sidebar>
+ </section>
+ </section>
+ <section id="quickbook.faq">
+ <title><link linkend="quickbook.faq"> Frequently Asked Questions</link></title>
+ <anchor id="quickbook.faq.can_i_use_quickbook_for_non_boost_documentation_"/>
+ <bridgehead renderas="sect3">
+ <link linkend="quickbook.faq.can_i_use_quickbook_for_non_boost_documentation_">Can
+ I use QuickBook for non-Boost documentation?</link>
+ </bridgehead>
+ <para>
+ QuickBook can be used for non-Boost documentation with a little extra work.
+ </para>
+ <blockquote>
+ <para>
+ <para>
+ <emphasis>Faq contributed by Michael Marcin</emphasis>
+ </para>
+ </para>
+ </blockquote>
+ <para>
+ When building HTML documentation with BoostBook a Boost C++ Libraries header
+ is added to the files. When using QuickBook to document projects outside of
+ Boost this is not desirable. This behavior can be overridden at the BoostBook
+ level by specifying some XSLT options. When using Boost Build version 2 (BBv2)
+ this can be achieved by adding parameters to the BoostBook target declaration.
+ </para>
+ <para>
+ For example:
+ </para>
+
 <programlisting>using quickbook ;
 
 xml my_doc : my_doc.qbk ;
@@ -2981,785 +2922,780 @@
         &lt;xsl:param&gt;nav.layout=none
     ;
 </programlisting>
- </section>
- <section id="quickbook.ref">
- <title><link linkend="quickbook.ref"> Quick Reference</link></title>
+ </section>
+ <section id="quickbook.ref">
+ <title><link linkend="quickbook.ref"> Quick Reference</link></title>
+ <para>
+ [cpp]
+ </para>
+ <table frame="all"> <title>Syntax Compendium</title>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ To do this...
+ </para>
+ </entry><entry>
+ <para>
+ Use this...
+ </para>
+ </entry><entry>
+ <para>
+ See this...
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ comment
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[/ some comment]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.comments">Comments</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <emphasis>italics</emphasis>
+ </para>
+ </entry><entry>
+ <para>
+ <literal>['italics] or /italics/</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.font_styles">Font Styles</link>
+ and <link linkend="quickbook.syntax.phrase.simple_formatting">Simple
+ formatting</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <emphasis role="bold">bold</emphasis>
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[*bold] or *bold*</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.font_styles">Font Styles</link>
+ and <link linkend="quickbook.syntax.phrase.simple_formatting">Simple
+ formatting</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <emphasis role="underline">underline</emphasis>
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[_underline] or _underline_</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.font_styles">Font Styles</link>
+ and <link linkend="quickbook.syntax.phrase.simple_formatting">Simple
+ formatting</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <literal>teletype</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[^teletype] or =teletype=</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.font_styles">Font Styles</link>
+ and <link linkend="quickbook.syntax.phrase.simple_formatting">Simple
+ formatting</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <emphasis role="strikethrough">strikethrough</emphasis>
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[-strikethrough]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.font_styles">Font Styles</link>
+ and <link linkend="quickbook.syntax.phrase.simple_formatting">Simple
+ formatting</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <replaceable>
+ replaceable
+ </replaceable>
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[~replaceable]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.replaceable">Replaceble</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ source mode
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[c++]</literal> or <literal>[python]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.source_mode">Source Mode</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ inline code
+ </para>
+ </entry><entry>
+ <para>
+ <literal>`int main();`</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.inline_code">Inline code</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ code block
+ </para>
+ </entry><entry>
+ <para>
+ <literal>``int main();``</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.code">Code</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ code escape
+ </para>
+ </entry><entry>
+ <para>
+ <literal>``from c++ to QuickBook``</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.escape_back">Escaping Back To QuickBook</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ line break
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[br] or \n</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.line_break">line-break</link>
+ <emphasis role="bold">DEPRECATED</emphasis>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ anchor
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[#anchor]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.anchors">Anchors</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ link
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[@
http://www.boost.org Boost]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.links">Links</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ anchor link
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[link section.anchor Link text]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.anchor_links">Anchor links</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ refentry link
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[link xml.refentry Link text]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.refentry_links">refentry links</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ function link
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[funcref fully::qualified::function_name Link text]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.code_links">function, class, member,
+ enum, macro, concept or header links</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ class link
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[classref fully::qualified::class_name Link text]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.code_links">function, class, member,
+ enum, macro, concept or header links</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ member link
+ </para>
+ </entry><entry>
           <para>
- [cpp]
+ <literal>[memberref fully::qualified::member_name Link text]</literal>
           </para>
- <table frame="all"> <title>Syntax Compendium</title>
- <tgroup cols="3">
- <thead>
- <row>
- <entry>
- <para>
- To do this...
- </para>
- </entry><entry>
- <para>
- Use this...
- </para>
- </entry><entry>
- <para>
- See this...
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- comment
- </para>
- </entry><entry>
- <para>
- <literal>[/ some comment]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.comments">Comments</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <emphasis>italics</emphasis>
- </para>
- </entry><entry>
- <para>
- <literal>['italics] or /italics/</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.font_styles">Font Styles</link>
- and <link linkend="quickbook.syntax.phrase.simple_formatting">Simple
- formatting</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <emphasis role="bold">bold</emphasis>
- </para>
- </entry><entry>
- <para>
- <literal>[*bold] or *bold*</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.font_styles">Font Styles</link>
- and <link linkend="quickbook.syntax.phrase.simple_formatting">Simple
- formatting</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <emphasis role="underline">underline</emphasis>
- </para>
- </entry><entry>
- <para>
- <literal>[_underline] or _underline_</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.font_styles">Font Styles</link>
- and <link linkend="quickbook.syntax.phrase.simple_formatting">Simple
- formatting</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <literal>teletype</literal>
- </para>
- </entry><entry>
- <para>
- <literal>[^teletype] or =teletype=</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.font_styles">Font Styles</link>
- and <link linkend="quickbook.syntax.phrase.simple_formatting">Simple
- formatting</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <emphasis role="strikethrough">strikethrough</emphasis>
- </para>
- </entry><entry>
- <para>
- <literal>[-strikethrough]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.font_styles">Font Styles</link>
- and <link linkend="quickbook.syntax.phrase.simple_formatting">Simple
- formatting</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <replaceable>
- replaceable
- </replaceable>
- </para>
- </entry><entry>
- <para>
- <literal>[~replaceable]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.replaceable">Replaceble</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- source mode
- </para>
- </entry><entry>
- <para>
- <literal>[c++]</literal> or <literal>[python]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.source_mode">Source Mode</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- inline code
- </para>
- </entry><entry>
- <para>
- <literal>`int main();`</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.inline_code">Inline code</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- code block
- </para>
- </entry><entry>
- <para>
- <literal>``int main();``</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.code">Code</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- code escape
- </para>
- </entry><entry>
- <para>
- <literal>``from c++ to QuickBook``</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.escape_back">Escaping Back
- To QuickBook</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- line break
- </para>
- </entry><entry>
- <para>
- <literal>[br] or \n</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.line_break">line-break</link>
- <emphasis role="bold">DEPRECATED</emphasis>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- anchor
- </para>
- </entry><entry>
- <para>
- <literal>[#anchor]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.anchors">Anchors</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- link
- </para>
- </entry><entry>
- <para>
- <literal>[@http://www.boost.org Boost]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.links">Links</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- anchor link
- </para>
- </entry><entry>
- <para>
- <literal>[link section.anchor Link text]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.anchor_links">Anchor links</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- refentry link
- </para>
- </entry><entry>
- <para>
- <literal>[link xml.refentry Link text]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.refentry_links">refentry
- links</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- function link
- </para>
- </entry><entry>
- <para>
- <literal>[funcref fully::qualified::function_name Link text]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.code_links">function, class,
- member, enum, macro, concept or header links</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- class link
- </para>
- </entry><entry>
- <para>
- <literal>[classref fully::qualified::class_name Link text]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.code_links">function, class,
- member, enum, macro, concept or header links</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- member link
- </para>
- </entry><entry>
- <para>
- <literal>[memberref fully::qualified::member_name Link text]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.code_links">function, class,
- member, enum, macro, concept or header links</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- enum link
- </para>
- </entry><entry>
- <para>
- <literal>[enumref fully::qualified::enum_name Link text]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.code_links">function, class,
- member, enum, macro, concept or header links</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- macro link
- </para>
- </entry><entry>
- <para>
- <literal>[macroref MACRO_NAME Link text]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.code_links">function, class,
- member, enum, macro, concept or header links</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- concept link
- </para>
- </entry><entry>
- <para>
- <literal>[conceptref ConceptName Link text]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.code_links">function, class,
- member, enum, macro, concept or header links</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- header link
- </para>
- </entry><entry>
- <para>
- <literal>[headerref path/to/header.hpp Link text]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.code_links">function, class,
- member, enum, macro, concept or header links</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- escape
- </para>
- </entry><entry>
- <para>
- <literal>'''escaped text (no processing/formatting)'''</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.escape">Escape</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- single char escape
- </para>
- </entry><entry>
- <para>
- <literal>\c</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.single_char_escape">Single
- char escape</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- images
- </para>
- </entry><entry>
- <para>
- <literal>[$image.jpg]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.phrase.images">Images</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- begin section
- </para>
- </entry><entry>
- <para>
- <literal>[section The Section Title]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.section">Section</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- end section
- </para>
- </entry><entry>
- <para>
- <literal>[endsect]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.section">Section</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- paragraph
- </para>
- </entry><entry>
- <para>
- No markup. Paragraphs start left-flushed and are terminated by
- two or more newlines.
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.paragraphs">Paragraphs</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- ordered list
- </para>
- </entry><entry>
- <para>
-
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.code_links">function, class, member,
+ enum, macro, concept or header links</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ enum link
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[enumref fully::qualified::enum_name Link text]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.code_links">function, class, member,
+ enum, macro, concept or header links</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ macro link
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[macroref MACRO_NAME Link text]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.code_links">function, class, member,
+ enum, macro, concept or header links</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ concept link
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[conceptref ConceptName Link text]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.code_links">function, class, member,
+ enum, macro, concept or header links</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ header link
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[headerref path/to/header.hpp Link text]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.code_links">function, class, member,
+ enum, macro, concept or header links</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ escape
+ </para>
+ </entry><entry>
+ <para>
+ <literal>'''escaped text (no processing/formatting)'''</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.escape">Escape</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ single char escape
+ </para>
+ </entry><entry>
+ <para>
+ <literal>\c</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.single_char_escape">Single char
+ escape</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ images
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[$image.jpg]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.phrase.images">Images</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ begin section
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[section The Section Title]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.section">Section</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ end section
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[endsect]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.section">Section</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ paragraph
+ </para>
+ </entry><entry>
+ <para>
+ No markup. Paragraphs start left-flushed and are terminated by two or
+ more newlines.
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.paragraphs">Paragraphs</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ ordered list
+ </para>
+ </entry><entry>
+ <para>
+
 <programlisting><!--quickbook-escape-prefix--># one
 # two
 # three
 <!--quickbook-escape-postfix--></programlisting>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.lists.ordered_lists">Ordered
- lists</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- unordered list
- </para>
- </entry><entry>
- <para>
-
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.lists.ordered_lists">Ordered lists</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ unordered list
+ </para>
+ </entry><entry>
+ <para>
+
 <programlisting><!--quickbook-escape-prefix-->* one
 * two
 * three
 <!--quickbook-escape-postfix--></programlisting>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.lists.unordered_lists">Unordered
- lists</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- code
- </para>
- </entry><entry>
- <para>
- No markup. Preformatted code starts with a space or a tab.
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.code">Code</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- preformatted
- </para>
- </entry><entry>
- <para>
- <literal>[pre preformatted]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.preformatted">Preformatted</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- block quote
- </para>
- </entry><entry>
- <para>
- <literal>[:sometext...]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.blockquote">Blockquote</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- heading 1
- </para>
- </entry><entry>
- <para>
- <literal>[h1 Heading 1]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.headings">Heading</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- heading 2
- </para>
- </entry><entry>
- <para>
- <literal>[h2 Heading 2]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.headings">Heading</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- heading 3
- </para>
- </entry><entry>
- <para>
- <literal>[h3 Heading 3]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.headings">Heading</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- heading 4
- </para>
- </entry><entry>
- <para>
- <literal>[h4 Heading 4]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.headings">Heading</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- heading 5
- </para>
- </entry><entry>
- <para>
- <literal>[h5 Heading 5]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.headings">Heading</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- heading 6
- </para>
- </entry><entry>
- <para>
- <literal>[h6 Heading 6]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.headings">Heading</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- macro
- </para>
- </entry><entry>
- <para>
- <literal>[def macro_identifier some text]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.macros">Macros</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- template
- </para>
- </entry><entry>
- <para>
- <literal>[template[a b] [a] body [b]]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.templates">Templates</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- blurb
- </para>
- </entry><entry>
- <para>
- <literal>[blurb advertisement or note...]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.blurbs">Blurbs</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- admonition
- </para>
- </entry><entry>
- <para>
- <literal>[warning Warning text...]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.admonitions">Admonitions</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- table
- </para>
- </entry><entry>
- <para>
-
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.lists.unordered_lists">Unordered
+ lists</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ code
+ </para>
+ </entry><entry>
+ <para>
+ No markup. Preformatted code starts with a space or a tab.
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.code">Code</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ preformatted
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[pre preformatted]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.preformatted">Preformatted</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ block quote
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[:sometext...]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.blockquote">Blockquote</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ heading 1
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[h1 Heading 1]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.headings">Heading</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ heading 2
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[h2 Heading 2]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.headings">Heading</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ heading 3
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[h3 Heading 3]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.headings">Heading</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ heading 4
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[h4 Heading 4]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.headings">Heading</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ heading 5
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[h5 Heading 5]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.headings">Heading</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ heading 6
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[h6 Heading 6]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.headings">Heading</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ macro
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[def macro_identifier some text]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.macros">Macros</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ template
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[template[a b] [a] body [b]]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.templates">Templates</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ blurb
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[blurb advertisement or note...]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.blurbs">Blurbs</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ admonition
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[warning Warning text...]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.admonitions">Admonitions</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ table
+ </para>
+ </entry><entry>
+ <para>
+
 <programlisting><!--quickbook-escape-prefix-->[table Title
 [[a][b][c]]
 [[a][b][c]]
 ]
 <!--quickbook-escape-postfix--></programlisting>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.tables">Tables</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- variablelist
- </para>
- </entry><entry>
- <para>
-
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.tables">Tables</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ variablelist
+ </para>
+ </entry><entry>
+ <para>
+
 <programlisting><!--quickbook-escape-prefix-->[variablelist Title
 [[a][b]]
 [[a][b]]
 ]
 <!--quickbook-escape-postfix--></programlisting>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.variable_lists">Variable
- Lists</link>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- include
- </para>
- </entry><entry>
- <para>
- <literal>[include someother.qbk]</literal>
- </para>
- </entry><entry>
- <para>
- <link linkend="quickbook.syntax.block.include">Include</link>
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </section>
- </article>
-
\ No newline at end of file
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.variable_lists">Variable Lists</link>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ include
+ </para>
+ </entry><entry>
+ <para>
+ <literal>[include someother.qbk]</literal>
+ </para>
+ </entry><entry>
+ <para>
+ <link linkend="quickbook.syntax.block.include">Include</link>
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+</article>

Modified: branches/CMake/release/tools/quickbook/test/templates.gold
==============================================================================
--- branches/CMake/release/tools/quickbook/test/templates.gold (original)
+++ branches/CMake/release/tools/quickbook/test/templates.gold 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -47,8 +47,7 @@
     </para>
     <para>
       
-<programlisting>
-<phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
+<programlisting><phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
     <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">cout</phrase> <phrase role="special">&lt;&lt;</phrase> &quot;Hello, World&quot; <phrase role="special">&lt;&lt;</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">endl</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>

Modified: branches/CMake/release/tools/quickbook/test/templates.quickbook
==============================================================================
--- branches/CMake/release/tools/quickbook/test/templates.quickbook (original)
+++ branches/CMake/release/tools/quickbook/test/templates.quickbook 2008-07-17 16:23:46 EDT (Thu, 17 Jul 2008)
@@ -93,4 +93,11 @@
 
 [plantation [banana]]
 
+[/-------------------------------- Bugs! ]
+
+[template join1[a b] [b][a]]
+[template join2[a b] [a][b]]
+[template test[x] [join1 [join2 0 [x]] 0]]
+[test 0]
+
 [endsect]


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk